| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Line mit festem Winkel -> AutoLisp (918 mal gelesen)
|
stoked Mitglied Student
Beiträge: 5 Registriert: 23.03.2006
|
erstellt am: 27. Nov. 2007 20:14 <-- editieren / zitieren --> Unities abgeben:
Hallo allerseits, ich habe ein Problem bei der Erstellung eines AutoLisp-Programms. Und zwar soll unter anderem eine Linie mit vorgegebenem Startpunkt, festem Winkel aber variabler Länge gezeichnet werden. Der Winkel bereitet mir Kopfschmerzen... Wie kann ich diesen bei einer Linie vordefinieren? In einem command funktioniert leider die temporäre Überschreibung (<45) nicht. Aber genau die wäre ansich perfekt für meine Zwecke! Weiß jemand woran's liegt? So hab ich es zB probiert:
Code: (command "_.line" pt1 "<45")
Vielen Dank schonmal!------------------ ;-------------------------------- (princ "Hello World!\n") ;-------------------------------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 ich hab eh keine Probleme damit...
|
erstellt am: 27. Nov. 2007 20:29 <-- editieren / zitieren --> Unities abgeben: Nur für stoked
|
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten
Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 - 2014 Arcibem System: Windows 2000, XP, NO VISTA Internet-Startseite: http://www.archi.de
|
erstellt am: 27. Nov. 2007 20:55 <-- editieren / zitieren --> Unities abgeben: Nur für stoked
Hi, also ich gehe davon aus, dass Du in pt1 bereits einen Punkt gespeichert hast. Dann könntest Du es so machen: Code: (command "_.line" pt1 (polar pt1 (/ pi 4) (getdist pt1 "Abstand:")) "")
Wenn Du lieber einen Text an den Command-befehl übergibst, dann muss der vollständig sein, also so etwa:Code: (command "_.line" pt1 (strcat "@" (rtos (getreal "Abstand:") 2 8) "<45") "")
Grüsse, Henning------------------ VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
stoked Mitglied Student
Beiträge: 5 Registriert: 23.03.2006
|
erstellt am: 27. Nov. 2007 21:01 <-- editieren / zitieren --> Unities abgeben:
Hey danke für die schnelle Antwort! Also der Beitrag hilft mir nicht direkt weiter, aber du hast mich auf eine andere Idee gebracht. Ich werd morgen mal versuchen ob es Sinn macht die Linie mit Rotate im passenden Winkel zu drehen und anschließend zu kürzen. Am liebsten wär mir halt die Methode mit der Winkelüberschreibung... Warum geht das denn in der Kommandozeile, aber nicht im command-Aufruf? Oder mach ich da etwas falsch?? edit: @ wronzky: Zitat: Wenn Du lieber einen Text an den Command-befehl übergibst, dann muss der vollständig sein...
Ich glaub da liegt der Hund begraben! Werd da mal bissl rumprobieren. Letztendlich soll halt der Winkel von einer Variable kommen. Den Startpunkt frag ich anfangs ab und hol ihn aus der pt1. ------------------ ;-------------------------------- (princ "Hello World!\n") ;-------------------------------- [Diese Nachricht wurde von stoked am 27. Nov. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
andi2050 Mitglied
Beiträge: 107 Registriert: 11.03.2003
|
erstellt am: 28. Nov. 2007 20:27 <-- editieren / zitieren --> Unities abgeben: Nur für stoked
Eine andere Idee: Eine Linie im gewünschen Winkel malen mit Länge 1.0 Dann die Line Skalieren. Der Skalierfktor entspricht dann der Länge. z.B. Code:
(defun c:test (/ pt ang) (setvar "cmdecho" 0) (setq pt (getpoint "\nStartpunkt: ")) (setq ang (getangle pt "\nWinkel: ")) (command "_LINE" "_non" pt (polar pt ang 1.0) "") (princ "\nLänge: ") (command "_SCALE" "_LAST" "" "_non" pt pause) )
Grüße Andi
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
stoked Mitglied Student
Beiträge: 5 Registriert: 23.03.2006
|
erstellt am: 28. Nov. 2007 20:50 <-- editieren / zitieren --> Unities abgeben:
Sodala.. Hab heute mal wieder bissl rumprobiert und es klappt ansich den Winkel vorzugeben. Lieber wär's mir halt, wenn der User wie bei der Winkelüberschreibung (oder Ortho) schon in der Gummiband-Voransicht der Linie nur die eine Richtung angezeigt bekommt und klicken kann. Naja mal schauen, werd nächste Woche weiter experimentieren. (Bin nur 2x die Woche am Lisplen - Werkstudent in einem Konstruktionsbüro.) Danke auch für den neuen Tipp mit der 1mm-Linie. Vielleicht hilft's weiter! Werd dann mal berichten. Was anderes fällt mir grad noch ein: Kann ich eigentlich von einer Linie direkt Start- und Endpunkt abfragen? ------------------ ;-------------------------------- (princ "Hello World!\n") ;-------------------------------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 29. Nov. 2007 07:23 <-- editieren / zitieren --> Unities abgeben: Nur für stoked
|