绕任意轴旋转, 绕任意直线旋转矩阵推导
问题描述:
已知空间中的任意轴axis(u,v,w),点v绕该轴旋转$\theta$后得到点v’,求满足条件的矩阵$R_\theta$,使得有
$v’ = R_\theta v$
思路1:
先将旋转到z轴,然后引用绕z轴旋转公式,再将该轴再旋转回原来的地方。
思路2:
矩阵的本质是线性变换,我们通过几何方法对三个轴分别写出三个线性变换的表达式,再将其拼接成矩阵。
这里我们讲一下思路1,思路2见3D Math Primer for Graphics and Game Development, 2nd Edition,不管采取哪种方法,得到的结果肯定是一样的。
众所周知,把一头大象关进冰箱需要三步
1.打开冰箱门
2.把大象放进去
3.关闭冰箱门