二维向量旋转公式

在二维坐标系中,一个位置向量的旋转公式可以由三角函数的几何意义推出。



上图所示是位置向量R逆时针旋转角度B前后的情况

在左图

  x0 = |R| * cosA => cosA = x0 / |R|

  y0 = |R| * sinA => sinA = y0 / |R|

在右图

  x1 = |R| * cos (A+B)

  y1 = |R| * sin (A+B) 

      其中(x1,y1)(x0,y0)旋转角B后得到的点,即位置向量R最后指向的点。展开cos(A+B)sin(A+B),得到:

      x1 = |R| * (cosAcosB - sinAsinB)

   y1 = |R| * (sinAcosB + cosAsinB)

     把 cosA = x0 / |R| sinA = y0 / |R| 代入上面的式子,得到:

     x1 = |R| * (x0 * cosB / |R| - y0 * sinB / |R| ) => x1 = x0 *  cosB - y0 * sinB

    y1 = |R| * (y0 * cosB / |R| + x0 * sinB / |R| ) => y1 = x0 * sinB + y0 * cosB

posted on 2017-04-03 21:16  smallcowboy  阅读(1845)  评论(0编辑  收藏  举报

导航