Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  princ Koordinaten bis zur Auswahl

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:  princ Koordinaten bis zur Auswahl (1897 mal gelesen)
cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

Windows 10
64bit system
Autocad Civil3d 2020 ENGLISH
Visual Studio 2019
OpenDCL.Runtime.9<P>

erstellt am: 05. Nov. 2014 09:38    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!
Ich habe die Aufgabe mittels einer while-Schleife zu testen, ob ein Eingabe gewählt wurde.
Solange dies nicht geschieht möchte ich fortlaufen Koordinaten in der Kommandozeile ausgeben.
Mein Ansatz ist der (funktioniert nicht im Test)
Code:
(while (setq q (getstring "\nVälj nästa punkt [Välj punkthöjd/höjdNivå/Lutning/Avstånd/Höjd&lutning]: "))
  (SETQ drag (grread t 4 0))
  (cond
    ((null q)(princ (strcat "\n " (vl-princ-to-string (cadr drag))))
    )
    ((and q)(princ q)
    )
    )
  )

Hat jemand eine bessere Idee

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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

gmk
Mitglied
Dipl.-Ing.(FH) Vermessung


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

Beiträge: 667
Registriert: 23.10.2002

Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM

erstellt am: 05. Nov. 2014 10:13    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 cadplayer 10 Unities + Antwort hilfreich

Servus Dirk!

Schon mal probiert?

WHILE (NOT(SETQ q.....

Ciao Georg

------------------
http://www.xxx-tausend.info

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 05. Nov. 2014 10:58    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 Georg, hat nicht funktioniert
Bin jetzt etwas weitergekommen. Die Abfrage funktioniert zwar wenn ich Tasten entspr. der angegeben Grossbuchstaben im Menu wähle.
In Acad gibt es aber auch die Möglichkeit, die Auswahl in der Kommandozeile zu treffen(anklicken des Wahlwortes). Allerdings gibt mir (cadr drag) dann immer -1 zurück, wie kann man das einbauen ?
Code:
(defun c:test()
  (while (princ "\nVälj referenz punkt [Välj punkthöjd/höjdNivå/Lutning/Avstånd/Höjd&lutning]: ")
    (setq drag (grread t 4 0))
    (if (= (type (setq a (cadr drag))) 'LIST)
      (princ (strcat "\n" (vl-princ-to-string a)))
      (cond
        ((= a 118)
         (alert "Välj punkthöjd")
         )
        ((= a 110)
         (alert "höjdNivå")
         )
        ((= a 108)
         (alert "Lutning")
         )
        ((= a 97)
         (alert "Avstånd")
         )
        ((= a 104)
         (alert "Höjd&lutning")
         )
        )
      )
    )
  )

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

[Diese Nachricht wurde von cadplayer am 05. Nov. 2014 editiert.]

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 05. Nov. 2014 11:26    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 cadplayer 10 Unities + Antwort hilfreich

reicht dir nicht das ? Koordinaten bekommst du doch in der Statuszeile angezeigt

(defun MYGETPOINT (/ RETURN)
  (initget "A1 B2 C3")
  (setq RETURN(getpoint "\n Wahl [A1 / B2 / C3]: "))
  (cond
    ((= RETURN "A1")(alert "A1"))
    ((= RETURN "B2")(alert "B2"))
    ((= RETURN "C3")(alert "C3"))
    ((and(=(type RETURN)'LIST)(numberp (car RETURN)))(alert (vl-princ-to-string RETURN)))
    ('T (alert "Nichts"))   
  ) 
)

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 05. Nov. 2014 11:58    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

Nein leider nicht ganz, weil ich die Auswahlfunktion innerhalb einer grread-Schleiife benötige
In dem Film werden mir Gefälle und Strecke "dynamisch" angezeigt.
Jetzt möchte ich mit der Auswahlzeile weitere Änderungen vornehmen, die sich gleich in der Cursoranzeige auswirken.

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

Windows 10
64bit system
Autocad Civil3d 2020 ENGLISH
Visual Studio 2019
OpenDCL.Runtime.9<P>

erstellt am: 05. Nov. 2014 16:22    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

Zum Weiterverfolgen mal hier geschaut

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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

Meldin
Mitglied



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

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 06. Nov. 2014 08:58    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 cadplayer 10 Unities + Antwort hilfreich

Wohl kaum (

------------------
Gruß Wolfgang

Alias: Rabbit007 und Wolli1

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 06. Nov. 2014 11:03    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

Dann muss ich damit leben. Ich find´s ja Wahnsinn was man mit grread alles so anstellen kann. Mittlerweile blicke ich mit deiner/eurer Hilfe mehr durch. Es ist aber sehr komplex das Thema

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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

Meldin
Mitglied



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

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 06. Nov. 2014 11:06    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 cadplayer 10 Unities + Antwort hilfreich

Du solltest mal die grread Einstellungen t 4 0 ändern dann solltest du auf deine Lösung kommen, und dann nicht und dann nicht a kontrollieren sondern drag.

------------------
Gruß Wolfgang

Alias: Rabbit007 und Wolli1

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 06. Nov. 2014 14: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

Sorry Wolfgang, seh den Wald vor Bäumen nicht. Egal welche Zahl ich mit der Maus anklicke, ich erhalte immer (11 -1) zurück und weiss nicht was das zu bedeuten hat.
Code:
(progn
  (princ "\nTake a choice! [1/2/3/4]: ")
  (while (setq code_12 (grread (setq code (grread))))
    (princ (strcat "\t" (vl-princ-to-string code)))
    (princ (strcat " " (vl-princ-to-string  code_12)))
    )
  )

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

Windows 10
64bit system
Autocad Civil3d 2020 ENGLISH
Visual Studio 2019
OpenDCL.Runtime.9<P>

erstellt am: 06. Nov. 2014 14:46    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

11... AUXmenu item ???

-1 steht nicht in der Hilfe ?!

[Diese Nachricht wurde von cadplayer am 06. Nov. 2014 editiert.]

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

Meldin
Mitglied



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

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 07. Nov. 2014 08:49    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 cadplayer 10 Unities + Antwort hilfreich

Ich verstehe nicht ganz welche Zahl und wo du diese anklicken willst.

------------------
Gruß Wolfgang

Alias: Rabbit007 und Wolli1

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

cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 07. Nov. 2014 10:22    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

Code:
(progn
  (princ "\nTake a choice! [1/2/3/4]: ")
  (while (setq code (grread))
    (princ (strcat "\t" (vl-princ-to-string code)))
    )
  )

Hi Wolfgang!
wenn du das Schnipsel laufen lässt, erscheint die simple princ-Meldung in der Befehlszeile. Bis in die Acad2012version war es nur möglich an meinem Beispiel 1 - 2 - 3 oder 4 per Tastatur zu wählen.
Ab der 2013version ist es ausserdem möglich, nicht nur die Kürzel über die Tastatur einzugeben sondern auch mit Hilfe der Maus in der Befehlzeile anzuklicken.

Wenn du Thomas seinen Code testest funktioniert das. Seine Anweisungsen sind aber mit get-XXX funktion definiert, sodass es möglich ist beides mit Tastatur oder Maus zu wählen.
Nehme ich aber grread als Eingabefunktion her, bleibt es ausgeschlossen mit Maus die Kürzel anzuklicken. Denn da erhalte ich als Rückgabe bei allen 4 Wahlmöglichkeiten nur (11 -1) zurück. Meiner Meinung nach, müsste da mal die grread-funktion überarbeitet werden ?!

[Diese Nachricht wurde von cadplayer am 07. Nov. 2014 editiert.]

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: 11. Nov. 2014 11:12    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 cadplayer 10 Unities + Antwort hilfreich


AcShowCoordinates.zip


screnshot.gif

 
Hallo Dirk,

an deinen Aufgabenstellungen merkt man, dass gerade die Lisp-Funktionen der Interaktion mit dem Anwender überholt sind - bzw. eine Anpassung an die nun vorhandenen Möglichkeiten erfahren müssten.

Anbei eine Lisp und .Net-Funktion die miteinander im Zusammenhang stehen.
In der .Net-Funktion wird die Interaktion mit dem User gemacht: Text am Mauszeiger ausgegeben und Ausgabe der aktuellen (mit der Maus) überfahrenen Koordinaten auf dem Bildschirm.
Was ausgegeben wird, wird durch die Lispfunktion bestimmt, denn ein Übergabeparamter an die .Net-Funktion bestimmt, welche Lisp-Funktion zur Festlegung des Ausgabetextes am Mauszeiger verwendet werden soll.

Am besten die dll mit NETLOAD, die lsp-Dtei mit APPLOAD laden und dann den Befehl: AcGetTest aufrufen.

Auch wenn der Lisp-Code undokumentiert ist, sollte sich dieser jedem erschließen.

Ein  Hinweis noch: die von .Net aus aufgerufenen Lisp-Subroutinen müssen mit c: definiert werden, sonst sind diese nicht (so leicht) ansprechbar.

Feedback herzlich willkommen.

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!


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



Flächen- und Raummanager*in und stellvertretende Leitung des Technischen Dienstes (w/m/d)

Die Technische Hochschule Ulm ist eine interdisziplinär und international aktive Technische Hochschule der Wissenschaftsstadt Ulm. In sechs Fakultäten sowie 18 Bachelor- und 10 Masterstudiengängen mit rund 3.500 Studierenden widmen sich die Professorinnen und Professoren der wissenschaftlichen Ausbildung, Weiterbildung und der angewandten Forschung.

Im Technischen Dienst der Technischen ...

Anzeige ansehenTeamleitung, Gruppenleitung
cadplayer
Ehrenmitglied
CADniker


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

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 25. Nov. 2014 19:50    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 Holger!
Ich bin schwer beeindruckt, wie gediegen dein tool funktioniert. Gibt mir Ansporn und Motivation den Weg weiterzuverfolgen. (auch wenn die Früchte noch sehr hoch hängen)

Ich habe es in version 2014 getestet, da bekam ich bei koord.Anzeigen sowohl am Cursor, als auch in der linken unteren Bildschirmecke.
Bei version 2012 gab es keine Cursoranzeige, ich weiss nicht ob das so beabsichtigt war von dir.
Vielleicht hast du es auch bemerkt, sobald man einen Punkt mit OFANG ansteuert, wird immernoch die CursorCoodinate angezeigt. Ist das so beabsichtigt.
Einen Wunsch hätte ich noch gern gehabt, wenn es möglich ist, denn das war meine ursprüngliche Frage: ob man hier noch eine Menüsteuerung vornehmen kann. Beispielsweise, dass ich vom CoordinatenAnzeigemodus in den Streckenmodus mit Tastatur und Maus in der Commandzeile umstellen kann ?!
Achso und der Textstyle bei der ScreenAnzeige in der Fensterecke kommt ziehmlich schräg rüber bei mir (schwer lesbar!) ist aber ne Kleinigkeit 

Ansonsten super gemacht!

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

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