齐次坐标系下的三维变换可以写成下面的形式:

旋转矩阵是正交矩阵,其矩阵的逆等于矩阵的转置。

绕着 x 轴旋转,说明 y 和 z 都是在进行旋转的,但 x 不变。因此绕 x 轴的旋转矩阵相比二维的旋转矩阵,第一行是不变的。中间部分和二维旋转矩阵一样。

绕 y 轴旋转不一样,这里涉及到我们要如何思考轴的相互顺序。

我们能够解决一些简单的问题,复杂的问题可以转化成一些简单问题的组合。

给定根据三个轴的旋转,能否将某一个方向旋转到任意一个方向上去?

有人将任意一个旋转分解成通过 x y z 轴分别做旋转。

公式给了我们一个旋转矩阵,定义中给了我们一个旋转轴 n 和旋转角度 α。旋转角度好理解,但旋转轴似乎不能这么简单地定义。因为一个旋转轴首先跟起点有关系,然后跟方向有关系,只给一个向量是不是不太合适?

方向一样,但起点不一样,结果肯定也是不一样的。因此我们说沿着某个轴的方向旋转,就默认了是过原点的,这样起点就在原点上,方向就是 方向。

那么如果轴 n 可以平移怎么办?那么我们可以将其进行变换的分解。如果我们要沿着任意轴旋转且轴的起点不在原点,我们可以将所有的东西移到起点为原点的条件下,再旋转,再移回去。

另外公式最后的矩阵有点熟悉,就是向量叉乘的式子: