翻译

某些应用程序转换 (或移位) 在工作区中绘制的对象。 调用 SetWorldTransform 函数,将相应的 world-space 设置为 page-space 转换。 SetWorldTransform 函数接收指向包含相应值的 XFORM 结构的指针。 XFORM 的 eDx 和 eDy 成员分别指定水平和垂直平移组件。

发生 平移 时,对象中的每个点将按指定的量垂直移动、水平移动或同时移动两者。 下图显示了一个 20 x 20 单位的矩形,当从世界坐标空间复制到页面坐标空间时,该矩形由 10 个单位向右转换。

插图显示一个矩形在世界空间中的一个位置,以及页面空间中的不同位置

在上图中,矩形中每个点的 x 坐标比原始 x 坐标大 10 个单位。

水平平移可由以下算法表示。

x' = x + Dx 

其中 x' 是新的 x 坐标,x 是原始 x 坐标,Dx 是移动的水平距离。

垂直转换可以通过以下算法表示。

y' = y + Dy 

其中 y' 是新的 y 坐标,y 是原始 y 坐标,Dy 是移动的垂直距离。

水平转换和垂直转换可以使用 3 乘以矩阵组合成单个运算。

                      |1   0   0| 
|x' y' 1| = |x y 1| * |0   1   0| 
                      |Dx  Dy  1| 

(矩阵乘法规则指出,一个矩阵中的行数必须等于另一个矩阵中的列数。矩阵中的整数 1 |x y 1|是为满足此要求而添加的占位符。)

生成图示转换的 3 乘 3 矩阵包含以下值。

|1  0  0| 
|0  1  0| 
|10 0  1|