| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Makro (681 mal gelesen)
|
Noivet Mitglied Bautechniker
Beiträge: 173 Registriert: 05.09.2007 Vista Autocad 2010 Version3 Inventor 2011 NVIDIA Quadro 3000M
|
erstellt am: 19. Okt. 2007 09:29 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich schon wieder gibt es eine Möglichkeit in diesem Makro *^C^C_select;_single;\bks;s;z;-250;_section;v;;xy;;_copy;l;;0,0,0; eine Abfrage für den Wert der BKS Verschiebung (hier -250) einzugeben, der in der Wiederholung des Makros automatisch eingesetzt wird? Sollte aber ein Buttonmakro bleiben keine zu ladende Lisp. Viele Grüße Noivet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 19. Okt. 2007 10:16 <-- editieren / zitieren --> Unities abgeben: Nur für Noivet
ohne LISP wird dir das so nicht gelingen. Aber du musst ja nicht unbedingt den LISP Ausdruck in einer externen Datei haben. Du kannst es ja auch direkt in das Buttonmakro hinterlegen ^C^C^P(progn (if (not tmpZ) (setq tmpZ -250))(command "._select" "_single" pause)(command "BKS" "S" "Z" (cond ((setq a1 (getreal (strcat "Z-Verschiebung <" (rtos tmpZ 2 2) ">"))) (setq tmpz a1)) (t tmpz)))(command "_section" "v" "" "xy" "")(command "_copy" "l" "" "0,0,0")); Oder Du legst Dir paralell zur acad.cui eine Datei namens acad.mnl an. Sämtlicher LISP Code darin wird automatisch mit der cui geladen.
------------------ Ing. Anton Fuchs WWW.FFZELL.AT.TC Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Noivet Mitglied Bautechniker
Beiträge: 173 Registriert: 05.09.2007 Vista Autocad 2010 Version3 Inventor 2011 NVIDIA Quadro 3000M
|
erstellt am: 19. Okt. 2007 11:09 <-- editieren / zitieren --> Unities abgeben:
Hallo fuchsi, danke für deine Mühen, aber alles was passiert wenn ich deinen Code auf einen Button lege ist dieses: (("_> und dann bleibt es stehen. Beenden kann ich es nur mit "Abbruch" Muß ich noch etwas dabei beachten? Das Problem mit den Lispdateien ist, das wir feste Profile usw. haben und so ein Buttonmakro für uns leichter zu verteilen ist. Viele Grüße Noivet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 19. Okt. 2007 11:45 <-- editieren / zitieren --> Unities abgeben: Nur für Noivet
habs gerade noch mal probiert. Dürfte daran liegen, dass eine Makrozeuile nicht beliebig lang sein darf. Allerdings kann man in Lispausdrücken Zeilenumbrüche einbauen mit ^M ^C^C(progn (if (not tmpZ) (setq tmpZ -250))(command "._select" "_single" pause) ^M(command "BKS" "S" "Z" (cond ((setq a1 (getreal (strcat "Z-Verschiebung <" (rtos tmpZ 2 2) ">"))) (setq tmpz a1)) (t tmpz)))(command "_section" "v" "" "xy" "")(command "_copy" "l" "" "0,0,0")); ------------------ Ing. Anton Fuchs WWW.FFZELL.AT.TC Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Noivet Mitglied Bautechniker
Beiträge: 173 Registriert: 05.09.2007 Vista Autocad 2010 Version3 Inventor 2011 NVIDIA Quadro 3000M
|
erstellt am: 19. Okt. 2007 12:46 <-- editieren / zitieren --> Unities abgeben:
Hallo fuchsi, klappt leider immer noch nicht, läuft so durch. Befehl: (progn (if (not tmpZ) (setq tmpZ -250))(command "._select" "_single" pause) (_> (command "BKS" "S" "Z" (cond ((setq a1 (getreal (strcat "Z-Verschiebung <" (rtos tmpZ 2 2) ">"))) (setq tmpz a1)) (t tmpz)))(command "_section" "v" "" "xy" "")(command "_copy" "l" "" "0,0,0")) Viele Grüße Noivet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 19. Okt. 2007 22:33 <-- editieren / zitieren --> Unities abgeben: Nur für Noivet
|
Noivet Mitglied Bautechniker
Beiträge: 173 Registriert: 05.09.2007 Vista Autocad 2010 Version3 Inventor 2011 NVIDIA Quadro 3000M
|
erstellt am: 24. Okt. 2007 17:03 <-- editieren / zitieren --> Unities abgeben:
Hallo noch einmal, das Makro funktioniert so schon, ich hab einen Fehler gemacht. Was mir jetzt noch fehlt ist die Wiederholung des Makros, ohne eine weitere Abfrage des BKS-versatzes, da ich mehrere Schnitte mit immer gleichem Abstand erzeugen will. Bei meinem Versuch hatte ich das ja mit dem * gemacht. Viele Grüße Noivet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Noivet Mitglied Bautechniker
Beiträge: 173 Registriert: 05.09.2007 Vista Autocad 2010 Version3 Inventor 2011 NVIDIA Quadro 3000M
|
erstellt am: 08. Nov. 2007 12:33 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich möchte meine Frage noch einmal vorschieben Gibt es denn keine Möglichkeit ein Buttonmakro zu schreiben bei dem ich eine Abfrage für die BKS Verschiebung einbaue und dann der Rest des Makros immer wieder ohne die Abfrage nach dem Abstand wiederholt wird? Würde mich freuen wenn vielleicht doch noch jemand eine Idee hätte Liebe Grüße Noivet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |