二维向量旋转公式
在二维坐标系中,一个位置向量的旋转公式可以由三角函数的几何意义推出。
上图所示是位置向量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) 编辑 收藏 举报