整理一下学习到的四元数相关知识,暂时分为以下几个方面进行整理吧
1.四元数为什么能表示旋转
2.四元数的运算(格里斯曼积,点乘,叉乘,关于四元数的逆的疑问)
3.四元数用作旋转时,为什么被旋转向量(p)为纯四元数,为什么旋转四元数(q)的模限定为1,以及完成旋转需要左乘q右乘q的共轭
1.四元数为什么能表示旋转
先来看看复数:
引入复数的时候,规定i² = -1:在Re轴上取单位向量 a ⃗ \vec{a} a ,则 a ⃗ \vec{a} a·i² = - a ⃗ \vec{a} a,也就是说,对 a ⃗ \vec{a} a进行两次 i 运算后, a ⃗ \vec{a} a变成了- a ⃗ \vec{a} a,i 的意义即为逆时针旋转90°。
这是二维平面中,复数的乘法可以表示旋转:
原向量 z = x + i y z=x+iy z=x+iy ,对其逆时针旋转 θ \theta θ角度,即乘以另一个向量 r = c o s θ + i ⋅ s i n θ r=cos\theta+i·sin\theta r=cosθ+i⋅sinθ
以上:对点或者向量进行旋转需要引入一个虚数单位
那么很自然的我们会想到,在三维空间中进行旋转,需要引入两个虚数单位:
(1) l = x + y i + z j l=x+y i+z j\tag{1} l=x+yi+zj(1)
不妨设定一个待旋转的向量 m ⃗ = a + b i + c j \vec{m}=a+bi+cj m