赞
踩
我们先来了解轴角法表示的旋转,其与四元数表述旋转的几何意义相似。
一个以矢量定义的旋转轴,再加上一个标量定义的旋转角,这种表达旋转的方式称为轴角(axis-angle)表达方式。旋转轴A、角度 θ \theta θ可写成4维矢量形式:
[ A θ ] = [ A x A y A z θ ] [Aθ] = [AxAyAzθ] [Aθ]=[AxAyAzθ]
轴角表示的优点在于比较直观,存储消耗更少(只需4个浮点数)。轴角表示旋转不能直接施加于点或矢量,需要把轴角转换成矩阵或四元数。更重要的问题是:不能简单的进行插值计算(计算两个旋转中某个百分点的旋转)。
四元数可以当做一个四维的复数。具有一个实数轴和以虚数i,j,k表示的三个虚数轴。
对于i、j、k本身的几何意义可以理解为一种旋转,其中i旋转代表X轴与Y轴相交平面中X轴正向向Y轴正向的旋转,j旋转代表Z轴与X轴相交平面中Z轴正向向X轴正向的旋转,k旋转代表Y轴与Z轴相交平面中Y轴正向向Z轴正向的旋转,-i、-j、-k分别代表i、j、k旋转的反向旋转。
q = w + i x + j y + k z q=w+ix+jy+kz q=w+ix+jy+kz
并且满足:
i 2 = j 2 = k 2 = − 1 i ⋅ j = k j ⋅ i = − k i^2=j^2=k^2=-1\\i\cdot j=k\\j\cdot i=-k i2=j2=k2=−1i⋅j=kj⋅i=−k
四元数还可以用矢量 X ( x , y , z ) X(x,y,z) X(x,y,z)与标量 w w w结合的方式表示:
q = w + x i + y j + z k = w + X q=w+xi+yj+zk \\ = w+X q=w+xi+yj+zk=w+X
两个四元数之间的非可换乘积通常被称为格拉斯曼积。
设定:
A = ( a , b , c ) X = ( x , y , z ) A=(a,b,c)\\ X=(x,y,z) A=(a,b,c)X=(x,y,z)
定义两个四元数p、q:
q = w 1 + A = w 1 + a i + b j + c k p = w 2 + X = w 2 + x i + y j + z k q=w_1+A=w_1+ai+bj+ck \\ p=w_2+X=w_2+xi+yj+zk q=w1+
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。