(旋转变换及其对应方法的一些问题,因为梯子出问题所以没找到多的参考资料)
旋转
旋转不改变原点位置,不改变点的相对位置,刚体变换。
任意旋转矩阵都是正交矩阵,且通过直角坐标的两个基向量的变换可以确定第三个基向量的变换,也确定了旋转矩阵。
空间直角坐标系的基向量,对应旋转不变的矩阵;任意一个旋转矩阵,其三个列向量就是三个基向量变换到的位置。
矩阵与平面点、空间点一一对应时,两点间可以进行插值,但是线性插值往往不是定轴旋转,通过不同的插值方式得到的旋转路径是不同的。
Rodrigues旋转公式
罗德里格旋转公式,即轴角旋转,确定旋转轴和旋转角度。
对于空间内任意点的位矢v,其平行于轴u的分矢量$v_\parallel$不变,而垂直于轴u的分矢量$v_\perp$相当于在平面内旋转θ角度。
于是有:
$$ v=v_\parallel+v_\perp\qquad v_{rot}=v_\parallel+v_{\perp rot} $$ $$ v_\parallel=(v\cdot\hat{u})\hat{u}\qquad v_\perp=(\hat{u}\times v)\times\hat{u}=v-(v\cdot\hat{u})\hat{u} $$ $$ v_{\perp rot}=\cos\theta v_\perp+\sin\theta\hat{u}\times v $$-
在轴u法平面内的旋转,取两垂直、等长向量$v_\perp$和$\hat{u}\times v$作标架,可以证明等长、垂直,且用平面旋转的知识可表示圆上的点。
-
当已知原像P和像P'时,可以知道用θ插值的结果是一个小圆轨迹的旋转,所以不是旋转的最短路径。要得到大圆轨迹,轴要与POP'垂直。
复数表示平面旋转
原像表示成$x+yi=(x,y)$,像表示为$$x'+y'i=(x',y')=(\cos\theta x-\sin\theta y,\sin\theta x+\cos\theta y)$,于是:
$$ x'+y'i=\cos\theta(x+yi)+\sin\theta(xi-y)=\cos\theta(x+yi)+\sin\theta i(x+yi)=(\cos\theta+\sin\theta i)(x+yi) $$旋转复数为$C_\theta$,且一定是单位复数。
有$P_{R(\theta)}=C_\theta P$。
四元数形式
四元数集$\mathbb{H}$,四元数q满足:
$$ q=a+bi+cj+dk=(a,u)\qquad q^*=a-bi-cj-dk=(a,-u) $$ $$ i^2=j^2=k^2=ijk=-1\qquad ij=k,jk=i,ki=j $$四元数不满足交换律,可以看作空间基向量的叉乘不满足交换律。
四元数乘法:
$$ (a,u)(e,v)=(ae-u\cdot v,av+eu+u\times v) $$ $$ qq=a^2-\|u\|^2\qquad qq^*=a^2+\|u\|^2=\|q\|^2 $$其中范数即$|a+bi+cj+dk|=\sqrt{a^2+b^2+c^2+d^2}$。
用纯四元数且单位四元数表示旋转轴u、空间点的位矢v,旋转四元数用类似复数表示旋转的方法使用一个单位四元数,旋转变换表示为:
$$ v_{R(2\theta)}=q_{\theta}vq_{\theta}^*=(\cos\theta,\sin\theta\hat{u})(0,v)(\cos\theta,-\sin\theta\hat{u}) $$通过形式可以反推出罗德里格旋转公式。说明四元数旋转也是轴角表示的旋转。
$$ v_{R(2\theta)}=(0,(\cos^2\theta-\sin^2\theta)v+2\sin^2\theta(v\cdot\hat{u})\hat{u}+2\sin\theta\cos\theta\hat{u}\times v)=(0,R(2\theta)v) $$矩阵形式
-
三重叉积公式: 可以知道三重叉积与先算的两向量共面。
$$ w=(a\times b)\times c=ma+nb=(ma\cdot\hat{w}+nb\cdot\hat{w})\hat{w} $$
$$ |w|=|a||b||c_\perp|\sin\left\langle a,b\right\rangle=|c_\perp||a||b|(\sin\left\langle a,w\right\rangle\cos\left\langle w,b\right\rangle+\cos\left\langle a,w\right\rangle\sin\left\langle w,b\right\rangle) $$
$$ |w|=m|a|\cos\left\langle a,w\right\rangle+nb\cos\left\langle b,w\right\rangle $$
在右叉乘情况下,$\left\langle c_\perp,w\right\rangle=\pi/2$。
$$ \sin\left\langle a,w\right\rangle=\cos\left\langle a,c_\perp\right\rangle\qquad\sin\left\langle w,b\right\rangle=-\cos\left\langle b,c_\perp\right\rangle $$
$$ |a||c_\perp|\cos\left\langle a,c_\perp\right\rangle=a\cdot c_\perp=a\cdot c $$
$$ m=-(b\cdot c)\qquad n=a\cdot c $$
$$ w=(a\times b)\times c=(a\cdot c)b-(b\cdot c)a $$
-
(u·v)u的变形
$$ (u\cdot v)u=u(u^Tv)=(uu^T)v $$
-
罗德里格公式的矩阵形式
$$ v_{rot}=Rv $$
$$ R=\cos\theta I+(1-\cos\theta)uu^T+\sin\theta[u]=I+(\cos\theta-1)(I-uu^T)+\sin\theta[u] $$
-
旋转四元数的矩阵表示
$$ q=\begin{pmatrix} \cos\theta & -\sin\theta u^T \ \sin\theta u & \cos\theta I+[\sin\theta u] \end{pmatrix} $$
comment 评论区
star_outline 咱快来抢个沙发吧!