Hallo,
habe mir ein Tool geschrieben mit dem ich den Objekt-Layer ausschalten kann. Es funktioniert super! Während der arbeit hab ich festgestellt, es währe schön, wenn ich auch mehrere Objekte auswählen und damit auschalten könnte. Nur da ist mein Lisp am Ende. Kann mir jemand helfen.
Schöne Grüße
Waldemar
(defun C:LAYFRIWP (/ CM AU LA)
;Systemvariablen werden gespeichert
(Setq CM (Getvar "Cmdecho"))
;Systemvariablen werden gesetzt
(Setvar "Cmdecho" 0)
;Auswahlsatz wird gebildet
(Setq AU (Entget (Car (Entsel "Ein Objekt auf dem zu frierenden Layer wählen:"))))
(Setq LA (Cdr(Assoc 8 AU)))
;Prüfung ob Layer ausgeschaltet werden kann
(If ;Wenn
(= (Cdr(Assoc 8 AU)) (Getvar "Clayer")) ;Objektauswahl = Aktueller Layer
(Princ "\nAktueller Layer kann nicht gefroren werden!") ;dann Meldung
(Progn ;sonnst
(Command "_.LAYER" "_FREEZE" LA "") ;Layer ausschalten und
(princ (strcat "\nLayer '"LA"' wurde eingefroren!")) ;Bildschirmmeldung
);And
);If
;Systemvariablen werden zurückgesetzt
(Setvar "Cmdecho" CM)
(princ)
);Defun
(prompt "\n\nProgramm starten mit LAYFRIAWP")
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP