Hallo, wer kann mir helfen ?
Habe die Lisp-Routine Dimlayer umgeschieben. klappt aber nicht.
Was ist hier falsch ?
DIMLAYER:
;;; Bemaßung auf Bemaßungslayer abgelegt.
(defun pre_lay (reatyp befname / );Wenn Bem gestartet wird
(cond
((wcmatch (car befname) "DIM*")
(setq *oldlay* (getvar "CLAYER"))
(setvar "CLAYER" "0_Bemaßung");Anstatt der 0 den Layer einsetzen, der zum Bemassen genutzt werden soll
)
)
)
(defun after_lay (reatyp befname / );Wenn Bem beendet wird
(cond
((and
(wcmatch (car befname) "DIM*")
*oldlay*
)
(setvar "CLAYER" *oldlay*)
(setq *oldlay* nil)
)
)
)
(defun reaload ();Initialisierung des Reactors
(if (not *DEFUN_DIMLAYER*)
(progn
(setq *DEFUN_DIMLAYER*
(VLR-Command-Reactor "*DEFUN_DIMLAYER*"
'((:vlr-commandEnded . after_lay)
(:vlr-commandwillstart . pre_lay)
)
)
)
(princ "\nLayerschalter Bemassung aktiviert")
)
)
)
(reaload)
TEXTLAYER
;;; Text wird auf Layer 0-Text abgelegt.
(defun pre_lay (reatyp befname / );Wenn Text gestartet wird
(cond
((wcmatch (car brfname) "*TEXT")
(setq *oldlay* (getvar "CLAYER"))
(setvar "CLAYER" "0-Text")
)
)
)
(defun after_lay (reatyp befname / );Wenn Text beendet wird
(cond
((and
(wcmatch (car brfname) "*TEXT")
*oldlay*
)
(setvar "CLAYER" *oldlay*)
(setq *oldlay* nil)
)
)
)
(defun reaload ();Initialisierung des Reactors
(if (not *DEFUN_TEXTLAYER*)
(progn
(setq *DEFUN_TEXTLAYER*
(VLR-Command-Reactor "*DEFUN_TEXTLAYER*"
'((:vlr-commandEnded . after_lay)
(:vlr-commandwillstart . pre_lay)
)
)
)
(princ "\nLayerschalter Text aktiviert")
)
)
)
(reaload)
Ich wollte mir das mal ganz einfach machen. Hab nicht ganz so viel Ahnung von lisp. Das Gleiche brauche ich für Schraffur
Hat jemand einen Lösung ?
Danke und Grüße DUMU
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP