Extraction des attributs d'un dessin


Cette fonction permet d'afficher la valeur des différents attibuts de toutes les insertions de blocs dans un dessin.

Public Sub ExtractAtt()
  Dim i, j As Integer
  Dim Entity As AcadEntity
  Dim BlocRef As AcadBlockReference
  Dim Attributes As Variant
  Dim S As String
  
  ' On parcourt tous les objets de l'espace objet
  For i = 0 To ThisDrawing.ModelSpace.Count - 1
    Set Entity = ThisDrawing.ModelSpace.Item(i)
    
    ' Si l'objet est une insertion de bloc
    If Entity.ObjectName = "AcDbBlockReference" Then
      ' On précise le type de l'objet pour pouvoir accéder à ses propriétés et
      ' ses méthodes spécifiques
      Set BlocRef = Entity
      
      ' Si il a des attributs
      If BlocRef.HasAttributes Then
        ' On les récupére
        Attributes = BlocRef.GetAttributes
        
        S = "Bloc : " & BlocRef.Name
        
        ' On parcourt le tableau
        For j = LBound(Attributes) To UBound(Attributes)
          S = S & Chr(13) & _
          "Attribut : " & Attributes(j).TagString & " = " & Attributes(j).TextString
        Next
        
        ' On affiche
        MsgBox S
        
      End If
      
    End If
  Next

End Sub

Cliquez ici pour télécharger le code source de cet exemple.


Dernière modification le 23/12/2000.