1、二维坐标的平移,旋转、缩放矩阵
- 平移矩阵M:
1 0 0
0 1 0
dx dy 1
D2 = D1*M
- 旋转矩阵M
设某点与原点连线和X轴夹角为b度,以原点为圆心,逆时针转过a度 , 原点与该点连线长度为R, [x,y]为变换前坐标, [X,Y]为变换后坐标。
x = Rcos(b) ; y = Rsin(b);
X = Rcos(a+b) = Rcosacosb - Rsinasinb = xcosa - ysina; (合角公式)
Y = Rsin(a+b) = Rsinacosb + Rcosasinb = xsina + ycosa ;
绕原点的旋转矩阵表示:
cosa sina 0
[X, Y, 1] = [x, y, 1][-sina cosa 0 ]
0 0 1
cosa sina 0
-sina cosa 0 为旋转变换矩阵。
0 0 1
- 缩放矩阵
设某点坐标,在x轴方向扩大 sx倍,y轴方向扩大 sy倍,[x,y]为变换前坐标, [X,Y]为变换后坐标。
X = sx*x; Y = sy*y;
则用矩阵表示:
sx 0 0
[X, Y, 1] = [x, y, 1][ 0 sy 0 ] ;
0 0 1
sx 0 0
0 sy 0 即为缩放矩阵。
0 0 1
2、三维坐标的平移,旋转、缩放矩阵
- 平移矩阵M
1 0 0 0
0 1 0 0
0 0 1 0
dx dy dz 1
- 缩放矩阵
Sx 0 0 0
0 Sy 0 0
0 0 Sy 0
0 0 0 1
- 旋转矩阵
绕X轴旋转θ度
1 0 0 0
0 cosθ sinθ 0
0 -sinθ cosθ 0
0 0 0 1
绕Y轴旋转θ度
cosθ 0 -sinθ 0
0 1 0 0
sinθ 0 cosθ 0
0 0 0 1
绕Z轴旋转θ度
cosθ sinθ 0 0
-sinθ cosθ 0 0
0 0 1 0
0 0 0 1
参考: