D3DXMatrixTransformation, fonction (D3dx9math. h)

Crée une matrice de transformation. Les arguments null sont traités comme des transformations d’identité.

Syntaxe

D3DXMATRIX* D3DXMatrixTransformation(
  _Inout_       D3DXMATRIX     *pOut,
  _In_    const D3DXVECTOR3    *pScalingCenter,
  _In_    const D3DXQUATERNION *pScalingRotation,
  _In_    const D3DXVECTOR3    *pScaling,
  _In_    const D3DXVECTOR3    *pRotationCenter,
  _In_    const D3DXQUATERNION *pRotation,
  _In_    const D3DXVECTOR3    *pTranslation
);

Paramètres

moue [ in, out]

Type : D3DXMATRIX*

Pointeur vers la structure D3DXMATRIX qui est le résultat de l’opération.

pScalingCenter [ dans]

Type : const D3DXVECTOR3 *

Pointeur vers une structure D3DXVECTOR3 , identifiant le point central du redimensionnement. Si cet argument a la valeur null, une matrice Identity M SC est appliquée à la formule dans la section Notes.

pScalingRotation [ dans]

Type : const D3DXQUATERNION *

Pointeur vers une structure D3DXQUATERNION qui spécifie la rotation de la mise à l’échelle. Si cet argument a la valeur null, une matrice Identity M SR est appliquée à la formule dans la section Notes.

pScaling [ dans]

Type : const D3DXVECTOR3 *

Pointeur vers une structure D3DXVECTOR3 , le vecteur de mise à l’échelle. Si cet argument a la valeur null, une matrice d’identité MS est appliquée à la formule dans les notes.

pRotationCenter [ dans]

Type : const D3DXVECTOR3 *

Pointeur vers une structure D3DXVECTOR3 , un point qui identifie le centre de rotation. Si cet argument a la valeur null, une matrice Identity M RC est appliquée à la formule dans la section Notes.

protique [ dans]

Type : const D3DXQUATERNION *

Pointeur vers une structure D3DXQUATERNION qui spécifie la rotation. Si cet argument a la valeur null, une matrice Identity M r est appliquée à la formule dans la section Notes.

pTranslation [ dans]

Type : const D3DXVECTOR3 *

Pointeur vers une structure D3DXVECTOR3 représentant la translation. Si cet argument a la valeur null, une matrice Identity MT est appliquée à la formule dans la section Notes.

Valeur retournée

Type : D3DXMATRIX*

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

Remarques

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ù :

M out = matrice de sortie (moue)

M SC = matrice du centre de mise à l’échelle (pScalingCenter)

M SR = matrice de rotation de la mise à l’échelle (pScalingRotation)

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

M RC = Centre de rotation de la matrice (pRotationCenter)

M r = matrice de rotation (protique)

MT = matrice de translation (pTranslation)

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

Pour les transformations 2D, utilisez D3DXMatrixTransformation2D.

Configuration requise

Condition requise Valeur
En-tête
D3dx9math. h
Bibliothèque
D3dx9. lib

Voir aussi

Fonctions mathématiques

D3DXMatrixAffineTransformation

Transformations (Direct3D 9)