求在平面直角坐标系中,一个点绕坐标原点旋转一定角度后点的坐标
如图,在平面直角坐标系中(忽略坐标轴上的刻度值),求坐标点P0(x0, y0)绕坐标原点旋转角度B后得到新的点的坐标P1(x1, y1)。这是最基本的坐标点绕坐标原点旋转问题,通过这样的思想我们还可以求解坐标系旋转后坐标的新位置以及三维坐标系旋转的求解等。
我们开始推导计算,首先需要知道以下常用三角公式:
sin(α+β)=sinαcosβ+cosαsinβ
sin(α-β)=sinαcosβ -cosαsinβ
cos(α+β)=cosαcosβ-sinαsinβ
cos(α-β)=cosαcosβ+sinαsinβ
tan(α+β)=(tanα+tanβ)/(1-tanαtanβ)
tan(α-β)=(tanα-tanβ)/(1+tanαtanβ)
假设坐标点 P0(x0, y0)与x轴形成的夹角为A,|OP0|长度为r, 可以通过三角函数得出
(1). r = x0 / cosA = y0 / sinA
(2). r = x1 / cos(A + B) = y1 / sin(A + B)
将(2)式通过三角公式展开可以得到
x1 = r * cos(A + B) = r * cosAcosB - r * sinAsinB
y1 = r * sin(A + B) = r * sinAcosB + r * cosAsinB
结合(1)式可以知道
x1 = x0*cosB - y0*sinB
y1 = y0*cosB + x0*sinB
所以可以看出旋转后的坐标点只与原坐标点和旋转角度有关,表示为矩阵形式为