| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Erzeugen von Regeloberflächen (495 mal gelesen)
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 Manchmal AC 2011
|
erstellt am: 02. Feb. 2008 09:57 <-- editieren / zitieren --> Unities abgeben:
Wenn ich in einer Zeichnung 2 Objekte, z.B. Bogen und Linie, erstellt habe, diese per Selectionset (ss) mit dem Befehl Regelob auswähle, bekomme ich nicht immer die gewünschte Form. Mache ich es von Hand, muss ich nahe den jeweils zusammengehörenden Enden anklicken. Meine Frage ist: Wie kann ich es in einer LISP (mit ss) formulieren, dass ich das gewünscht Ergebnis bekomme? ------------------ strukturiertes Zeichnen mit www.Werner-Maahs.de
[Diese Nachricht wurde von Werner-Maahs.de am 03. Feb. 2008 editiert.] 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: 02. Feb. 2008 12:16 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
Hallo Werner, Du übergibts an den Command-Aufruf nicht nur die Objekte, sondern Listen wie sie z.B. entsel zurückgeben (OBJ pkt) Wie Du dann aber Anfangs- oder Endpunkt bestimmts mußt Du Dir selber überlegen. Code:
(command "Regelob" (list Obj_1 (cdr(assoc 10 (entget obj_1))));;;oder 11 Endpunkt (list Obj_2 (polar (cdr(assoc 10 (entget Obj_2))) (cdr(assoc 50 (entget Obj_2)));;;oder 51 für Winkel am Endpunkt (cdr(assoc 40 (entget Obj_2))))))
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 Manchmal AC 2011
|
erstellt am: 03. Feb. 2008 13:36 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, danke für Deine Antwort! Allerdings glaube ich, dass sie nicht das ist was ich wollte. Bei Deinem Lösungsansatz wird m.E. ein Punkt herausgegeben. Ich wollte aber eine Objekt wählen. Der Grund liegt darin, weil meine Routine auch mit einer komplexen Zeichnung umgehen soll und nicht das vermeintlich zuletzt gezeichnete Objekt an der gewählten Stelle wählt. Zudem müsste m.E. für die 'polar ...'-Eingabe auch das BKS auf das gewählte Objekt ausgerichtet werden. Wenn es keine andere Lösung gibt, stellt dies aber auch kein Problem dar. ------------------ strukturiertes Zeichnen mit www.Werner-Maahs.de 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: 03. Feb. 2008 19:13 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
Hallo Werner, Zitat:
Bei Deinem Lösungsansatz wird m.E. ein Punkt herausgegeben. Ich wollte aber eine Objekt wählen.
Das verstehe ich nicht ganz, Du willst doch dem Command-Befehl "regelob" 2 Objekte übergeben. Zudem müssen diese Objekte die Information über den Pickpunkt haben, damit das Ergebnis ordentlich erstellt werden kann. Ich habe der Funktion jetzt pro Objekt eine Liste übergeben, wie sie sonst ENTSEL zurückgibt. Wenn Du im BKS arbeitest, dann mußt Du noch ein TRANS mit einbauen: Code:
(command "Regelob" (list Obj_1 (trans(cdr(assoc 10 (entget obj_1)))0 1));;;oder 11 Endpunkt (list Obj_2 (trans (polar (cdr(assoc 10 (entget Obj_2))) (cdr(assoc 50 (entget Obj_2)));;;oder 51 für Winkel am Endpunkt (cdr(assoc 40 (entget Obj_2))))0 1)))
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 Manchmal AC 2011
|
erstellt am: 03. Feb. 2008 20:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, Danke nochmals für Deine Antwort. Ich kann es ja nur theoretisch ansprechen, da ich diesen Fall ja nur ausschließen möchte! Ich meine, dass wenn an dem spezifiziertem Punkt auch andere Objekte gezeichnet sind, ist die Objektwahl nicht mehr eindeutig. Der Befehl REGELOB ermöglicht an der Kommandozeile eine Seitenzuordnung durch die Objektwahl. Objekt und Seitenzuordnung kann ich durch optische Auswahl des Anklickpunktes eindeutig wählen. In Lisp wähle ich zwar das gewünschte Objekt (setq Obj (entlast)) vorher aus, übergebe dem Befehl REGELOB aber nur den dadurch ermittelten Punkt. Die Funktion TRANS ist dabei zwar wichtig aber nicht mein Problem. So beim Schreiben kommt mir gerade die Idee, statt der Objektwahl den Anklickpunkt mit OFang NÄC und (getpoint ...) sicher auszuwählen. Oder bin ich auf dem Holzweg? ------------------ strukturiertes Zeichnen mit Werner-Maahs Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 03. Feb. 2008 23:26 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
So wie Jörn es vorgeschlagen hat, ist es richtig - wie bei (ENTSEL) - einfach mal eingeben und testen. Es wird Pickpunkt UND Objektname übergeben, damit ist sowohl das Objekt als auch das zu wählende Ende eindeutig selektiert. ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 Manchmal AC 2011
|
erstellt am: 06. Feb. 2008 10:20 <-- editieren / zitieren --> Unities abgeben:
@Björn Danke für den Lösungsweg! Es hat nun auch bei mir geklappt! @Udo Vermutlich habe ich den Extraanstoss gebraucht, ich habe übersehen, dass ja 2 Parameter mit der Liste übergeben werden. Allerdings hatte ich nicht gewusst, dass dies überhaupt möglich ist. Ich werde allerdings bei meiner Idee bleiben, da ich in vorhandenen Zeichnungen ja selten den Anfangs- und Endpunkt eines Objekte kenne. Trotzdem hat dieser Thread mir und vielleicht auch anderen eine wichtige Information gebracht. Nochmals Danke! ------------------ strukturiertes Zeichnen mit Werner-Maahs Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |