目录
二维几何变换(2D Geometric Transformation)
二维几何变换(2D Geometric Transformation)
图形学中,基本的几何变换主要有缩放、错切、旋转、反射、平移等几个操作。其他的复杂变换可以通过这些基础变换组合实现。这些变换统称为线性变换(平移除外),可以通过乘以合适的变换矩阵(2D中为2X2矩阵)来实现。即变换后的图形各点可以通过某个变换矩阵乘以原始点来表示。
1、缩放(Scaling)
缩放可以改变一个对象的大小。2D中,缩放操作可通过将缩放系数(scaling factor)和
乘以对象坐标
实现:
上式中缩放系数对应于对象在x轴方向上的缩放。
对应于对象在y轴方向上的缩放。
缩放公式也可以写成矩阵形式:
:缩放后的坐标向量
。
:缩放矩阵。在2D中是一个2X2的对角矩阵。表示为:
:缩放前的原始坐标向量
。
下图是在x轴上压缩为原来的1/2。在y轴方向上拉伸1.5倍的缩放效果:
缩放也有另一种计算方法。我们可以选择一个缩放变换前后不改变位置的点,称为固定点(fixed point),来控制缩放后对象的位置。这样多边形通过缩放每个顶点到固定点的距离而相对于固定点进行缩放。
假设固定点的坐标为,缩放前的顶点坐标为
,则缩放后的顶点坐标
可通过下式计算: