• Dieses Forum ist die maschinengenerierte Übersetzung von www.cad3d.it/forum1 - der italienischen Design-Community. Einige Begriffe sind nicht korrekt übersetzt.

Problemi con command ("_text")

schwarz89it

Guest
Guten Morgen an alle, Ich schrieb eine rudimentäre Funktion, dass in der Theorie sollte mir erlauben, schnell die "quoten" einzufügen, aber wenn ich an der Befehlszeile (Befehl _text) das Programm nicht richtig die Funktion ausführen.
Code:
(defunc c:altimetric ()
(Setvar "cmdecho" 0)
(setq ps (getpoint "\point pro Zeile der Schreibpunkte:"))
(setq p0 (getpoint "\report rate for berechnen:"))
(setq htesto 2)
(sing)
(Repeat 1)
(setq pt (getpoint "\point zu messen:"))
(setq y (- (cadr pt) (cadr p0))
(setq p1 (list (car pt) (cadr ps)))
(Befehl "_text" "_j" p1 htesto 90 (Strcat (rtos y 2 0) ")
)
)
)
Ich weiß, dass die erfahrensten der Gruppe mir sagen wird, dass es nicht empfohlen ist, Befehl zu verwenden, aber in ersten Armen, Ich habe keinen besonderen Anspruch, 100% treu der Sprache zu sein.Esempio1.jpgdie, die ich in rot markierte, sollten die Werte sein, die durch das Programm eingefügt werden sollten, aber an seiner Stelle komme ich aus diesem Schreiben heraus:Esempio2.jpgIch weiß nicht, welche Parameter sich ändern sollen.
 
überarbeitet und korrekt
(defunc c:altimetric ()
(Setvar "cmdecho" 0)
(setq ps (getpoint "\point pro Zeile der Schreibpunkte:"))
(setq p0 (getpoint "\report rate for berechnen:"))
(setq htesto 2)
(sing)
(setq pt (getpoint "\point zu messen:"))
(setq y (- (cadr pt) (cadr p0))
(setq p1 (list (car pt) (cadr ps)))
(Befehl "_text" "_j" p1 htesto 90 (Strcat (rtos y 2 0)))
)
)

Apropos Befehl, die Methode zu verwenden ist, was Ihnen am meisten passt, in Ihrem Fall ist es gut.
Bye
 
Ich habe die richtigen Zeilen hinzugefügt und die falschen deaktiviert:
Code:
(defunc c:altimetric ()
(Setvar "cmdecho" 0)
(setq ps (getpoint "\point pro Zeile der Schreibpunkte:"))
(setq p0 (getpoint "\report rate for berechnen:"))
(setq htesto 2)
(sing)
(Repeat 1)
(setq pt (getpoint "\point zu messen:"))
 [COLOR="#FF0000"](Cadr pt) [B]rechte Klammern im Überschuss[/B][/COLOR](setq y (- (cadr pt) (cadr p0))
(setq p1 (list (car pt))
 [COLOR="#FF0000"];(Befehl "_text" "_j" "_m" p1 htesto 90 (Strcat (rtos y 2 0)") [B]senden ist redundant[/B][/COLOR](Befehl "_text" "_j" "_m" p1 htesto 90 (Strcat (rtos y 2 0)))
)
)
(princ) [COLOR="#FF0000"]; [B]sauberer Ausgang ohne Nil[/B][/COLOR])
wenn Sie wollen, dass das Verfahren wiederholen Sie den "Punkt zu messen" bis zum nächsten Senden können Sie die (erneut 1wenn stattdessen ein solcher Punkt immer ein war, können Sie es entfernen (while) du (erneut 1edit: Ich war vor :smile:
 
Code:
(defunc c:altimetric ()
(Setvar "cmdecho" 0)
(setq ps (getpoint "\point pro Zeile der Schreibpunkte:"))
(setq p0 (getpoint "\report rate for berechnen:"))
(setq htesto 2)
 [COLOR=#ee82ee][B](while)[/B][/COLOR]
       [COLOR=#0000ff][B](erneut 1[/B][/COLOR](setq pt (getpoint "\npoint of misurare:")
(setq und (-) (cadr pt) (cadr p0)[COLOR=#ff0000][B])[/B][/COLOR](setq p1 (list (car pt) (cadr ps)))
(Befehl "_text" "_j" "_m" p1 htesto 90 (Strcat (rtos y 2 0)")
 [B][COLOR=#0000ff])[/COLOR][/B]
     [B][COLOR=#ee82ee])[/COLOR][/B] )
roter Bügel ist übertrieben.
Ich verstehe nicht die Verwendung eines während des bedingten Zyklus und vor allem wiederholen=1 wiederholen. Wiederholen sollte verwendet werden, um die gleiche Sequenz mehrmals zu wiederholen, wiederholt es 1 Mal ist nur Codekomplikation.

edit: tell me:redface:! alle zu beobachten ist Diskussion?? :wink:
 
In der Zwischenzeit Ich danke allen für die Geschwindigkeit, mit der Sie reagiert haben.
um auf Kristall zu reagieren, ist Wiederholung redundant, aber wenn ich die Funktion geschrieben und versuchte, bemerkte ich, dass die während Zyklus "nur" die ersten beiden Linien durchgeführt. offensichtlich verpasste eine T sofort nach dem Befehl, so dass ich die Wiederholung auf offensichtliche, Fehler der Unerfahrenheit mit dieser Sprache eingeführt.
 

Statistik des Forums

Themen
58.521
Beiträge
499.056
Mitglieder
104.110
Neuestes Mitglied
ChristianR

Zurzeit aktive Besucher

Keine Mitglieder online.
Zurück
Oben