Учитывая следующие определения для матриц поворота x, y, z, как я представляю это как одну полную матрицу? Просто умножьте x, y, & матрицы?Как представить вращение матрицы 4x4?
Х Вращение:
[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 Вращение:
[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 Вращение:
[cos(-Z Angle) -sin(-Z Angle) 0 0]
[sin(-Z Angle) cos(-Z Angle) 0 0]
[0 0 1 0]
[0 0 0 1]
Редактировать: У меня есть отдельный класс вращения, который содержит х, у , z float value, которое я позже преобразую в матрицу, чтобы объединиться с oth er переводы/весы/вращения.
Судя по ответам здесь, я могу предположить, что если я делаю что-то вроде:
вращения вращения; rotation.SetX (45); rotation.SetY (90); rotation.SetZ (180);
Тогда действительно ли важно, какой порядок вращения применяется? Или можно ли предположить, что при использовании класса вращения вы принимаете, что они применяются в x, y, z порядке?
Это ответ [здесь] (http://stackoverflow.com/questions/5188876/rotation-matrix-given-angle-and-point-in-x-y-z/5188904#5188904). – Glenn