|
刚才分析的是旋转轴过原点的情况,对于一般的旋转轴,虽然我们也都是把它的轴向量放到原点来考虑,但我们不能只是让旋转点围绕过原点的轴向量旋转完就算完事,我们仍需要采用“平移变换-旋转变换-平移变换”方法。即先将旋转轴平移到过原点方向,旋转点也做相应平移,接着按上面推出的变换阵旋转,最后将旋转轴和点逆平移回去。这里,我们只需在M的左右两边各加上一个平移变换即可。这个平移变换的元素是根据轴向量与原点之间的距离向量得到的,比如旋转轴与原点的距离向量是(lx, ly, lz),则我们的变换就变成
[1 0 0 0] [1 0 0 0] [0 1 0 0] [0 1 0 0] m = [0 0 1 0] x M x [0 0 1 0] [-lx -ly -lz 1] [lx ly lz 1]
变换矩阵m就是全部7个变换矩阵的归并,适用于各种旋转情况。
我们现在已经讨论完了一般的2-D、3-D旋转了。可以看出其基本的思想还是能够化繁为简的变换、归并。而实际的旋转也仍是用我们最最基本的2-D绕原点旋转公式。其实还有很多的旋转效果可以用我们上面的变换、公式稍加修改获得。比如螺旋形旋转、旋转加前进、随机旋转等等。
上一页 [1] [2] [3] [4] [5] [6] [7] [8]
|