| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Allse rückgängig bis zur letzten Speicherung (982 mal gelesen)
|
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 21. Jan. 2003 18:58 <-- editieren / zitieren --> Unities abgeben:
Gai Forum, hab mir da ne Anwendung gesaugt, die alles rückgängig stellt, wenn man abbricht. Hab sie mal angehängt. Kann da mal jemand von den Lislplern drübersehen und schauen wo das steckt; ist nämlich ziemlich übel. Hat mir den ganzen Nachmittag versaut. ;;; Versetzen alte Objekte event. löschen. ;;; Beim Versatz wird die Farbe geändert ;;; Dialogdatei: VERS.DCL ;;; 14.10.02 **** ACAD14 ... -2000, I-Cad **** ;; (defun C:VERS_L (/ ELEM FA ELPT Z) (defun NEUERR (MSG) (R_VAR) (princ MSG) (princ)) (setq PNAM "\nKontur versetzen, Vers. 1.4 Schönwald\n") (setq ALTERR *ERROR* *ERROR* NEUERR C_E (getvar "CMDECHO") ; ECHO G_M (getvar "GRIDMODE") ; RASTER C_L (getvar "CLAYER") ; LAYER )
(setvar "CMDECHO" 0) (setvar "GRIDMODE" 0) (defun R_VAR () (setvar "GRIDMODE" G_M) (setvar "CMDECHO" C_E) (setq *ERROR* ALTERR YES_NO NIL ABST NIL ) ) ;; ---------------------- (defun VERS_DIALOG (/ I1) (setq I1 (load_dialog "VERS.DCL")) (if (null (new_dialog "VERS" I1)) (alert "\n \nLaden der Dialogbox nicht moeglich!") ) (set_tile "JA" "0") (setq ABST (atof (get_tile "ABST"))) (setq YES_NO (get_tile "JA")) (action_tile "ABST" "(SETQ ABST (ATOF $VALUE))") (action_tile "JA" "(SETQ YES_NO $KEY)") (action_tile "cancel" "(done_dialog 0)") (setq OK (start_dialog)) (unload_dialog I1) (if (= OK 0) (progn (R_VAR) (exit)) ) ; Abbruchfunktion ) ;;------------------------------------------------------- (prompt PNAM) (VERS_DIALOG) (while (<= ABST 0.0) (alert "In der Spalte \"Versatz\" ist kein Wert angegeben") (VERS_DIALOG) ) ;;------------------------------------------------------- (setq Z 1) (while (or (= Z 1) ELEM) (redraw) (if (> Z 1) (setq ELEM (entsel "\n \n \nWeitere Kontur wählen oder RETURN: ")) (setq ELEM (entsel "\n \n \nBitte Kontur wählen: ")) ) (if ELEM (progn (setq ELPT (osnap (cadr ELEM) "_NEA")) ; Anpickpunkt NÄCHST (setq FA (cdr (assoc 62 (entget (car ELEM))))) (if FA (setq FA (1+ FA)) (setq FA 1) ) (if (> FA 7) (setq FA 1) ) (prompt "\n \n \nSeite auf die versetzt werden soll? ") (command "_OFFSET" ABST ELEM PAUSE "") (command "_CHPROP" (entlast) "" "LA" C_L "") (if (= YES_NO "1") (command "_ERASE" ELEM "") ) ) ) (setq Z (1+ Z)) ) (R_VAR) (redraw) (princ)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 21. Jan. 2003 20:22 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
Hallo Susa, habe mal kurz drüber gesehen. Die Funktion setzt eigentlich bei einem Abbruch nur die Systemvariablen wieder auf den Ursprungswert zurück. Die Fehlerfunktion, die bei einem Abbruch aufgerufen wird ist die NEUERR und die ruft die Funktion R_VAR auf. Für mich ist da auf den ersten Blick nichts ungewöhnliches erkennbar. Vielleicht beschreibst du etwas genauer, was dir ungewöhnlich erscheint. Grüße Holger ------------------ Holger Brischke CADlon - Lisp over night! Jetzt neu: FreeDownload Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 22. Jan. 2003 07:31 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 22. Jan. 2003 09:03 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
|
1000Hands Mitglied CEO
Beiträge: 990 Registriert: 24.03.2002 HP Workstation Z840 Building Design Suite Premium 2018 auf Windows7 64Bit
|
erstellt am: 22. Jan. 2003 11:32 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
|
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 22. Jan. 2003 22:50 <-- editieren / zitieren --> Unities abgeben:
Hai, zu 1. es ist kein erneutes Öffnen der Zeichnung erfolgt. sonst hätte ich nicht gefragt. zu 2. Ich habe die Anwendung aus diesem Forum gesaugt. Außerdem schwöre ich und will tot umfallen, dass während ich in dem Befehl war und ich abgebrochen habe alles verschwunden ist. Wenn es nicht an der Anwendung liegt? Wo speichert Acad diese Dinge ab(z); doch wohl in der Pagnierungsdatei. Kann es sein, dass diese zerschossen wird? Am Speicherplatz kann es nicht liegen;ist genug vorhanden. Jedenfalls ist das ganz schön übel.
Zitat: Original erstellt von 1000Hands: 1. Hat ev. ein erneutes öffnen der Zeichnung dazwischen gelegen?2. "Vers. 1.4 Schönwald" Könnte das ein Hinweis auf den Autor sein? So ein gibt´s hier nämlich im Forum... zu 2. Schein ich wohl richtig vermutet zu haben... http://ww3.cad.de/foren/ubb/Forum54/HTML/002362.shtml
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 23. Jan. 2003 19:27 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 23. Jan. 2003 19:49 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
Also Susa, die letzte Antwort kann ich so nicht auf sich beruhen lassen ! Ich schließe mich HB an: Von diesen Zeilen her rühtr es nicht ! -es ist wohl eher ein Zufall gewesen, ODER du hast noch andere Sachen am laufen mit denen es dann Streß geben kann... Meine Meinung: "Die hier" wissen es ! , nur was sie wissen gefällt dir nicht ! So Jungs, könnt wieder hinter mir vorkommen ------------------ Gruß Sebastian , Ffm Der Feind des Guten ist das Bessere. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd Cuder Mitglied Selbständig
Beiträge: 692 Registriert: 10.07.2002 AutoCAD 2002/2004/2005 unter Windows 2000 Professional SP3 PIV 3.4GHz 1024MB NVIDIA GeForce FX Go5700
|
erstellt am: 24. Jan. 2003 01:04 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
Also ich krieg den Code so nicht zum rennen, irgend etwas fehlt, aber meine Lisp Zeit ist lange her, deswegen such ich auch gar nicht. (Und es ist nicht die fehlende Klammer am Ende) Aber der Eintrag: (command "_ERASE" ELEM "") am Ende könnte wenn es blöd hergeht, sehrwohl zu Komplikationen führen. Command Anweisungen in Lisp sind super, (für Anfänger) aber was wenn die Appl einen Fehler hat und in eine Endlose in ERASE geht, bzw. eine Befehlswiederholung ebendort provoziert? ------------------ Bernd Cuder Cad&Co makes CAD easy [Diese Nachricht wurde von Bernd Cuder am 24. Januar 2003 editiert.] [Diese Nachricht wurde von Bernd Cuder am 24. Januar 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 24. Jan. 2003 07:16 <-- editieren / zitieren --> Unities abgeben:
Hai, Danke für eure Antworten. Die von Bernd Cuder wird wohl so stimmig sein. Jedenfalls habe ich die Anwendung auf den Müll geschmissen, nachdem es dann nochmal "passiert" ist durch Provokation. MfG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 24. Jan. 2003 08:45 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
Hallo Bernd, Hallo Susa, den Code kannst du so nicht zum Rennen kriegen, da die DCL-Datei (das Dialogfenster) fehlt. Das kann man aber mit wenigen Handgriffen umgehen und die möglichen Rückgaben aus dem Fenster durch setq-Anweisungen reinbringen. Wenn ich auf diese Art und Weise einen Abbruch (Abbrechen-Schaltfläche des Dialogfensters) provoziere, läuft das Programm sauber in die Fehler-SUB und fertig. Ich bleibe bei meiner Meinung, das Tool ist sauber! Bernd schrieb: >Command Anweisungen in Lisp sind super, >(für Anfänger) aber was wenn die Appl einen >Fehler hat und in eine Endlose in ERASE geht, >bzw. eine Befehlswiederholung ebendort >provoziert? Grundsätzlich stimme ich dieser Aussage zu. Im speziellen Fall können aber nicht alle Elemente seit dem Öffnen der Zeichnung gelöscht werden. Es sind keine Anweisungen zu finden, die die Variable elem selbsttätig auf ein anderes Element, als das Gewählte, der Zeichnung setzt. Susa12 schrieb >Die von Bernd Cuder wird wohl so stimmig sein. >Jedenfalls habe ich die Anwendung auf den Müll geschmissen, nachdem >es dann nochmal "passiert" ist durch Provokation. Ich weiß zwar nicht welche konkrete Aussage du aus Bernds Posting ziehst, dann wäre ja die Ursache bekannt und könnte behoben werden -oder? Die Aussage vom Bernd ist ok, besagt aber nichts zum konkreten Fall. Vielleicht verrätst du einmal detailiert wie du diesen von dir beschriebenen Effekt provoziert hast. Du solltest einmal AutoCAD starten ohne dass weitere Lisps/Tools geladen werden. Da du ja nun weißt, wie du den Effekt provozieren kannst, sollte (sofern das an diesem Tool liegt) das in diesem 'jungfräulichen' AutoCAD ebenso möglich sein. Bin auf deinen Bericht gespannt. Bei Fragen ... Grüße Holger ------------------ Holger Brischke CADlon - Lisp over night! Jetzt 25 Tools im FreeDownload Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1989 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 24. Jan. 2003 08:56 <-- editieren / zitieren --> Unities abgeben: Nur für Susa12
Soo, weil heute Freitag ist, will ich au noch meinen Senf dazu tun: Das mit den command befehlen, kann ich nicht ganz so vertreten, wie es dargestellt wurde. Mir ist noch nie ein solcher Fall untergekommen, wo eine solche Aktion auf einen Commandbefehl zurückzuführen war. Aber ich denke der Fehler liegt ganz woanders. Nämlich in einer unsauber programmierten Errorfunktion, die wahrscheinlich aus einem anderen Lispprogramm noch im Speicher steckte. Das hab' ich selber schon des öfteren fabriziert. @Susa12: Du wirst dieses Problem ganz sicher umgehen, wenn du in das Programm eine Eigene Errorroutine einbaust. Denn wenn Dir das programm bei der Arbeit helfen kann, würde ich das doch nicht wegwerfen. ------------------ Gruß CADwiesel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Susa12 Mitglied Architektin
Beiträge: 105 Registriert: 05.01.2003 Acad 2002
|
erstellt am: 24. Jan. 2003 17:07 <-- editieren / zitieren --> Unities abgeben:
Vielleicht verrätst du einmal detailiert wie du diesen von dir beschriebenen Effekt provoziert hast. Du solltest einmal AutoCAD starten ohne dass weitere Lisps/Tools geladen werden. Da du ja nun weißt, wie du den Effekt provozieren kannst, sollte (sofern das an diesem Tool liegt) das in diesem 'jungfräulichen' AutoCAD ebenso möglich sein. Bin auf deinen Bericht gespannt. BERICHT: Hallo, vielleicht ist ja auch mein "schneller Finger" schuld. Irgendwie habe ich es mir zu Angewohnheit gemacht, dass ich beim Abbruch 2mal schnell hintereinander auf Esc drücke. Danach wars dann passiert.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |