| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: grvecs + TransMatrix im UCS (573 mal gelesen)
|
reltro Mitglied student
Beiträge: 125 Registriert: 08.11.2009 Acad 2012 - VBA,Lisp Revit 2012 3dsMax 2012 Rhino 5 - GH,Pyhton 3,rhino.Common<P>Win 7 - i7 4x3.2GHz - 8Gb DDR3
|
erstellt am: 21. Mrz. 2013 20:03 <-- editieren / zitieren --> Unities abgeben:
Hallo Lispler... Habe das Problem dass ich gerne mittels (grvecs ...) einige linien Zeichnen möchte, was auch nicht das Problem darstellt. das Problem ist die Transformationmatrix für grvecs in einem UCS.
Code: ( (lambda (ang V / ) (list (list (cos ang)(* (sin ang) -1) 0 (car V)) (list (sin ang)(cos ang) 0 (cadr V)) (list 0 0 1 (caddr V)) (list 0 0 0 1) ) ) RotationsWinkel_rad TranslationsVektor )
Habe jetzt so einiges ausprobiert nur leider hab ich keine Möglichkeit gefunden: - trans in alle möglichen Richtungen - ucsXdir/ucsYdir - ucsorg Wäre sehr froh wenn mir jemand helfen könnte und einen Anstoß geben könnte... Grüße Reltro Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Konstrukteur, Techniker, Technischer Produktdesigner (m/w/d) | ROHRE, FORMTEILE UND SONDERANFERTIGUNGEN MIT SYSTEM
Wir sind ein modernes Familienunternehmen, 1986 gegründet und mit heute über 230 Mitarbeitenden sowie zahlreichen Repräsentanzen im In- und Ausland tätig. Als bedeutender Hersteller von Rohren, Rohrformteilen und Verteilersystemen liefern wir ein umfassendes Produktportfolio und im Sonderbau sind wir die Nr. 1 am Markt. Unsere Unternehmenskultur ist von Nähe, Offenheit und Freundlichkeit geprägt.... | Anzeige ansehen | Konstruktion, Visualisierung |
|
reltro Mitglied student
Beiträge: 125 Registriert: 08.11.2009 Acad 2012 - VBA,Lisp Revit 2012 3dsMax 2012 Rhino 5 - GH,Pyhton 3,rhino.Common<P>Win 7 - i7 4x3.2GHz - 8Gb DDR3
|
erstellt am: 22. Mrz. 2013 11:29 <-- editieren / zitieren --> Unities abgeben:
Hab einen Teil des Problems inzwischen selbst gelöst... Folgendes funktioniert wenn das UCS gesetzt wurde, wobei UCSFOLLOW = 0 war. das Fadenkreuz ist somit "gedreht". Wenn ich UCSFOLLOW aber auf 1 hatte, und somit der Display gedreht wurde, passiert aus meiner logik her etwas sehr seltsames. Kann das vielleicht jemand testen und mir einen Anstoß geben? wäre sehr dankbar. Code:
(defun _grvecs (vecs rotation_z translation_xy scale_xyz / ) (grvecs vecs ( (lambda (ang V scale / xDir) (setq xDir (angle '(0 0 0) (getvar 'ucsxdir)) V (mapcar '+ ((lambda (a / ) (list (- (* (cos a) (car V)) (* (sin a) (cadr V))) (+ (* (sin a) (car V)) (* (cos a) (cadr V))) 0 ) ) xDir ) (trans '(0 0 0) 1 0) ) ang (+ xDir ang) ) (list (list (* (cos ang) (car scale))(* (sin ang) -1) 0. (float (car V))) (list (sin ang)(* (cos ang) (cadr scale)) 0. (float (cadr V))) (list 0. 0. (* 1. (caddr scale)) 0.) (list 0. 0. 0. 1.) ) ) (if rotation_z rotation_z 0 ) (if translation_xy translation_xy '(0 0 0) ) (if scale_xyz scale_xyz '(1 1 1) ) ) ) )
Grüße reltro
[Diese Nachricht wurde von reltro am 22. Mrz. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|