Recommended Posts

Posted

Cześć,

próbuję odczytać parametry bloku Flexiblock stworzonego w zwcad 2024, za pomocą polecenia visual lisp.

W przypadku bloków dynamicznych stworzonych w autocadzie funkcja działa i zwraca wartości, a w przypadku bloków flexiblock niestety nie.

 

Fragment zastosowanej funkcji:

Cytat

(vl-some '(lambda ( x ) (if (= prp (strcase (vla-get-propertyname x))) (vlax-get x 'value)))
        (vlax-invoke blk 'GetDynamicBlockProperties)

Przypuszczam, że problem jest w "rodzaju" elementu- "GetDynamicBlockProperties", pomimo że stosując funkcję:

(vlax-dump-object vla-object [T]) do wyświetlenia w pasku poleceń wszystkie właściwości i metody obiektu,

na bloku flexiblock dostajemy możliwą metodę "GetDynamicBlockProperties":

Cytat

 Methods supported:
;   ArrayPolar (3)
;   ArrayRectangular (6)
;   ConvertToAnonymousBlock ()
;   ConvertToStaticBlock (1)
;   Copy ()
;   Delete ()
;   Erase ()
;   Explode ()
;   GetAttributes ()
;   GetBoundingBox (2)
;   GetConstantAttributes ()
;   GetDynamicBlockProperties ()
;   GetExtensionDictionary ()
;   GetXData (3)
;   Highlight (1)
;   IntersectWith (2)
;   Mirror (2)
;   Mirror3D (3)
;   Move (2)
;   ResetBlock ()
;   Rotate (2)
;   Rotate3D (3)
;   ScaleEntity (2)
;   SetXData (2)
;   TransformBy (1)
;   Update ()

 

Czy jest jakaś metoda, zastępcze "odwołanie" dla bloków flexiblock? Czy jest jakaś inna metoda odczytu parametrów tych bloków?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now