AutoCAD-Befehl -DWGUNITS fehlende Eingabeaufforderungen

501
Mac Readhead

Ich habe viele benutzerdefinierte AutoLISP-Befehle, die in unserem Unternehmen seit Jahren ohne Probleme bis heute Morgen verwendet wurden.

Wir haben ein AutoLISP, das Folgendes ausführt:

(command "-dwgunits" 3 2 4 "no" "no" "no") 

Dies ist der Beginn einer unserer metrischen Skaleneinstellungen. Das Problem, das wir heute hatten, ist die dritte Aufforderung zur Skalierung der Zeichnung, die auf allen Desktops nicht mehr angezeigt wird. Dies bedeutet, dass das dritte "Nein" den Rest des Befehls fehlerhaft macht. Beim ersten Ausführen des Befehls konnte ich den Befehl erhalten, mich nach diesem dritten Element zu fragen, und danach nie wieder. Ich erhalte nur zwei Ansagen. Warum wird die 3. Eingabeaufforderung nicht angezeigt?

Wenn ich die LISP so umstelle, dass sie nur zwei "Nein" enthält, fragt sie nach einem dritten. Komisches Verhalten...

Jede Hilfe wäre sehr dankbar.

1

1 Antwort auf die Frage

0
Mac Readhead

Nach einigem Basteln mit AutoLISP konnte ich feststellen, dass, wenn LUNITS auf einen anderen Wert als den gewünschten Wert gesetzt wurde, die Skalierung der Elemente in der Zeichnung angezeigt würde. Wenn ich diesen Befehl ausführte und LUNITS bereits das gleiche war, würde ich nicht nach Skalierungsobjekten in der Zeichnung fragen, z. B. wie die Argumente geliefert werden.

Ich konnte folgendes entwickeln, um das zu tun, was ich wollte:

Metrisch:

(if (= (getvar "LUNITS") 2) (command "-dwgunits" 3 2 4 "no" "no") (command "-dwgunits" 3 2 4 "no" "no" "no")) 

Kaiserliche:

(if (= (getvar "LUNITS") 4) (command "-dwgunits" 1 4 6 "no" "no") (command "-dwgunits" 3 2 4 "no" "no" "no"))