ich wollte zu lernzwecken die untenstehende funktion in activex umschreiben.
ich nahm an, daß dies ähnlich "ablaufen" würde...das das nicht so ist, habe ich nun verstanden!
meine erste vorgehensweise war über (ssget "_X" '((0 . "INSERT")))
alle blöcke einzusammeln, xref's filtern und schliesslich über vlax-ename->vla-object umzuwandeln.
nun über vla-get-path den pfad ermitteln...klappt!
nächster versuch... ssget einzusparen und über vla-get-activedocument ... an die xref's herankommen...was nicht geklappt hat
und auch so anscheinend nicht geht
(defun bw_xlst (/ blkdat lst tmp)
(while (setq blkdat (tblnext "block" (null blkdat)))
(setq tmp (entget (tblobjname "block" (cdr (assoc 2 blkdat))))
)
(if (= 4 (logand 4 (cdr (assoc 70 tmp))))
(setq lst
(cons (cons (cdr (assoc 2 blkdat)) (cdr (assoc 1 tmp))) lst)
)
)
)
(vl-sort lst '(lambda (a b) (< (car a) (car b))))
)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP