Hallo,
ich hab hier ein kleines Lisp das noch nicht ganz so funktioniert, im ersten Teil werden von einem bestehenden Attribut Eigenschaften gelesen, dann wird ein neues Attribut erstellt mit den Eigenschaften des bestehenden Attributs !
Im zweiten Teil werden dann mit entmod und entupd weitere Eigenschaften übertragen und das funktioniert noch nicht richtig es wird nur die erste Eigenschaft übertragen dann steigt das Ganze aus, woran kann es liegen ?
Der Fehler hängt wohl mit dem entupd zusammen !
Hier der Lisp-Code:
(defun c:T7 ()
(setq bln (car(entsel "Attdef wählen:")))
(princ "\n ")
(princ bln)
(princ "\n ")
(setq att1 (setq bln(entget bln)))
(setq attbez (cdr (assoc 2 att1)))
(setq attabfrage (cdr (assoc 3 att1)))
(setq attwert (cdr (assoc 1 att1)))
(setq attpos (cdr (assoc 10 att1)))
(setq atthoehe (cdr (assoc 40 att1)))
(setq a41 (cdr (assoc 41 att1))) Breitenfaktor
(setq a50 (cdr (assoc 50 att1)))
(setq a62 (cdr (assoc 62 att1))) ;Farbe
(setq a100 (cdr (assoc 100 att1)))
(setq a8 (cdr (assoc 8 att1)))
(setq a51 (cdr (assoc 51 att1)))
(setq a7 (cdr (assoc 7 att1))) ;Text-Stil
(setq a70 (cdr (assoc 70 att1)))
(setq a71 (cdr (assoc 71 att1)))
(setq a72 (cdr (assoc 72 att1)))
(setq a73 (cdr (assoc 73 att1)))
(setq a74 (cdr (assoc 74 att1)))
(command "_.-attdef" "" attbez attabfrage attwert attpos atthoehe "")
(princ att2)
(princ "\n ")
(princ a41)
(princ "\n ")
(setq bl1 (entlast))
(setq att2 (entget bl1))
(princ att2)
(princ "\n ")
(setq b41 (subst (cons 41 a41)(assoc 41 att2)att2))
(entmod b41)
(entupd att2)
(setq b50 (subst (cons 50 a50)(assoc 50 att2)att2))
(entmod b50)
(entupd att2)
(setq b62 (subst (cons 62 a62)(assoc 62 att2)att2))
(entmod b62)
(entupd att2)
(setq b100 (subst (cons 100 a100)(assoc 100 att2)att2))
(entmod b100)
(entupd att2)
(setq b8 (subst (cons 8 a8)(assoc 8 att2)att2))
(entmod b8)
(entupd att2)
(setq b51 (subst (cons 51 a51)(assoc 51 att2)att2))
(entmod b51)
(entupd att2)
(setq b7 (subst (cons 7 a7)(assoc 7 att2)att2))
(entmod b7)
(entupd att2)
(setq b70 (subst (cons 70 a70)(assoc 70 att2)att2))
(entmod b70)
(entupd att2)
(setq b71 (subst (cons 71 a71)(assoc 71 att2)att2))
(entmod b71)
(entupd att2)
(setq b72 (subst (cons 72 a72)(assoc 72 att2)att2))
(entmod b72)
(entupd att2)
(setq b73 (subst (cons 73 a73)(assoc 73 att2)att2))
(entmod b73)
(entupd att2)
(setq b74 (subst (cons 74 a74)(assoc 74 att2)att2))
(entmod b74)
(entupd att2)
)
Gruß, Jürgen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP