| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Wenn Dann (2886 mal gelesen)
|
Martin Henkel Mitglied
Beiträge: 29 Registriert: 28.06.2005 P4 3,4GHz 2GB-RAM ATI-FireGL-V3100 XP PRO SP2 Civil06 mit Topobase
|
erstellt am: 27. Nov. 2007 15:03 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich experimentiere an eine Lisptool, welches einen Block erzeugt. Leider bricht es beim zweiten mal ab, da der Block ja schon besteht. Gibt es in Lisp die Funktion "on error resume next" oder kann man über eine if/then Abfrage ein überschreiben des Blockes oder einen Programmsprung auslösen? (command "block" "GK-kreuz" startxy kreuz "") Gruss und Danke Martin [Diese Nachricht wurde von Martin Henkel am 28. Nov. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 ich hab eh keine Probleme damit...
|
erstellt am: 27. Nov. 2007 15:09 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
|
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 27. Nov. 2007 15:12 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
Hallo Martin, (if (tblsearch "BLOCK" "neuer_Blockname") (progn und dann kannst Du Dir ja überlegen, ob die Blockdefinition, die bereits vorhanden ist gelöscht werden soll, z.B. über (command "_.purge" ... oder ob Du einen anderen Blocknamen für die Neudefinition verwendest. ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Martin Henkel Mitglied
Beiträge: 29 Registriert: 28.06.2005 P4 3,4GHz 2GB-RAM ATI-FireGL-V3100 XP PRO SP2 Civil06 mit Topobase
|
erstellt am: 27. Nov. 2007 16:13 <-- editieren / zitieren --> Unities abgeben:
Hallo nochmal, Sorry, ich kriege es nicht gebacken. (if (= (tblsearch "BLOCK" "GK-kreuz") nil) ;wenn das "nil" ist, mach das (setq startxy (list (- startx 2.5) starty)) (command "linie" startxy "@5,0" "") (setq liniehor (entlast)) (setq startxy (list startx (- starty 2.5))) (command "linie" startxy "@0,5" "") (setq liniever (entlast)) (setq kreuz (ssadd liniehor)) (ssadd liniever kreuz) (setq startxy (list startx starty)) (command "block" "GK-kreuz" startxy kreuz "") ) ;sonst das (command "_insert" "GK-kreuz" startxy kreuzhoehe kreuzhoehe "0" "") Gruß und Danke Martin
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1968 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 27. Nov. 2007 17:16 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
|
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 27. Nov. 2007 17:39 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
Hallo Martin, ich habe in Deinem Code ein paar unnötige SETQ's entfernt und ein PROGN eingefügt. Probiers einfach mal aus und bau Dir dann Deinen Code draus. Code:
(defun C:test ( / EINFUEGEPUNKT KREUZ STARTX STARTY) (setq startx 0.0 starty 0.0 kreuz (ssadd));;;leerer Auswahlsatz (if (not(tblsearch "BLOCK" "GK-kreuz")) ;wenn keine Blockdefinition vorhanden (progn (command "linie" (list (- startx 2.5) starty) "@5,0" "") (ssadd (entlast) kreuz) (command "linie" (list startx (- starty 2.5)) "@0,5" "") (ssadd (entlast) kreuz) (command "block" "GK-kreuz" (list startx starty) kreuz ""))) ;Block einfügen (if(setq einfuegepunkt (getpoint "\nBitte Einfügepunkt angeben:")) (command "_insert" "GK-kreuz" einfuegepunkt "1" "1" "0") ))
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Martin Henkel Mitglied
Beiträge: 29 Registriert: 28.06.2005 P4 3,4GHz 2GB-RAM ATI-FireGL-V3100 XP PRO SP2 Civil06 mit Topobase
|
erstellt am: 28. Nov. 2007 09:31 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn und Cadwiesel, erstmal Guten Morgen (an Alle) und Danke. Allerdings bin ich jetzt erstmal gefrustet. Grund meiner ganzen Anfragen, war die Ergänzung der afkoord.lsp die hier schon geraume Zeit herumschwiert. Aber ich werfe jetzt erstmal das Handtuch (Respekt für die, die Lisp verstehen). Bei meiner Ergänzung ging es darum Koordinatenkreuze für das gewählte Ansichtsfenster einzufügen und anschließend vom Modellbereich in den Layoutbereich zu schieben. Zuerst hat es noch für ein Layout funktioniert. Beim zweiten stieg es dann aus, also weitergepfuscht und jetzt bricht es auch schon beim ersten wieder ab. Ich habe die Datei angehängt, vielleicht kann es noch jemand gebrauchen oder vollenden. (Ich glaub, ich kauf mir jetzt erstmal das Kochbuch). Nochmals Danke Gruss (und "schnief")Martin P.S. Falls jemand Hilfe braucht, vielleicht für ein gutes Pizzateigrezept, dann bin ich Euer Mann. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
spider_dd Mitglied
Beiträge: 1111 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 28. Nov. 2007 10:52 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
Zitat: Original erstellt von Martin Henkel: Bei meiner Ergänzung ging es darum Koordinatenkreuze für das gewählte Ansichtsfenster einzufügen
Hallo Martin, ich verweise mal hier drauf. Das gibt es nämlich schon. Nennt sich "Koordinatenbeschriftung für Ansichtsfenster.lsp" und läuft auch schon unter ACAD2000. Die Koordinatenkreuze sind dann im Papierbereich und in einer Gruppe zusammengefasst. LG Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Martin Henkel Mitglied
Beiträge: 29 Registriert: 28.06.2005 P4 3,4GHz 2GB-RAM ATI-FireGL-V3100 XP PRO SP2 Civil06 mit Topobase
|
erstellt am: 28. Nov. 2007 11:23 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, Genau an diesem Lisp habe ich experimentiert. Es ging mir im Prinzip nur darum zusätzlich noch die Kreuze einzufügen. Civil 2008 haben wir leider noch nicht. Trotzdem Danke Gruß Martin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11
|
erstellt am: 28. Nov. 2007 19:33 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
|
Martin Henkel Mitglied
Beiträge: 29 Registriert: 28.06.2005 P4 3,4GHz 2GB-RAM ATI-FireGL-V3100 XP PRO SP2 Civil06 mit Topobase
|
erstellt am: 29. Nov. 2007 08:29 <-- editieren / zitieren --> Unities abgeben:
Hallo Uwe, danke für die Info aber bei mir bricht das Setup ab, weil eine der Systemvoraussetzungen nicht erfüllt seien. Dir aber auch vielen Dank, manchmal heist es einfach warten und oder lernen und selber machen. Gruß Martin
------------------ XP PRO SP2 Civil 06 mit Topobase Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,
|
erstellt am: 13. Mrz. 2008 22:16 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
Frage zu "AFKOORD.lsp" an den Verfasser Herrn Hübner nutze lsp aus CIVIL mit dieser Lsp ist es wie mit dem Autofahren, wer keine Ahnung hat sollte es lieber lassen oder nur sehr sehr langsam fahren... bin zu schnelle gefahren und hätte fast Mist gebaut wie folgt: Afkoord im Fenster erstellt, schnell schnell noch mal alles durchgeschaut und alles im Fenster etwas verschoben und raus mit den Daten; nur das jetzt das abgebildete Netz durch die Verschiebung nicht mehr gepasst hat: Frage: wär es nicht sinnvoll bei Anwendung der Lsp gleich das Af Fenster zu Sperren gegen unbeabsichtigtes verschieben, und wenn doch verschoben wird wird die Gruppe mit dem Netz gelöscht! Soll nur ein Hinweis sein , ist das anderen auch schon passiert, Nutze Lsp aber gern .... aber sehr sehr vorsichtig! An welcher stelle der LSP könnte man denn die Beschriftung der Koordinaten anpassen ( x, y oder H , R) ?
------------------ Gruß vom Bauvermesser; Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11
|
erstellt am: 14. Mrz. 2008 23:52 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
Das Lisp Programm zum Anbringen von Koordinatenbeschriftung aus Civil 3D 2008 heißt "Koordinatenbeschriftung für Ansichtsfenster.lsp" Ein automatisches Sperren des beschrifteten Ansichtsfensters ist eine recht gute Idee. Ich hab auch schon mal über einen Reaktor nachgedacht, der eine Warnung bei Änderungen am Ansichtsfenster ausgibt - aber der Aufwand ist schon recht hoch. Ich mach die Randbeschriftung einfach immer erst zum Schluss. Ansonsten schnell weglöschen und neumachen. Zitat: Frage: An welcher stelle der LSP könnte man denn die Beschriftung der Koordinaten anpassen ( x, y oder H , R)
Funktion: (defun createAFKoord ... ------------------ Mit freundlichem Gruß Udo Hübner www.CAD-Huebner.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,
|
erstellt am: 20. Mai. 2008 23:18 <-- editieren / zitieren --> Unities abgeben: Nur für Martin Henkel
danke für die Antwort aber sollten sie mal eine Änderung mit einer Beschriftungsmöglichkeit in dieser LSP umsetzen oder ändern, geben sie mir bitte einen Hinweis, ich habe keine Ahnung wo da was zu ändern ist. grüße ------------------ Gruß vom Bauvermesser; Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |