总要有人来改变世界的,为什么不能是你呢

三维刚体旋转之四元数

先来了解一下四元数的基本概念。

一、复数的概念

高中数学中有说到复数的概念,什么是复数呢?

百度百科奉上:https://baike.baidu.com/item/%E5%A4%8D%E6%95%B0/254365?fr=aladdin

基本上你只需要了解,复数这玩意儿长这样:

  z = a + bi

ab是实数,i2 = -1是复数 的实部,bi 是复数 的虚部。

二、四元数是什么

四元数是一种高阶复数,他长这样:

(x,y,z,wxyz+w

其中:

i2 = j2 = k2 1;

ijk = -1;

我们可以对上述所提到的四元数q作如下改写:

= ((x,y,z),w) = (v⃗ + w)

这样一来,四元数可以看做是一个三维向量 v⃗ 和齐次坐标系下的 分量;

三、四元数运算

假定两个四元数 q1、q2

* 四元数乘法

  q1q(v1 × v2 w1v2 w2v1 w1w2 − v1v2)

* 共轭四元数(三维向量方向取反)

  q∗ (v ,w)

* 四元数的平方模(三维向量的模 + w分量的平方)

  N(qN(v⃗ w2

* 四元数的逆(共轭四元数除以模)

  q1 q / N(q)
 
四、四元数实现旋转
 

 

posted @ 2019-04-20 14:52  桔子桑  阅读(438)  评论(0编辑  收藏  举报