扩展
大多数 CAD 和绘图应用程序都提供缩放用户创建的输出的功能。 包含缩放 (或缩放) 功能的应用程序调用 SetWorldTransform 函数,以将适当的世界空间设置为页面空间转换。 此函数接收指向包含相应值的 XFORM 结构的指针。 XFORM 的 eM11 和 eM22 成员分别指定水平缩放组件和垂直缩放组件。
发生 缩放 时,构成对象的垂直线和水平线 (或矢量) 将相对于 x 轴或 y 轴进行拉伸或压缩。 下图显示了一个 20 x 20 单位的矩形,当从世界坐标空间复制到页面坐标空间时,垂直缩放到其原始高度的两倍。
在上图中,定义原始矩形侧边的垂直线为 20 个单位,而定义缩放矩形边的垂直线的度量单位为 40 个单位。
垂直缩放可以通过以下算法表示。
y' = y * Dy
其中 y' 是新长度,y 是原始长度,Dy 是垂直缩放因子。
水平缩放可由以下算法表示。
x' = x * Dx
其中 x' 是新长度,x 是原始长度,Dx 是水平缩放因子。
垂直缩放转换和水平缩放转换可以使用 2 乘以矩阵组合成单个操作。
|x' y'| = |Dx 0| * |x y|
|0 Dy|
生成缩放转换的 2 乘 2 矩阵包含以下值。
|1 0|
|0 2|