Hallo Zusammen,
ich habe ein Lisp Programm geschrieben das ich vor einigen Jahren unter Autocad häufig genutzt hatte. Das hab ich jetzt wieder ausgegraben und versuche den Einsatz unter Bricscad V22.02. Da läuft es aber irgendwie nicht. Vielleicht hat einer der Lisp Spezialisten da einen Tip.
Möglicherweise gehört die Anfrage eher in ein Lisp Forum aber es geht ja um die Lauffähigkeit unter Bricscad. Also fals jemand der Meinung ist ich wäre hier im falschen Forum dann hoffe ich man kann mir das verzeihen...
Zur bisher funktionierenden Funktion des Lisp-Befehl mit Namen "flip"
Ich arbeite häufiger mit mehreren Ansichtsfenstern. Ein dominantes und zwei seitlich angeordnete kleinere. Jedes Fenster mit einer anderen Darstellung. Manchmal ist es hilfreich die Fensterinhalte einfach zu "tauschen", z.B. den Ausschnitt des kleinen Fenster auf das große Fenster bringen und den Inhalt des großen Fensters im kleinenn Ansichtsfenster "parken". Dafür geb ich den Befehl "flip" ein, wechsle dann in z.B. ein anders Fenster, bestätige den Wechsel mit rechter Maustaste und schon werden die Fensterinhalte getauscht.
Ich hab das schon lange nicht mehr benutzt und weis, das ich bei der Umstellung der Gesamt-Lisp-Datei auf Bricscad, einige Problem auch mit anderen Kurzbefehlen hatte die größtenteils behoben sind. Hier kriege ich es aber nicht hin und Lisp kannte ich schon immer nur sehr rudimentär.
Vielleicht kann netterweise jemand weiterhelfen.
Das Progrämmchen sollte eigentlich die Variablennummer der Ansichtsfenster /cvports abspeichern, und die Zahlen als Variable ANSF1 und ANSF2 speichern, Eenso die Ansichtsausschnitte /views unter Temp 1 und Temp2 und stellt sie dann in dem jeweils anderen Ansichtsfenster her. Aber es hängt sich irgendwie auf.
(defun c:flip ()
;;(setq OS (getvar "osmode"))
(setvar "cmdecho" 0)
;;(setvar "osmode" 0)
(setq ANSF1 (getvar "cvport"))
(command "._view" "_save" "temp1")
(princ "\nBitte in das Austauschfenster wechseln : ")
(command pause)
(command "._view" "_save" "temp2")
(command "._view" "_restore" "temp1")
(setvar "cvport" ANSF1)
(command "._view" "_restore" "temp2" )
;;(setvar "osmode" OS)
(setvar "cmdecho" 1)
)
Kann da netterweise jemand helfen ?
Danke
Thomas Kaulen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP