Hallo an Alle,
ich sitze gerade vor Java3D und mein mathematisches Verständnis will einfach nicht verstehen warum Java3D so etwas macht. Ich habe eine Figur F die ich bewegen und rotieren möchte. Daher habe ich folgendes erschafen
Bis hierhin ist auch alles in ordnung. Erst drehe ich das Objekt um die Y Achse mit 60° und anschließend verscheibe ich es um -1f in der Zebene. Nun habe ich folgendes geändert
Jetzt verschiebe ich erst um -1f in der Z-Ebene und dan rotiere ich die Y Achse.
Und hier komme ich nicht klar es kommt bei beiden das gleiche raus!!!
Und das macht für mich kein sinn! Es ist doch ein unterschied ob ich erst verschiebe und dan rotiere oder halt anders herrum!!!
Kann mir das bitte einer erklären????
Danke Gruß tntbc
ich sitze gerade vor Java3D und mein mathematisches Verständnis will einfach nicht verstehen warum Java3D so etwas macht. Ich habe eine Figur F die ich bewegen und rotieren möchte. Daher habe ich folgendes erschafen
Code:
erdeTransform3D.setRotation(new AxisAngle4d(0f,1f,0f,Math.toRadians(60)));
erdeTransform3D.setTranslation(new Vector3f(0f,0f,-1f));
Bis hierhin ist auch alles in ordnung. Erst drehe ich das Objekt um die Y Achse mit 60° und anschließend verscheibe ich es um -1f in der Zebene. Nun habe ich folgendes geändert
Code:
erdeTransform3D.setTranslation(new Vector3f(0f,0f,-1f));
erdeTransform3D.setRotation(new AxisAngle4d(0f,1f,0f,Math.toRadians(60)));
Und hier komme ich nicht klar es kommt bei beiden das gleiche raus!!!
Und das macht für mich kein sinn! Es ist doch ein unterschied ob ich erst verschiebe und dan rotiere oder halt anders herrum!!!
Kann mir das bitte einer erklären????
Danke Gruß tntbc