一、坐标转换描述
坐标转换是空间实体的位置描述,是从一种坐标系统变换到另一种坐标系统的过程。通过建立两个坐标系统之间一一对应关系来实现。通常坐标转换有平移、缩放、旋转三个方面的转换。本文只详细讲述关于旋转部分的内容。
二、二维坐标旋转
一个二维坐标系O-XY绕原点O旋转$varphi $后变为另一个坐标系O-X'Y'。假设有一点P在O-XY坐标系下的坐标为(x,y),经旋转后在O-X'Y'坐标系下的坐标为(x',y'),则两套坐标系下的坐标的对应关系为
$left{egin{matrix} x^{'}=xcosvarphi-ysinvarphi\y^{'}=xsinvarphi+ycosvarphi end{matrix} ight.$
将其写成矩阵形式为
$egin{bmatrix}x^{'}\ y^{'}end{bmatrix}=egin{bmatrix}cosvarphi & -sinvarphi\ sinvarphi & cosvarphi end{bmatrix}egin{bmatrix}x\ yend{bmatrix}$
三、三维坐标旋转
三维坐标转换主要分为右手系(笛卡尔坐标系)和左手系(测量坐标系)两种,其分别绕Z、Y、X顺时针旋转$kappa,omega,varphi $角度。现在来看一看各轴旋转后坐标的变化。
1、绕Z轴旋转
右:$egin{bmatrix}x^{'}\ y^{'}\ z^{'}end{bmatrix}=egin{bmatrix} coskappa&sinkappa&0\-sinkappa&coskappa&0\0&0&1\ end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}$ 左:$egin{bmatrix}x^{'}\ y^{'}\ z^{'}end{bmatrix}=egin{bmatrix} coskappa & -sinkappa & 0\sinkappa & coskappa & 0\ 0 & 0 &1\ end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}$
2、绕Y轴旋转
右:$egin{bmatrix}x^{''}\ y^{''}\ z^{''}end{bmatrix}=egin{bmatrix} cosomega &0&-sinomega \0&1&0\sinomega&0 &cosomega \ end{bmatrix}egin{bmatrix}x^{'}\ y^{'}\ z^{'}end{bmatrix}$ 左:$egin{bmatrix}x^{''}\ y^{''}\ z^{''}end{bmatrix}=egin{bmatrix} cosomega &0&sinomega \0&1&0\-sinomega&0 &cosomegaend{bmatrix}egin{bmatrix}x^{'}\ y^{'}\ z^{'}end{bmatrix}$
3、绕X轴旋转
右:$egin{bmatrix}x^{'''}\ y^{'''}\ z^{'''}end{bmatrix}=egin{bmatrix}1 & 0 & 0\ 0 & cosvarphi & sinvarphi\0 & -sinvarphi & cosvarphi\ end{bmatrix}egin{bmatrix}x^{''}\ y^{''}\ z^{''}end{bmatrix}$左:$egin{bmatrix}x^{'''}\ y^{'''}\ z^{'''}end{bmatrix}=egin{bmatrix}1 & 0 & 0\ 0 & cosvarphi & -sinvarphi\0 & sinvarphi & cosvarphi\ end{bmatrix}egin{bmatrix}x^{''}\ y^{''}\ z^{''}end{bmatrix}$
4、旋转矩阵融合
将三轴的旋转融合为一个旋转矩阵R 。
右:$egin{bmatrix}x^{'''}\ y^{'''}\ z^{'''}end{bmatrix}=egin{bmatrix}1 & 0 & 0\ 0 & cosvarphi & sinvarphi\0 & -sinvarphi & cosvarphi\ end{bmatrix}egin{bmatrix} cosomega &0&-sinomega \0&1&0\sinomega&0 &cosomega \ end{bmatrix}egin{bmatrix} coskappa&sinkappa&0\-sinkappa&coskappa&0\0&0&1\ end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}=egin{bmatrix}r_{11} & r_{12} & r_{13}\ r_{21} & r_{22} & r_{23}\ r_{31} & r_{32} & r_{33}end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}$
左:$egin{bmatrix}x^{'''}\ y^{'''}\ z^{'''}end{bmatrix}=egin{bmatrix}1 & 0 & 0\ 0 & cosvarphi & -sinvarphi\0 & sinvarphi & cosvarphi\ end{bmatrix}egin{bmatrix} cosomega &0&sinomega \0&1&0\-sinomega&0 &cosomegaend{bmatrix}egin{bmatrix} coskappa & -sinkappa & 0\sinkappa & coskappa & 0\ 0 & 0 &1\ end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}=egin{bmatrix}r_{11} & r_{12} & r_{13}\ r_{21} & r_{22} & r_{23}\ r_{31} & r_{32} & r_{33}end{bmatrix}egin{bmatrix}x\ y\ zend{bmatrix}$
右手坐标系得旋转矩阵R的各个元素为
$left{egin{matrix}r_{11}=cosomega coskappa &r_{12}=cosomega sinkappa &r_{13}=-sinomega \ r_{21}=-cosvarphi sinkappa +sinvarphi sinomega coskappa & r_{22}=cosvarphi coskappa +sinvarphi sinomega sinkappa &r_{23}=sinvarphi cosomega \ r_{31}=sinvarphi sinkappa +cosvarphi sinomega coskappa&r_{32}=-sinvarphi coskappa +cosvarphi sinomega sinkappa&r_{33}=cosvarphi cosomega end{matrix} ight.$
左手坐标系得旋转矩阵R的各个元素为
$left{egin{matrix}r_{11}=cosomega coskappa &r_{12}=-cosomega sinkappa &r_{13}=sinomega \ r_{21}=cosvarphi sinkappa +sinvarphi sinomega coskappa & r_{22}=cosvarphi coskappa -sinvarphi sinomega sinkappa &r_{23}=-sinvarphi cosomega \ r_{31}=sinvarphi sinkappa -cosvarphi sinomega coskappa&r_{32}=sinvarphi coskappa +cosvarphi sinomega sinkappa&r_{33}=cosvarphi cosomega end{matrix} ight.$