三维旋转矩阵的推导

我们知道绕坐标轴旋转的变换矩阵为:

(1)绕Z轴旋转  x' = xcost - ysint

                            y' = xsint + ycost

                            z' = z  

                    

(2)绕X轴旋转  y' = ycost - zsint

                            z' = ysint + zcost

                            x' = x

(3) 绕Y轴旋转 z' = zcost - xsint

                       x' = zsint + xcost

                       y' = y

假设让一个向量绕x轴旋转t度,我们知道绕x轴旋转的旋转矩阵如下:

1     0       0      0

0   cost   sint   0

0  -sint   cost   0

0      0      0      1

那么,它是怎么来的呢?

现在假设我们想让P1绕x轴旋转t度到达P2。我们沿着x轴指向原点方向观察时,情况如下:

P0是当P1与y轴重合时的向量,假设P0旋转至P1为r度,那么很明显,P1的值为y1 = r*cosr,z1 = r*sinr。

而现在我们是要把P1旋转t度至P2,那么同理,P0旋转r+t度也至P2,那么P2的值为y2 = r*cos(r+t),z2 = r*sin(r+t)。

我们把P2的值展开看看,y2 = r*(cosr*cost - sinr*sint),z2 = r*(sinr*cost + cosr*sint),因为P1的值y1 = r*cosr,z1 = r*sinr,所以cosr = y1/r,sinr = z1/r,代入P2的值,得:

y2 = r*(y1/r * cost - z1/r * sint ) = y1*cost - z1*sint

z2 = r*(z1/r * cost + y1/r * sint ) = y1*sint + z1*cost

即得旋转矩阵:

 

1     0       0      0

0   cost   siny   0

0  -sint   cost   0

0      0      0      1

其余的旋转矩阵推导过程相同。

 

  • 11
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值