宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

欧拉角是什么?

也就是说,欧拉角是物体围绕坐标系的三个坐标轴x、y、z轴)的旋转角度。

这里,坐标系可以是世界坐标系,也可以是物体坐标系,旋转顺序也是任意,可以是xyz、xzy、yxz、zxy、yzx、zyx中的任意一个,进而也可以是xyx、xyy、xzz、zxz等.

所以欧拉角是多种多样的。 欧拉角分为两种情况。

1,静态:也就是说绕世界坐标系的三个轴旋转,在物体旋转过程中坐标轴保持静止,因此称为静态。

2,动态),即以物体坐标系为中心的3个轴的旋转。 由于在物体旋转过程中坐标轴以同样的方式与物体一致地旋转,因此称为动态。

在分别绕3个坐标轴旋转的情况下,以下定理成立。

中的任一旋转都可以分解为绕三个轴的旋转,但分解方法不唯一。 例如:

如果围绕y轴旋转heading,围绕x轴旋转pitch,围绕z轴旋转bank,则先从heading45到pitch90等效于先从pitch90到bank45。

如上所述,heading-pitch-bank系统不是唯一的Euler角系统,而是可以由围绕任何三个彼此垂直的轴的任何旋转序列定义一个方位。 所以,很多选择导致了欧拉角承诺的多样性:

1 ) heading-pitch-bank系统有两个名称。 当然,不同的名字并不代表不同的约定,这实际上并不重要。 一组常用术语是roll-pitch-yaw,其中roll对应于bank,yaw对应于heading,定义从物体坐标系到惯性坐标系的旋转

2 )旋转轴可以是任意三个轴,不一定是笛卡尔轴,但使用笛卡尔轴最有意义

3 )也可以选择右手坐标规则

4 )旋转可以按不同的顺序进行

3,好处:1)使用方便2 )表达简洁3 )任意三个活跃的过去都是合法的

4,缺点:1)给定方位的表达方法不唯一2 )求两个角度之间的插值非常困难

采用限制欧拉角的方法,避免上述问题的发生。 heading限制为-180,pitch限制为-90。

以上是欧拉角的定义。 旋转方法如下。

来自欧拉角的矢量变换很简单,困难的部分是变换后返回。 XNA提供了创建旋转矩阵的方法,但没有提供转换和返回的方法,所以我们必须自己实现。

首先,转换为旋转矩阵。 Matrix.CreateFromYawPitchRoll ) )方法可以执行此操作。 在此使用欧拉角时,必须按以下顺序提供坐标:

Yaw 偏航) :欧拉角矢量的y轴

Pitch 俯仰) :欧拉角矢量的x轴

Roll )翻滚) :欧拉角矢量的z轴

想象一下飞机。 yaw指向水平方向的机头,围绕y轴旋转。 Pitch是与水平方向所成的角度,以x轴为中心旋转。 Roll指的是飞机的滚动,以z轴为中心旋转。

除欧拉角外,其他常用的是四元素法和旋转矩阵法。 简而言之,三种方法的特点如下。

1 )欧拉角最直观、易懂、存储空间小,但欧拉角存在接头死锁现象、插补速度不均等缺点,且不得直接用计算机运算。

2 )四元素无接头死锁问题,球面插值获得均匀转速,存储空间小,但不易分辨,不直观;

3 )旋转矩阵法最方便计算机处理,但不能直接插值,冗馀信息多,占用存储空间,同样不直观。 因此,在机器人学中,一般在人机交互终端中使用欧拉角,在插补等中使用四元素,在正反运动学运算中使用矩阵表现法。

1. C标准模板库入门到精通

3358 edu.csdn.net/course/detail/33242 .与初学者学习c

http://edu.csdn.net/course/detail/29013 .私人使用python http://edu.csdn.net/course/detail/学习25924 .学习在VC2015上使用tinyxml 2905.windows上的SVN版本控制和实战3358 edu.csdn.net/course/detail/2579.visual studio 20119 在coursdn.net/coursdio 25707.VC 2015上使用protobuf协议http://edu.csdn.net/course/detail/25828。 在VC2015中学习使用MySQL数据库

3358 edu.csdn.net/course/detail/2672