Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  punkt oder variable

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  punkt oder variable (1112 mal gelesen)
GG-GREGOR
Mitglied
CAD - KONSTR.


Sehen Sie sich das Profil von GG-GREGOR an!   Senden Sie eine Private Message an GG-GREGOR  Schreiben Sie einen Gästebucheintrag für GG-GREGOR

Beiträge: 79
Registriert: 04.09.2002

SW.
ACAD 2010
ACAD Map 3D 2006
Solid Works 2010
Cinema 4D
Max 3D<P>HW.
mix

erstellt am: 01. Okt. 2002 00:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo

möchte gerne ein programm erstellen womit ich einiges erleichtere.
auswahl: punkt oder M
wie kann ich das vereinen oder trennen ?
(SETQ A (GETPOINT "\nPUNKT 1")) für punkt
(SETQ B (FIX (GETREAL "\nM"))) für einen ganz zahl zum eingeben ?

"nächster punkt oder M" bei "M" sollte eine ganz zahl zum eingeben sein. bei enter sollte "M" den alten wert übernehmen und der punkt 1 abgefragt werden.

wie löse ich das problem ?

mfg   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bernd Cuder
Mitglied
Selbständig


Sehen Sie sich das Profil von Bernd Cuder an!   Senden Sie eine Private Message an Bernd Cuder  Schreiben Sie einen Gästebucheintrag für Bernd Cuder

Beiträge: 692
Registriert: 10.07.2002

erstellt am: 01. Okt. 2002 01:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Wenn ich es richtig verstanden habe möchtest du einen
Punkt abfragen, alternativ dazu die Eingabe eines Wertes
zulassen?

Nun, wenn du eine Punkt abfragst und der User einen
Wert eingibt berechnet AutoCAD einen neuen Punkt
unter Winkel <Letzter Punkt zu Fadenkreuzzentrum> mit
eingegeben Abstand.

Also geht beides nicht, die Lösung ist offensichtlich
nur durch ein Keyword zu lösen:

Punkt eingeben oder [Abstand]:

oder

Abstand eingeben oder [Punkt]:

jenachdem wo die Priorität liegt.

Wenn du für Abstand bereits einen Wert besitzt
solltest du in anzeigen un als Vorgabe (Leereingabe)
anbieten:

Punkt eingeben oder [Abstand] <12.45>:

(Siehe Befehl VERSETZ)

Zum Abschluß, warum (FIX (GETREAL "\nM")) ?

Du fragst nach einer Realzahl, schneidest aber die
Nachkomma ab? Warum nicht gleich GETINT?
(FIX schneidet die Nachkomma ab ohne zu runden,
GETINT rundet die Eingabe)


------------------
Bernd Cuder
Cad&Co makes CAD easy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bernd Cuder
Mitglied
Selbständig


Sehen Sie sich das Profil von Bernd Cuder an!   Senden Sie eine Private Message an Bernd Cuder  Schreiben Sie einen Gästebucheintrag für Bernd Cuder

Beiträge: 692
Registriert: 10.07.2002

erstellt am: 01. Okt. 2002 01:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Meine Lisp Zeiten sind lange her aber
hier ein Bsp. Abfrage mit Keyword:

(initget 2 "Abstand")
'' 2 bedeutet keine 0 Eingabe
(setq Point (getpoint "Punkt eingeben oder [Abstand] <45>: "))

Jetzt prüfen was in Point steht, ein Punkt oder "Abstand" oder
Leer?

Ich wünschte in ARX wärs so einfach :-)

------------------
Bernd Cuder
Cad&Co makes CAD easy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

GG-GREGOR
Mitglied
CAD - KONSTR.


Sehen Sie sich das Profil von GG-GREGOR an!   Senden Sie eine Private Message an GG-GREGOR  Schreiben Sie einen Gästebucheintrag für GG-GREGOR

Beiträge: 79
Registriert: 04.09.2002

SW.
ACAD 2010
ACAD Map 3D 2006
Solid Works 2010
Cinema 4D
Max 3D<P>HW.
mix

erstellt am: 01. Okt. 2002 08:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

danke Bernd

ausgabe:
Punkt1 oder M:

bei enter sollte er den punkt abfragen .
bei "M" soll er mir einen anderen abschnitt im programm abfragen und ausfüren .

eingabemöglichkeiten punkt oder M

wie löse ich das ?

mfg

Gregor

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



Sehen Sie sich das Profil von marc.scherer an!   Senden Sie eine Private Message an marc.scherer  Schreiben Sie einen Gästebucheintrag für marc.scherer

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 01. Okt. 2002 09:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Hi Gregor,
hier ein Beispiel:
Code:

(defun test (/ RETVAL)
  (initget 9 "optionA optionB")
  (setq
    retval (getpoint
             "\nPunkt eingeben oder Option wählen [optionA/optionB]: "
           ) ;_ end of getpoint
  ) ;_ end of setq
  (cond
    ((= retval "optionA") (setq retval (subfunction-a)))
    ((= retval "optionB") (setq retval (subfunction-b)))
    (T) ;_ ansonsten tue nix
  ) ;_ end of cond
  retval
) ;_ end of defun

(defun subfunction-a ()
  "Ausführung von A"
) ;_ end of defun

(defun subfunction-b ()
  "Ausführung von B"
) ;_ end of defun


Zu Deinem: "bei "M" soll er mir einen anderen abschnitt im programm abfragen und ausfüren"

Das "riecht" nach einem "GoTo" Befehl... Gibt es in Lisp nicht, ist auch nicht nötig. Mußt Du mit z.B. einer Subfunktion lösen...

------------------
Ciao,
Marc

[Diese Nachricht wurde von marc.scherer am 01. Oktober 2002 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 04. Okt. 2002 08:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Servus

Hole Dir das Programm edline.lsp von http://www.industrie24.com/ftp.php?31

Es enthält viele solche Verzweigungen, vielleicht nützt es Dir als Beispiel.

Gruß, Ernst

------------------
ACAD 2000

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 25. Nov. 2002 14:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von marc.scherer:
Code:

(defun test (/ RETVAL)
  (initget 9 "optionA optionB")
  (setq
    retval (getpoint
             "\nPunkt eingeben oder Option wählen [optionA/optionB]: "
           ) ;_ end of getpoint
  ) ;_ end of setq
  (cond
    ((= retval "optionA") (setq retval (subfunction-a)))
    ((= retval "optionB") (setq retval (subfunction-b)))
    (T) ;_ ansonsten tue nix
  ) ;_ end of cond
  retval
) ;_ end of defun

(defun subfunction-a ()
  "Ausführung von A"
) ;_ end of defun

(defun subfunction-b ()
  "Ausführung von B"
) ;_ end of defun



wieder was gelernt !
hierzu noch mal eine frage...
funktioniert das auch mit Blockabfrage ???
also mittels dieser "Control Bits " (XX.. 9) und cond ??
Bsp.
script fragt nach einem AT-Block, oder der Anwender soll darauf picken. (Abfangfunktion wenn AT-Block mehrfach vorh. ist)

und wie bist du auf 9 gekommen ?? habe die tabelle in der onlinehilfe mir angesehen, aber 9 taucht da nicht auf...

wartend auf feedback... :-)

------------------
Grüße aus dem Rheingau.
Rolf aka Benwisch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Brischke
Moderator
CAD on demand GmbH




Sehen Sie sich das Profil von Brischke an!   Senden Sie eine Private Message an Brischke  Schreiben Sie einen Gästebucheintrag für Brischke

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 25. Nov. 2002 17:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

Hallo Rolf,

die Werte der Initget-Optionen lassen sich durch Addition kombinieren.
in diesem Fall besteht die 9 aus der Option
1 - Leereingabe nicht erlaubt
und
8 - Limitenbegrenzung ausschalten

Das ist z.B. auch bei dem Objektfang so.

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
CADlon - Lisp over night

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 25. Nov. 2002 19:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GG-GREGOR 10 Unities + Antwort hilfreich

n'Abend Holger,

vielen Dank für die Antwort....bin schon am probieren..studieren..testen ;-)

------------------
Grüße aus dem Rheingau.
Rolf aka Benwisch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz