[计算机图形学入门]2.变换(一)
-向量与矩阵乘法默认左乘矩阵
目录
一.二维变换
1.缩放Scale
①等比缩放
②非等比缩放
③翻转reflection matrix
④切变shear matrix
X` = x+ay
2.旋转
①默认绕(0,0)逆时针旋转
②旋转矩阵rotation matrix
③旋转矩阵的转置矩阵 == 旋转矩阵的逆矩阵 == R(-α)
3.线性组合linear transforms
①旋转与缩放变化可以合并成一个矩阵与原向量相乘,称为线性变化.
4.平移translation
①因为平移变换的存在,三种变换的结合不再是线性变换,平移变换成为特殊
而为了消除其特殊性,引入齐次坐标进行仿射变换.
5.齐次坐标homogenous coordinates
①齐次坐标便于仿射变换,仿射变换本质执行顺序为,先线性变换,再平移
②二维点升维,补1,二维向量升维,补0.
解释:
因为引入齐次坐标后,变换矩阵末行常补(0,0,...,1),与点进行乘法后,若点的末行为1,
则可以得到正确位置(包括平移正确).
而对于向量而言,向量与其位置无关,我们不希望同一个向量在与变换矩阵相乘后
出现(x+a,y+b),(其实本质是x,y),所以向量的最后一行为0,可以避免平移对其带来的影响.
③在齐次坐标下,点升维,最后一行通常为一,此时两个点相加后,最后一行变为2,但为了与齐次坐标系下点的规范一样,通常除以2(n个点相加则除以n),于是该坐标系下两个点相加含义为两个点的中点.
④使用齐次坐标前后对比对比
⑤齐次坐标系,变换的新表示矩阵
⑥齐次坐标引入了额外的数字,但通常不会去存储最后一行.
6.变换组合
①顺序很重要,不满足交换律,满足结合律(可以把所有矩阵按顺序乘起来,再与向量相乘)
②矩阵乘向量,从右往左读
7.变换分解
①例:绕某点旋转
8.逆变换
①乘以逆矩阵
资料来源Games101