Hallo Leute,
ich habe mal wieder eine (hoffentlich) kleine Bitte an Euch.
Ich habe eine LISP die mir alle Blockreferenzen eines von mir geklickten Blockes in einen Auswahlsatz speichert.
Soweit so gut...aber...wir arbeiten hier mit ElcoCAD und leider werden die Attribute durch diese Software an die Referenzen gehängt.
Wenn ich jetzt z.B. alle Blockreferenzen auswählen möchte, die einen bestimmten Attributwert haben funtioniert das natürlich nicht.
Deshalb meine Frage :
Könnt ihr mir in den unten stehenden Code ein paar Zeilen einbauen die dafür sorgen, dass nur die Blockreferenzen im Auswahlsatz landen, die auch den von mir angeklickten Attributwert haben ?!
(Also ich klicke auf den Attributwert "D" und es werden nur die Referenzen gewählt die den gleichen Blocknamen und diesen Attributwert haben). Ich hoffe ich schreibe das alles hier nicht zu umständlich. Eine Test-DWG habe ich mal hochgeladen.
Hier der Code :
(defun c:block_aws ( / block)
(if (and (setq block (entsel "\nBitte Block auswählen:"))
(= (cdr (assoc 0 (entget (car block)))) "INSERT"))
(progn
(setq aws
(ssget "_X"
(list (cons 0 "INSERT") (assoc 2 (entget (car block))))))
(princ "\Auswahl mit !aws abrufen.")))
(command "_.PSELECT" "v""")
(princ))
Hier der Gruss :
Gruss Attilio
------------------
Mit freundlichen Grüssen
Attilio Sfragara
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP