Hallo,
habe mich nachdem ich die Vorteile von Feldern in Attributen entdeckt habe, an einer Lisp-Routine versucht, die ein Feld als Attribut (in einem Flaechenstempel) mit der Flaeche einer Polylinie verknuepft. Hintergrund ist der, dass ich extrem viele dieser Flaechenstempel immer wieder updaten muss,da sich die Flaechen staendig aendern. Das haendische Updaten des Attributs oder das Updaten eines simplen Attributs mittels einer eigenen Lisproutine ist sehr zeitaufwendig, deshalb jetzt der Versuch die Flaechenstempel assosiativ zu machen.
Leider bin ich bei dem Lisp-code schon bei der Uebergabe der Objekt-ID in den Attributwert gescheitert. Bei der Zusammenfassung mittels "strcase" kommt folgende Fehlermeldung:
; error: bad argument type: symbolp 2122412616
anbei der codeschnipsel bis zu diesem Punkt:
(defun C:upda (/ tat EN1 tax OBj1)
(setq EN1 (car (entsel "\nPick a Polyline: ")))
(vl-load-com)
(setq EN1 (vlax-ename->vla-object EN1))
(setq Obj1 (vla-get-ObjectID EN1))
(setq str (vl-symbol-name Obj1))
(setq tax (strcat "%<\\AcObjProp Object(%<\\_ObjId " str ">%).Area \\f \"%.3f\">%"))
Hat jemand eine Idee wo der Fehler liegt bzw. wie mans besser machen kann evtl. sogar ne Idee wo man eine Lisp-Routine fuer diesen Zweck finden kann ?
Bin leider nur ein ziemlicher Gelegenheitsprogrammierer ohne richtige Grundlagen...
Gruesse,
Lothar Hennig
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP