Zitat:
EDIT / Da zeitgleich:
Abbruch:Fehler bei ADS-Anforderung
Acad schon mal neu gestartet für einen erneuten Test ?
"ich möchte mit (layerstate-save...) den Layerstatus eines Ansichtsfenster sichern, einschließlich der aflayer."
An der Stelle geht hervor das dir die Arbeitsweise der Layerfilter(Was wird gespeichert=Alles) und was wird wann/wie wieder hergestellt) noch nicht ganz bewußt ist,
du solltest also mal die (AutoCAD-)Hilfe durchlesen zum Thema Layerfilter !
"Die Hilfe sagt:
(layerstate-save layerstatename mask viewport)
z.B. (layerstate-save "xy" 16 ename_viewport)"
Und das stimmt auch.
"Wenn ich also als viewport den ename des Ansichtsfensters übergebe, bekomme ich eine Fehlermeldung."
Was mache ich falsch?
Das erste ist: Du nennst uns die Fehlermeldung nicht, diese wird nämlich schon recht genau aussagen an
welcher Stelle es hakt !
Nur beispielhaft:
(layerstate-save "xy" 16 ename_viewport)=
1 Funktion
1 String
1 Integer
1 ename
Du kannst den Funktionsnamen falsch geschrieben haben
Du kannst einen ungültigen String als Name übergeben haben (Sonderzeichen oder einen bereits vorhandenen Layerfilter-Namen)
Du kannst einen unzulässigen Integerwert übergeben haben
(progn
(if (member (strcase (setq LSTname (getstring "LSTname: "))) (mapcar 'strcase (layerstate-getnames)))
(layerstate-delete LSTname)
)
(if (layerstate-save LSTname 16 (ssname (ssget "_:S" '((0 . "VIEWPORT"))) 0))
(alert "well done")
)
)
------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD
[Diese Nachricht wurde von cadffm am 12. Jan. 2014 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP