理解矩阵 - 阅读轮换

时间:2012-03-05 15:47:30

标签: opengl-es 3d matrix rotation

我想了解更多关于矩阵的知识。如果我有4x4矩阵,例如:

0.005  0.978  -0.20 60.62
-0.98 -0.027  0.15  -18.942
-0.15 0.20    0.96  -287.13
0      0       0      1

矩阵的哪一部分告诉我应用于对象的旋转?我知道第4列是对象的位置,可疑行1,2和3是x,y和z旋转吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

前三个是x,y,z方向的方向向量,可能包括对象的缩放。如果你想象一个立方体,第一列的向量指向立方体的正x面的方向,第二列指向正y面的方向,第三列指向正z面的方向

请注意,当对象缩放应用于矩阵时(在您的示例中似乎不是这种情况),这些方向向量不会被标准化。

但这不是欧拉角或四元数 - 旋转意义上的“旋转”。事实上,从这个矩阵计算任何角度都非常棘手。

以下是一些解释如何操作的链接,但这会带来很多问题,如果不是绝对必要的话,你应该避免使用它:

http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToEuler/index.htm

http://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToEuler/index.htm