| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: BKS an Spline ausrichten (1718 mal gelesen)
|
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6050 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 02. Jun. 2013 16:05 <-- editieren / zitieren --> Unities abgeben:
Hallo, Gibt es in AutoCAD eine Möglichkeit, ein BKS so am Endpunkt einer Spline zu definieren, daß die XY-Ebene exakt (!) senkrecht zur Kurve liegt. Momentan behelfe ich mir mit der Option ZAchse und wähle für die Richtung der Z-Achse mit näc (_nea) einen Punkt sehr nahe am Endpunkt, wo der durch die Krümmung der Spline verursachte Fehler noch (hoffentlich) vernachlässigbar klein ist. Geht das auch genau? Jürgen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd P Ehrenmitglied V.I.P. h.c. cook-general
Beiträge: 3358 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 03. Jun. 2013 10:44 <-- editieren / zitieren --> Unities abgeben: Nur für jupa
hm, 2013 kann die Spline versetzen eine Linie zwischen den Endpunkten sollte normal zu den Splinien sein. ------------------ <----- Bitte Systeminfo eintragen, warum siehst du hier. "Warum Einfach es geht auch kompliziert". Schöne Grüsse aus der Steiermark Bernd P. Sport ist Mord Rekorde: Scalelist>11727, Fehler>34365, Layerfilter>XXXX Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6050 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 03. Jun. 2013 11:35 <-- editieren / zitieren --> Unities abgeben:
|
scj Mitglied
Beiträge: 554 Registriert: 09.08.2001
|
erstellt am: 03. Jun. 2013 12:29 <-- editieren / zitieren --> Unities abgeben: Nur für jupa
Mit vlax-curve-GetFirstDeriv sollte es gehen: Code: (defun C:Splinanst (/ pt) (vl-load-com) (setq abl (vlax-curve-GetFirstDeriv splin-obj (vlax-curve-GetStartParam (vlax-ename->vla-object (car (entsel "\nSpline wählen:")) ) ) ) ) ;; (setq fak 100) (setq pt (car (list (strcat "@" (rtos (* fak (car abl))) "," (rtos (* fak (cadr abl))))))) (command "_Line" (vlax-curve-GetStartPoint splin-obj) pt "") ;; abl )
Beste Grüße JochenEine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6050 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 03. Jun. 2013 13:12 <-- editieren / zitieren --> Unities abgeben:
Sieht auf den ersten Moment vielversprechend aus, funktioniert aber leider noch nicht. Trotzdem schon mal danke. Bereits die Zuweisung zu abl liefert die Fehlermeldung "Fehler: kann ObjectID nicht abrufen: nil". Muß ich mich heute Abend wohl doch mal näher mit diesem vlax-Zeugs beschäftigen. Jürgen Zusatzüberlegung: Was macht dann eigentlich der Sweep-Befehl für einen Sinn, wenn man nicht in der Lage ist, mit einfachen Bordmitteln ein Profil senkrecht auf das Ende eines Splinepfades zu stellen? (Ich frage bewußt nicht, wozu der ganze 3D-Krimskrams in AutoCAD im praktischen Einsatz außerhalb eines Unterrichtsraumes überhaupt gut sein soll).
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
scj Mitglied
Beiträge: 554 Registriert: 09.08.2001
|
erstellt am: 03. Jun. 2013 14:16 <-- editieren / zitieren --> Unities abgeben: Nur für jupa
Tut mir leid, habe beim "Codeverdichten" was falsch gemacht... Code: (defun C:Splinanst () (vl-load-com) (setq splin-obj (vlax-ename->vla-object (car (entsel "\nSpline wählen:")) ) ) (setq abl (vlax-curve-GetFirstDeriv splin-obj (vlax-curve-GetStartParam splin-obj) ) );; (setq fak 100) (setq pt (car (list (strcat "@" (rtos (* fak (car abl))) "," (rtos (* fak (cadr abl))))))) (command "_Line" (vlax-curve-GetStartPoint splin-obj) pt "") ;; abl )
Besser so? Beste Grüße JochenEine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6050 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 03. Jun. 2013 14:45 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von scj:
Besser so?
Klappt super bei 2D-Splines. Leider aber nicht mehr, sobald sie sich in die dritte Dimension erstrecken. Also, wenn Du noch ein weiteres Säckchen voll Üs brauchen kannst ... ;-) hofft Jürgen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
scj Mitglied
Beiträge: 554 Registriert: 09.08.2001
|
erstellt am: 03. Jun. 2013 15:02 <-- editieren / zitieren --> Unities abgeben: Nur für jupa
Na gut, dann wohl so: Code: (defun C:Splinanst () (vl-load-com) (setq splin-obj (vlax-ename->vla-object (car (entsel "\nSpline wählen:")) ) ) (setq abl (vlax-curve-GetFirstDeriv splin-obj (vlax-curve-GetStartParam splin-obj) ) );; (setq fak 100) (setq pt (car (list (strcat "@" (rtos (* fak (car abl))) "," (rtos (* fak (cadr abl))) "," (rtos (* fak (caddr abl)) )))) ) (command "_Line" (vlax-curve-GetStartPoint splin-obj) pt "") ;; abl )
Aber jetzt muss ich Rasen mähen - es regnet gerade nicht... Beste Grüße JochenEine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6050 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 03. Jun. 2013 16:33 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von scj:
Na gut, dann wohl so: ...
Klappt alles bestens. Diese letzte Änderung hätte ich zwar bei bißchen genauer hingucken auch selber hinbekommen müssen, aber - bin auf diesem Gebiet eben leider noch absoluter Nichtswisser. Nochmals vielen Dank. ... und laß Deinen Rasen nicht unkontrolliert in die Höhe schießen ;-)
Jürgen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |