Výpis vlastností vybraných oblouků

Produkt: AutoCAD 2002/2004
Datum: 23.07.2003

Stáhnout VBA projekt (4 KByte)

Ukázková funkce ArcDump ilustruje použití filtrovaných výběrových množin AutoCADu ve VBA a práci s vlastnostmi entit zahrnutých do výběrové množiny. Uvedený příklad lze snadno přizpůsobit i pro podobné potřeby a situace, kdy je třeba vybrat a zpracovat určité typy entit (objektů) výkresu.

Pro přenesení VBA kódu funkce si pomocí Alt-F11 spusťte editor VBA a zkopírujte si tento jednoduchý kód (nebo si otevřete přiložený projekt .DVB):


Sub ArcDump()

  Dim oSS As AcadSelectionSet
  Dim oArc As AcadArc
  Dim iFilterCode(0) As Integer
  Dim vFilterValue(0) As Variant
     
  'Errorhandler (vymaže případně již existující výběrovou množinu)
  On Error Resume Next
  Application.ActiveDocument.SelectionSets("Oblouky").Delete
  On Error GoTo 0
  
  'vytvoř výběrovou množinu nazvanou "Oblouky"
  Set oSS = Application.ActiveDocument.SelectionSets.Add("Oblouky")
  iFilterCode(0) = 0: vFilterValue(0) = "Arc"
  'odfiltrovat vše kromě entit typu "Arc"
  oSS.SelectOnScreen iFilterCode, vFilterValue
  If oSS.Count Then
    For Each oArc In oSS 'zpracovat všechny entity výběrové množiny "Oblouky"
      With oArc
        MsgBox "StartPoint: " & .StartPoint(0) & ", " & .StartPoint(1) & ", " & .StartPoint(2) & vbCrLf & _
               "EndPoint  : " & .EndPoint(0) & ", " & .EndPoint(1) & ", " & .EndPoint(2)
      End With
    Next oArc
  End If

End Sub

Místo dialogového okna výpisu vlastností entity (MsgBox) lze samozřejmě použít libovolnou užitečnější funkci pro zpracování entit výběrové množiny - výpisy do souboru, modifikace vlastností, výpočty, atd.


Copyright © 2003 CAD Studio