Partager via


Fonction D3DXMatrixTransformation2D (D3DX10Math.h)

Notes

La bibliothèque d’utilitaireS D3DX10 est déconseillée. Nous vous recommandons d’utiliser DirectXMath à la place.

Génère une matrice de transformation 2D qui représente les transformations dans le plan xy. Les arguments NULL sont traités comme des transformations d’identité.

Syntaxe

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
);

Paramètres

pOut [in, out]

Type : D3DXMATRIX*

Pointeur vers la structure D3DXMATRIX qui contient le résultat des transformations.

pScalingCenter [in]

Type : const D3DXVECTOR2*

Pointeur vers un D3DXVECTOR2, point identifiant le centre de mise à l’échelle. Si cet argument a la valeur NULL, une matrice Msc d’identité est appliquée à la formule dans Remarques.

ScaleRotation [in]

Type : FLOAT

Pointeur vers le facteur de rotation de mise à l’échelle.

pScaling [in]

Type : const D3DXVECTOR2*

Pointeur vers une structure D3DXVECTOR2, point identifiant l’échelle. Si cet argument a la valeur NULL, une matrice Ms d’identité est appliquée à la formule dans Remarques.

pRotationCenter [in]

Type : const D3DXVECTOR2*

Pointeur vers une structure D3DXVECTOR2, point identifiant le centre de rotation. Si cet argument a la valeur NULL, une matrice Mrc d’identité est appliquée à la formule dans Remarques.

Rotation [in]

Type : FLOAT

Angle de rotation en radians.

pTranslation [in]

Type : const D3DXVECTOR2*

Pointeur vers une structure D3DXVECTOR2, identifiant la traduction. Si cet argument a la valeur NULL, une matrice Mt d’identité est appliquée à la formule dans Remarques.

Valeur retournée

Type : D3DXMATRIX*

Pointeur vers une structure D3DXMATRIX qui contient la matrice de transformation.

Notes

Cette fonction calcule la matrice de transformation avec la formule suivante, avec la concaténation de matrice évaluée dans l’ordre de gauche à droite :

Mout = (Msc)⁻¹* (Msr)⁻¹* Ms * Msr * Msc * (Mrc)⁻¹* Mr * Mrc * Mt

où :

Mout = matrice de sortie (pOut)

Msc = matrice centrale de mise à l’échelle (pScalingCenter)

Msr = matrice de rotation de mise à l’échelle (pScalingRotation)

Ms = matrice de mise à l’échelle (pScaling)

Mrc = matrice de centre de rotation (pRotationCenter)

Mr = matrice de rotation (Rotation)

Mt = matrice de traduction (pTranslation)

La valeur de retour de cette fonction est la même valeur retournée dans le paramètre pOut. De cette façon, la fonction D3DXMatrixTransformation2D peut être utilisée comme paramètre pour une autre fonction.

Pour les transformations 3D, utilisez D3DXMatrixTransformation.

Spécifications

Condition requise Valeur
En-tête
D3DX10Math.h
Bibliothèque
D3DX10.lib

Voir aussi

Fonctions mathématiques