![]() |
![]() |
![]() |
Builds a 2-D transformation matrix that represents transformations in the x-y plane. NULL arguments are treated as identity transformations.
Syntax
D3DXMATRIX *WINAPI D3DXMatrixTransformation2D(
D3DXMATRIX *pOut, CONST D3DXVECTOR2 *pScalingCenter, FLOAT *pScalingRotation, CONST D3DXVECTOR2 *pScaling, CONST D3DXVECTOR2 *pRotationCenter, FLOAT Rotation, CONST D3DXVECTOR2 *pTranslation );
Parameters
- pOut
- [in, out] Pointer to the D3DXMATRIX structure that contains the result of the transformations.
- pScalingCenter
- [in] Pointer to a D3DXVECTOR2 structure, a point identifying the scaling center. If this argument is NULL, an identity Msc matrix is applied to the formula in Remarks.
- pScalingRotation
- [in] Pointer to the scaling rotation factor.
- pScaling
- [in] 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] 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] The angle of rotation in radians.
- pTranslation
- [in] 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
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 3-D transformations, use D3DXMatrixTransformation.
Function Information
Header d3dx9math.h Import library d3dx9.lib Minimum operating systems Windows 98
See Also
D3DXMatrixAffineTransformation2D, Matrix Transforms