Rodrigues' Rotation Formula(罗德里格旋转公式)


罗德里格旋转公式:三维空间中向量\(\boldsymbol{v}\)绕单位向量\(\boldsymbol{u}\)旋转\(\theta\)角度之后得到的\(\boldsymbol{v^{'}}\)

\[\boldsymbol{v^{'}}=\boldsymbol{v}cos\theta+(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u}(1-cos\theta)+(\boldsymbol{u}\times\boldsymbol{v})sin\theta \]


首先我们可以将\(\boldsymbol{v^{'}}\)分解为平行\(\boldsymbol{u}\)和垂直\(\boldsymbol{u}\)的两个向量,\(\boldsymbol{v_{||}}\)可以用叉积较容易求出。

\[\begin{equation} \begin{aligned} \boldsymbol{v_{||}}&=|\boldsymbol{v_{||}}|\boldsymbol{u} \\ &=\frac{\boldsymbol{u}\cdot\boldsymbol{v}}{|\boldsymbol{u}|}\boldsymbol{u} \\ &=(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u} \end{aligned} \end{equation} \]

我们可以通过构造正交系来求得\(\boldsymbol{v_{\perp}^{'}}\),我们可以知道\(\boldsymbol{u}\times\boldsymbol{v_{\perp}}\)\(\boldsymbol{v_{\perp}}\)是正交且模长相同且三个向量在一个平面,那么我们可以将\(\boldsymbol{v_{\perp}^{'}}\)表示出来。

\[\begin{equation} \begin{aligned} \boldsymbol{v_{\perp}^{'}}&=\boldsymbol{u}\times\boldsymbol{v_{\perp}}sin\theta+\boldsymbol{v_{\perp}}cos\theta \\ &=\boldsymbol{u}\times(\boldsymbol{v}-\boldsymbol{v_{||}})sin\theta+(\boldsymbol{v}-\boldsymbol{v_{||}})cos\theta \\ &=\boldsymbol{u}\times(\boldsymbol{v}-(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u})sin\theta+(\boldsymbol{v}-(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u})cos\theta \\ &=\boldsymbol{u}\times\boldsymbol{v}sin\theta+\boldsymbol{v}cos\theta-(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u}cos\theta \end{aligned} \end{equation} \]

结合\((1)(2)\)式我们可以得到\(\boldsymbol{v^{'}}\)

\[\begin{equation} \begin{aligned} \boldsymbol{v^{'}}&=\boldsymbol{v_{||}^{'}}+\boldsymbol{v_{\perp}^{'}} \\ &=\boldsymbol{v_{||}}+\boldsymbol{v_{\perp}^{'}} \\ &=\boldsymbol{v}cos\theta+(\boldsymbol{u}\cdot\boldsymbol{v})\boldsymbol{u}(1-cos\theta)+(\boldsymbol{u}\times\boldsymbol{v})sin\theta \end{aligned} \end{equation} \]


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM