1、缩放
常见的旋转矩阵(旋转的的角度为):
推导辅助理解:将坐标转换来反向推导变换矩阵,推出A,C,可再同理用另外一个特殊的点推出B,D的值。
线性变换:必须要可以用矩阵表示出来其变换
2、齐次坐标
为了不使平移称为一个特例,解决办法:引入一个额外的数字,将2D变为3D,但增加后值等都不变
上图就可以解决了平移无法用线性变换的问题了
齐次坐标:
一个点加一个点在齐次坐标下就是这两个点的一个终点(需验证)
总结:引入齐次坐标的目的就是为了将所有的变换可以写成一个矩阵乘以一个向量的简单形式。
其矩阵的乘法规则看本篇第4节。
三维空间中的齐次坐标:
3、仿射变换
仿射变换都可以写成齐次坐标:仿射变换=线性变换+平移,在二维,三维中都是如此。
下面的是齐次坐标
在二维情况下,最后一行都是(0,0,1)
三维空间中的仿射变换,最后一行是(0,0,0,1)
4、逆向变换
为逆向变换
矩阵的乘法是不满足交换律的!
在上述的齐次坐标中(不仅在齐次坐标中,仅作为例子)提到,对于向量的变换我们可以用一个矩阵乘以向量去表示。但在复杂变换中,一个矩阵很难去直接表示出所有的变换,这时就需要多个矩阵去表示了。向量依旧在右边,先进行操作的矩阵放在其向量的左边相乘,接下来的继续往左边放使其相乘。以此类推。
也就是说,如上图所示,给一个向量(在最右边),会从右到左的去运用其矩阵变换。
在多个变换中的矩阵相乘,如下图所示,变换从A1开始到An