Augur
12.03.2008, 10:38
Chcel by som vas poziadat o dalsiu radu.. Ako zapisem lisp (alebo aspon jeho fragment), ktorym dokazem ziskat hodnotu konkretneho atributu z bloku na jeho dalsie pouzitie v lispe.. (v bloku je definovanych viacero atributov). Nieco podobne sa tu riesilo pred dost dlhym casom. vyzeralo to asi takto:
(defun RetValAtt (EName AttTag / EData rr)
(setq EData (entget EName)) ;Get initial info
;loop through all attributes in block
(while
(= "ATTRIB"
(cdr
(assoc '0
(setq EData (entget (entnext (cdr (assoc '-1 EData)))))
)
)
)
(if (WCMatch (cdr (assoc '2 EData)) AttTag)
(setq rr (cdr (assoc '1 EData)))
)
)
(eval rr)
)
Bohuzial s tym akosik neviem pohnut, pravdepodobne je chyba na mojom "prijimaci"
(defun RetValAtt (EName AttTag / EData rr)
(setq EData (entget EName)) ;Get initial info
;loop through all attributes in block
(while
(= "ATTRIB"
(cdr
(assoc '0
(setq EData (entget (entnext (cdr (assoc '-1 EData)))))
)
)
)
(if (WCMatch (cdr (assoc '2 EData)) AttTag)
(setq rr (cdr (assoc '1 EData)))
)
)
(eval rr)
)
Bohuzial s tym akosik neviem pohnut, pravdepodobne je chyba na mojom "prijimaci"