四元数和欧拉角
精选 转载四元数在unity中做旋转, 主要的理论是:
中文名称: 欧拉角 英文名称: Euler angles 定义: 构件在三维空间中的有限转动,可依次用三个相对转角表示,即进动角、章动角和自旋角,这三个转角统称为欧拉角。
象在四元数和空间转动条目中详细解释的那样,非零四元数的乘法群在R3的取实部为零的拷贝上以共轭作用可以实现转动。单位四元数(绝对值为1的四元数)的共轭作用,若实部为cos(t),是一个角度为2t的转动,转轴为虚部的方向。四元数的优点是:
非奇异表达(和例如欧拉角之类的表示相比)
比矩阵更紧凑(更快速)
单位四元数的对可以表示四维空间中的一个转动。
有两种方法能以矩阵表示四元数,并以矩阵之加法、乘法应用于四元数之加法、乘法。
第一种是以二阶复数矩阵表示。若 h = a + bi + cj + dk 则它的复数形式为:
<math>\begin a-di & -b+ci \\ b+ci & \;\; a+di \end</math>
这种表示法有如下优点:
所有复数 (c = d = 0) 就相应于一个实矩阵。
四元数的绝对值的平方就等于矩阵的行列式。
四元数的共轭值就等于矩阵的共轭转置。
对于单位四元数 (|h| = 1) 而言,这种表示方式给了四维球体和SU(2)之间的一个同型,而后者对于量子力学中的自旋的研究十分重要。(请另见泡利矩阵)
第二种则是以四阶实数矩阵表示:
<math>\begin\;\;a&-b&\;\;d&-c\\ \;\;b&\;\;a&-c&-d\\-d&\;\;c&\;\;a&-b\\ \;\;c&\;\;d&\;\;b&\;\;a\end</math>
其中四元数的共轭等于矩阵的转置。
----------------
上一篇:unity3d 透明贴图双面显示
下一篇:ARPG中人物的鼠标点击旋转
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
四元素以及欧拉角
c++ 头文件 #include "tf/LinearMath/Matrix3x3.h"#include "geometry_msgs/Q
#include python 头文件 -
python 使用PyKDL 四元数转欧拉角
安装: 使用:
python github Python