Forum:Rund um AutoCAD
Thema:Makro
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge verwalten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
Noivet

Beiträge: 173 / 0

Vista
Autocad 2010 Version3
Inventor 2011
NVIDIA Quadro 3000M

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

fuchsi

Beiträge: 1201 / 10

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

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

Noivet

Beiträge: 173 / 0

Vista
Autocad 2010 Version3
Inventor 2011
NVIDIA Quadro 3000M

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

fuchsi

Beiträge: 1201 / 10

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

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

Noivet

Beiträge: 173 / 0

Vista
Autocad 2010 Version3
Inventor 2011
NVIDIA Quadro 3000M

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

Theodor Schoenwald

Beiträge: 1672 / 0

Hallo Anton,

könnte es daran liegen, dass in Lisp eine Textzeile nicht länger als 135 Zeichen sein darf?

Gruß
Theodor

Noivet

Beiträge: 173 / 0

Vista
Autocad 2010 Version3
Inventor 2011
NVIDIA Quadro 3000M

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

Noivet

Beiträge: 173 / 0

Vista
Autocad 2010 Version3
Inventor 2011
NVIDIA Quadro 3000M

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