XRefDatabase Пример

Sub Example_XRefDatabase()
    'Этот пример добавляет внешнюю ссылку к текущему рисунку.
    'Затем циклически проходит каждый объект Block в рисунке и определяет 
    'стиль каждого Block, обращаясь к IsLayout и свойствам IsXRef Block. 
    'Если Block - Block XRef, Вы получаете справочник к внешнему объекту 
    'Database для того Block и показываете число Блоков, которые Database содержит.
    
    Dim InsertPoint(0 To 2) As Double
    Dim insertedBlock As AcadExternalReference
    Dim tempBlock As AcadBlock
    Dim msg As String, PathName As String
    
    'Определите внешнюю ссылку, которая будет вставлена
    InsertPoint(0) = 1: InsertPoint(1) = 1: InsertPoint(2) = 0
    PathName = "c:\program files\autocad\sample\city map.dwg"
    
    'Добавьте внешний блок к пространству модели
    Set insertedBlock = ThisDrawing.ModelSpace.AttachExternalReference(PathName, "XREF_IMAGE", InsertPoint, 1, 1, 1, 0, False)
        
    ThisDrawing.Application.ZoomAll
    
    msg = vbCrLf & vbCrLf
    
    For Each tempBlock In ThisDrawing.Blocks
        If tempBlock.IsXRef Then
            'Block - внешняя ссылка, так что добавьте её
            msg = msg & tempBlock.name & " содержит " & _
            tempBlock.XRefDatabase.Blocks.count & " блоки"
            
            msg = msg & vbCrLf      ' Вставьте линию
        End If
    Next
        
    'Информация Block отображения для XRefDatabase
    MsgBox "Блоки, на которые внешне ссылаются, приложенные к этому рисунку: " & msg

End Sub
Сайт управляется системой uCoz