Expand Minimize

D3DXMatrixTransformation2D function

Builds a 2D transformation matrix that represents transformations in the xy plane. NULL arguments are treated as identity transformations.

Syntax


D3DXMATRIX* D3DXMatrixTransformation2D(
  _Inout_  D3DXMATRIX *pOut,
  _In_     const D3DXVECTOR2 *pScalingCenter,
  _In_     FLOAT ScalingRotation,
  _In_     const D3DXVECTOR2 *pScaling,
  _In_     const D3DXVECTOR2 *pRotationCenter,
  _In_     FLOAT Rotation,
  _In_     const D3DXVECTOR2 *pTranslation
);

Parameters

pOut [in, out]

Type: D3DXMATRIX*

Pointer to the D3DXMATRIX structure that contains the result of the transformations.

pScalingCenter [in]

Type: const D3DXVECTOR2*

Pointer to a D3DXVECTOR2, a point identifying the scaling center. If this argument is NULL, an identity Msc matrix is applied to the formula in Remarks.

ScalingRotation [in]

Type: FLOAT

Pointer to the scaling rotation factor.

pScaling [in]

Type: const D3DXVECTOR2*

Pointer to a D3DXVECTOR2 structure, a point identifying the scale. If this argument is NULL, an identity Ms matrix is applied to the formula in Remarks.

pRotationCenter [in]

Type: const D3DXVECTOR2*

Pointer to a D3DXVECTOR2 structure, a point identifying the rotation center. If this argument is NULL, an identity Mrc matrix is applied to the formula in Remarks.

Rotation [in]

Type: FLOAT

The angle of rotation in radians.

pTranslation [in]

Type: const D3DXVECTOR2*

Pointer to a D3DXVECTOR2 structure, identifying the translation. If this argument is NULL, an identity Mt matrix is applied to the formula in Remarks.

Return value

Type: D3DXMATRIX*

Pointer to a D3DXMATRIX structure that contains the transformation matrix.

Remarks

This function calculates the transformation matrix with the following formula, with matrix concatenation evaluated in left-to-right order:

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

where:

Mout = output matrix (pOut)

Msc = scaling center matrix (pScalingCenter)

Msr = scaling rotation matrix (pScalingRotation)

Ms = scaling matrix (pScaling)

Mrc = center of rotation matrix (pRotationCenter)

Mr = rotation matrix (Rotation)

Mt = translation matrix (pTranslation)

The return value for this function is the same value returned in the pOut parameter. In this way, the D3DXMatrixTransformation2D function can be used as a parameter for another function.

For 3D transformations, use D3DXMatrixTransformation.

Requirements

Header

D3DX10Math.h

Library

D3DX10.lib

See also

Math Functions

 

 

Community Additions

ADD
Show:
© 2014 Microsoft