D3DXMatrixAffineTransformation2D 函数 (D3DX10Math.h)

注意

D3DX 实用工具库已弃用。 建议改用 DirectXMath

在 x-y 平面中生成 2D 仿射变换矩阵。 NULL 参数被视为标识转换。

语法

D3DXMATRIX* D3DXMatrixAffineTransformation2D(
  _In_       D3DXMATRIX  *pOut,
  _In_       FLOAT       Scaling,
  _In_ const D3DXVECTOR2 *pRotationCenter,
  _In_       FLOAT       Rotation,
  _In_ const D3DXVECTOR2 *pTranslation
);

参数

pOut [in]

类型: D3DXMATRIX*

指向操作结果的 D3DXMATRIX 的指针。

缩放 [in]

类型: FLOAT

缩放因子。

pRotationCenter [in]

类型: const D3DXVECTOR2*

指向 D3DXVECTOR2 的指针,该点标识旋转中心。 如果此参数为 NULL,则标识 Mrc 矩阵将应用于“备注”中的公式。

旋转 [in]

类型: FLOAT

旋转角度。

pTranslation [in]

类型: const D3DXVECTOR2*

指向表示翻译的 D3DXVECTOR2 的指针。 如果此参数为 NULL,则将标识 Mt 矩阵应用于“备注”中的公式。

返回值

类型: D3DXMATRIX*

指向作为仿射转换矩阵的 D3DXMATRIX 结构的指针。

备注

此函数使用以下公式计算仿射转换矩阵,矩阵串联按从左到右的顺序计算:

Mout = Ms * (Mrc) -1 * Mr * Mrc * Mt

其中:

Mout = 输出矩阵 (pOut)

Ms = 缩放矩阵 (缩放)

Mrc = 旋转矩阵 (pRotationCenter)

Mr = 旋转矩阵 (旋转)

Mt = 转换矩阵 (pTranslation)

此函数的返回值与 pOut 参数中返回的值相同。 这样,D3DXMatrixAffineTransformation2D 函数可用作另一个函数的参数。

对于 3D 仿射转换,请使用 D3DXMatrixAffineTransformation。

要求

要求 Value
标头
D3DX10Math.h

D3DX10.lib

另请参阅

数学函数