Hallo Autolispforum,
habe ein kleines Lisp das mir zum erstellen
einer Legende in meinen Fließbildern hilft.
Es erstellt eine Polylinie und dahinter den Layernamen,
doch plötzlich funzt es nicht mehr, weder in 2005 noch
in Autocad 2008.
Ich kann mit meinen bescheidenen Kenntnissen keinen
Fehler sehen.
Vieleicht sieht jemand anderes die Macke.
(defun c:layer-lw-list (/ p row y ts xd plinewidold)
(setvar "cmdecho" 0)
(setvar "textsize" 5.0)
(command "_-layer" "_ma" "-RAHMEN" "")
(command "_-color" "_byLayer" "")
(command "_-linetype" "_s" "_bylayer" "")
(setq p (getpoint "Startpunkt Layerliste: "))
(setq ts (getvar "textsize"))
(setq y (cadr p))
(setq xd (* ts 15)) ; dist between columns
(setq plinewidold (getvar "PLINEWID"))
(if p
(foreach row (ax:layer-lw-list)
(command "text" p "" "" (car row))
(setvar "PLINEWID" (* (/ ts 2.11) (cadr row)))
(command "_pline"
(list (- (car p) (* 0.1 xd)) (+ (cadr p) (/ ts 2.0)) (caddr p))
(list (- (car p) (* 0.5 xd)) (+ (cadr p) (/ ts 2.0)) (caddr p))
""
)
(command "text" (list (+ (car p) xd) (cadr p) (caddr p)) "" "" (caddr row))
(setq y (- y (* ts 1.66667)))
(setq p (list (car p) y (caddr p)))
)
)
(command "_color" "_bylayer" "")
(setvar "PLINEWID" plinewidold)
(setvar "cmdecho" 1)
(princ)
)
Gruß Jürgen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP