Pomocí příkazu MAPSYMBOLIMPORTEXPORT nebo skriptu v jazyce Microsoft VBA můžete importovat více symbolů během jediné operace importu.
Při stylizování prvků bodů, linií nebo polygonů můžete importovat symbol pomocí možnosti Načíst. Můžete také použít příkaz MAPSYMBOLIMPORTEXPORT podle popisu níže.
Import symbolů pomocí uživatelského rozhraní
Bloky lze importovat do souborů DWG jako symboly. Do úložiště symbolů můžete importovat také knihovnu symbolů ve formátu LAYER, vektorový symbol ve formátu XML, definici šrafování ve formátu PAT, styl čáry ve formátu LIN nebo rastrové obrázky ve formátech GIF, JPG, BMP a PNG.
Import symbolů bez použití uživatelského rozhraní
CMDDIA 0 FILEDIA 0 _MAPSYMBOLIMPORTEXPORT _IMPORT "C:\data\MySymbols.dwg" _YES
Chcete-li ušetřit čas, můžete importovat symboly pro více výkresů během jediné operace a to pomocí skriptu Microsoft Visual Basic for Applications (VBA). Dále následuje vzorový příklad skriptu. Můžete jej použít jako šablonu, provést požadované změny a potom jej uložit jako soubor BAS.
Attribute VB_Name = "ImportSymbolIntoDWG"
Sub ImportSymbolIntoAllDWG()
Dim fileSystemObject, fileSystemFolder, file, fileCollection
Dim collectionOfFiles As New Collection
Dim path As String
' Define where the DWG files are located
path = "C:\Autodesk\DWGFiles"
Dim prototypeDWG As String
' Define where the symbol(s) should be imported from
prototypeDWG = "C:\Autodesk\Prototype\Prototype_GA_modified.dwg"
Dim currentSDI As Integer
currentSDI = ThisDrawing.GetVariable("SDI")
If (currentSDI = 1) Then
MsgBox "The functions works only with multiple drawings [SDI=0]"
Exit Sub
End If
'' use this to request the path
'path = ThisDrawing.Utility.GetString(1, vbCrLf & "Enter the path of the DWG files to update: ")
'prototypeDWG = ThisDrawing.Utility.GetString(1, vbCrLf & "Enter the path of the prototype DWG: ")
ThisDrawing.SetVariable "FILEDIA", 0
ThisDrawing.SetVariable "CMDDIA", 0
Set fileSystemObject = CreateObject("Scripting.FileSystemObject")
Set fileSystemFolder = fileSystemObject.GetFolder(path)
Set fileCollection = fileSystemFolder.Files
For Each file In fileCollection
If UCase(Right(file.Name, 4)) = UCase(".dwg") Then
collectionOfFiles.Add file.path
End If
Next
For Each drawing In collectionOfFiles
Application.Documents.Open (drawing)
ThisDrawing.SendCommand "_MAPSYMBOLIMPORTEXPORT" & vbCr & "_IMPORT" & vbCr & prototypeDWG & vbCr & "_YES" & vbCr
ThisDrawing.Save
ThisDrawing.Close
Next drawing
End Sub
Ve vzorovém skriptu existuje modul ImportSymbolIntoDWG s dílčím modulem ImportSymbolIntoAllDWG(). Chcete-li určit cestu k umístění, kde jsou uloženy výkresy, je nutné upravit proměnnou cesty. Chcete-li vybrat soubor DWG, který obsahuje symboly určené k importu, je nutné upravit proměnnou prototypového souboru DWG.
Import symbolů pro více výkresů pomocí skriptu v jazyce VBA
Pokud jste již nenainstalovali nástroj Autodesk AutoCAD VBA Enabler, zobrazí se výzva k jeho stažení.
Pokud se zobrazí upozornění na povolení maker, klikněte na tlačítko Povolit makra.