CADsite forum

AutoCAD => Autolisp => Topic gestart door: Vanilla Queen op zo 15 10 2017, 14:47:29

Titel: hoe info halen uit dynamische blok
Bericht door: Vanilla Queen op zo 15 10 2017, 14:47:29
Ik heb een autocadtekening die dynamische blokken bevat. Ik zou graag met behulp van een lispprogramma bepaalde informatie halen uit die bloks. Hoe kan ik dat doen? In welke groepscode moet ik zoeken?
Titel: Re: hoe info halen uit dynamische blok
Bericht door: julien op zo 15 10 2017, 16:50:29
Heb je hier al eens naar gekeken?
http://www.lee-mac.com/dynamicblockcounter.html
Titel: Re: hoe info halen uit dynamische blok
Bericht door: Vanilla Queen op zo 15 10 2017, 17:54:34
bedankt voor de tip!
Titel: Re: hoe info halen uit dynamische blok
Bericht door: delangstevandestraat op di 20 03 2018, 11:39:24
ik had net hetzelfde voor,
ik heb een block die dynamisch gestretched wordt,
in mijn tekening komt deze block meermaals voor met verschillende lengte's (met vaste stap-lengte)
ik wil nu deze lengte uit een selset (die al deze blocks bevat)

heb uit bovenstaande tip wel stukje code gevonden maar ik vind de gegevens van de dyn-blocks niet terug hoor... ?

  (while (> ssoplen cnt)
    (setq obj (vlax-ename->vla-object (ssname ssop cnt)))
    (setq vis (vl-some '(lambda ( x ) (if (= vis (vla-get-propertyname x))
                                        (vlax-get x 'value)
                                      )
                        )
                        (vlax-invoke obj 'getdynamicblockproperties)
              )
    )
    (setq cnt (+ cnt 1))
  )


Titel: Re: hoe info halen uit dynamische blok
Bericht door: roy_043 op wo 21 03 2018, 08:58:02
Omdat je slechts een klein stukje code toont is het moeilijk een goed oordeel te vormen. Maar je zult in ieder geval de waarde van de variabele vis op moeten slaan in een lijst. Nu krijgt vis eerst de waarde van het cnt=0 block, dan de waarde van het cnt=1 block, etc. t/m het laatste, cnt=ssoplen-1, block.