欧拉角万向节死锁(从定义下手理解)

这个万向节死锁困扰了我好几天,查遍了网络上的博客,基本都是通过一个陀螺仪来讲解。这种讲解方式忽略了很重要的一点,让人难以理解,看我讲解。

欧拉角有两种 

静态的,静态是世界坐标旋转不会有死锁的情况。

动态的,自身坐标随物体旋转而改变

从动态欧拉角我做了很多次测试发现并不能死锁,所以我从定义下手。

首先需要知道什么是一次欧拉旋转,不是某个轴旋转,而是沿着三个轴都旋转结束后称为一次欧拉旋转,我们想象一下,一个物体沿着y轴旋转45°,那这个物体的x轴和z轴是也跟着旋转吗?定义中的(自身坐标随物体旋转而改变)是针对一个欧拉旋转,并不是

绕某个轴旋转自身坐标也跟着旋转,所以x轴和z轴是不动的,继续绕x轴旋转90°,那么此时y轴要跟着旋转吗?答案是要的因为我们之后的轴旋转已经不涉及到y轴的旋转了,动态欧拉角是旋转过的轴需要随物体旋转而改变,未旋转的轴不能改变。继续绕z轴旋转0°,那现在我们自身的坐标轴就在一个二维平面里面了(y轴和z轴是平行的),x轴垂直与这两个轴,这中情况就是万向节死锁了。

下面从定义总结一下动态的欧拉旋转

1 三个轴全部旋转完毕是一次欧拉旋转

2 未旋转的轴不跟随当前旋转而旋转,旋转过的轴跟着当前旋转而旋转

3 欧拉旋转结果跟xyz轴旋转的顺序有关(unity定义的旋转顺序是yzx)

4 当两个轴平行的时候会产生万向节死锁(无法旋转到某个位置)

小伙伴有问题请评论

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值