Scale Matrix 缩放#
- 本质单位向量变换
[x′y′]=[sx00sy][xy]
Reflection Matrix: sxorsy=−1
Shear Matrix 伸缩#
- 本质单位向量变换
[x′y′]=[10a1][xy]
- x方向单位向量不变,y方向单位向量变为[a1]T
- 绕原点旋转
Rotate Matrix 旋转#
- 本质单位向量变换
[x′y′]=[cosθsinθ−sinθcosθ][xy]
x′=ax+byy′=cx+dy
[x′y′]=[abcd][xy]
齐次坐标下的变换#
-
2D point: [x,y,1]T
-
2D vector: [x,y,0]T
-
[x,y,w] 即是2D点: [wx,wy,1](w=0)
Scale 缩放#
S(sx,sy)=sx000sy0001Rotation 旋转#
R(α)=cosθsinθ0−sinθcosθ0001Translation 平移#
T(tx,ty)=100010txty1
- R⋅T=T⋅R
- 对于变换:An(...A2(A1(x)))=An...A2⋅A1xy1,从右往左依次应用于向量
复杂变换的分解:以绕某点c为例#
变换矩阵M=T(−c)R(α)T(c)(先平移回原点,旋转,然后再平移回c点)
因为旋转矩阵是相对于原点的