二维空间内,旋转、对称矩阵的实现
2019-05-20 本文已影响1人
陈陌Chemo
概述
本文为解决以下问题:
对二维空间内的点做矩阵变换,实现
- 以点
为旋转中心,以 r 为旋转角,做旋转
- 以过点
,与 x 轴正方向夹角为
的直线为对称轴,做对称
即,分别求其定点旋转矩阵、定轴对称矩阵
其中定点旋转矩阵由平移矩阵和中心旋转矩阵得来,轴对称矩阵则由定点旋转矩阵和轴对称矩阵得来
已知
有列向量
平移矩阵
对有平移矩阵
使得
即点延向量
平移至点
中心旋转矩阵
对有中心旋转矩阵
使得
即点以
为旋转中心,逆时针旋转
至点
定点旋转矩阵
由此可知,要使点以点
为旋转中心旋转,可先将点
加上向量
,做旋转后再加上向量
平移回来,几何证明请参考下图

则对有定点旋转矩阵
得
使得
即点以
为旋转中心,逆时针旋转
角度至上述点
轴对称矩阵
对有轴对称矩阵
使得
即点以直线
为对称轴做对称至点
定轴对称矩阵
由此可知,要使点其以直线
为对称轴做对称,其中
点坐标为
,直线与x轴的夹角为
,可先将点
以
为旋转中心,
为旋转角做旋转,之后以直线
做对称轴做对称,再以
为旋转中心,
为旋转角旋转回来,几何证明请参考下图

则对有定轴对称矩阵
得
使得
即点以直线为对称轴,做对称至上述点
(最后的计算有空会补上,若有计算错误还请指出)