Autodesk Autocad Plant 3D как получить права выбора объекта с помощью кода VBA - PullRequest
0 голосов
/ 30 мая 2020

Мне нужно получить свойства по умолчанию, такие как PnPID, положение X, положение Y и настраиваемые свойства выбранных объектов в Autodesk Plant 2020 Drawing. Я пытался использовать GetXData в коде VBA, но не работал. Я вызываю команду GetXData для каждого объекта без AppName, но свойство get равно NULL. Вы можете мне помочь?

Sub Main()

Dim OBJset As AcadSelectionSet
Dim eOBJ As AcadEntity

Dim irow, i As Integer

    Dim atts As Variant
    Dim att As AcadAttributeReference
    Dim attVal As String

    Set OBJset = ThisDrawing.SelectionSets.Add("NameSel")

    Dim filterType, TypArray As Variant
    Dim filterData, ValueArray As Variant

    Dim grpCode(0 To 1) As Integer
    grpCode(0) = 8

    Dim grpValue(0 To 1) As Variant
    grpValue(0) = "NameLayer"

    OBJset.Select acSelectionSetAll, filterType, grpValue

    Dim k, irow As Integer
    txtOUT=""

   For Each eOBJ In OBJset
       Dim getTypB As Variant
       Dim getValueB As Variant

       eOBJ.GetXData "", getTypB, getValueB

       If UBound(getValueB) > 0 Then
         For k = 0 To UBound(getValueB)
            txtOUT = txtOUT & getTypB(k) & "= -->" & getValueB(k)
        Next
     End If
    MsgBox (txtOUT)
    irow = irow + 1
   Next

End Sub
...