Dadas las siguientes definiciones para las matrices de rotación x, y, z, ¿cómo puedo representar esto como una matriz completa? Simplemente multiplique x, y, & matrices?¿Cómo representar una rotación de matriz 4x4?
X Rotación:
[1 0 0 0]
[0 cos(-X Angle) -sin(-X Angle) 0]
[0 sin(-X Angle) cos(-X Angle) 0]
[0 0 0 1]
Y Rotación:
[cos(-Y Angle) 0 sin(-Y Angle) 0]
[0 1 0 0]
[-sin(-Y Angle) 0 cos(-Y Angle) 0]
[0 0 0 1]
Z Rotación:
[cos(-Z Angle) -sin(-Z Angle) 0 0]
[sin(-Z Angle) cos(-Z Angle) 0 0]
[0 0 1 0]
[0 0 0 1]
Editar: tengo una clase rotación independiente que contiene un x, y , valor flotante z, que luego convierto en una matriz para combinar con oth traducciones/escalas/rotaciones.
A juzgar por las respuestas aquí, puedo suponer que si hago algo como:
rotación rotación; rotation.SetX (45); rotation.SetY (90); rotation.SetZ (180);
¿Entonces realmente es realmente importante en qué orden se aplican las rotaciones? ¿O es seguro suponer que al usar la clase de rotación, acepta que se apliquen en orden x, y, z?
Esto se responde [aquí] (http://stackoverflow.com/questions/5188876/rotation-matrix-given-angle-and-point-in-x-y-z/5188904#5188904). – Glenn