Funzione D3DXMatrixTransformation (D3dx9math.h)
Nota
La libreria di utilità D3DX è deprecata. È consigliabile usare invece DirectXMath .
Compila una matrice di trasformazione. Gli argomenti NULL vengono considerati come trasformazioni di identità.
Sintassi
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
);
Parametri
-
pOut [in, out]
-
Tipo: D3DXMATRIX*
Puntatore alla struttura D3DXMATRIX che è il risultato dell'operazione.
-
pScalingCenter [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , identificando il punto centrale di ridimensionamento. Se questo argomento è NULL, viene applicata una matrice identity Msc alla formula in Osservazioni.
-
pScalingRotation [in]
-
Tipo: const D3DXQUATERNION*
Puntatore a una struttura D3DXQUATERNION che specifica la rotazione del ridimensionamento. Se questo argomento è NULL, viene applicata una matriceidentity M sr alla formula in Osservazioni.
-
pScaling [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , vettore di ridimensionamento. Se questo argomento è NULL, viene applicata una matrice ms di identità alla formula in Osservazioni.
-
pRotationCenter [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , un punto che identifica il centro di rotazione. Se questo argomento è NULL, viene applicata una matriceidentity M rc alla formula in Osservazioni.
-
pRotation [in]
-
Tipo: const D3DXQUATERNION*
Puntatore a una struttura D3DXQUATERNION che specifica la rotazione. Se questo argomento è NULL, viene applicata una matrice identity Mr alla formula in Osservazioni.
-
pTranslation [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 che rappresenta la traduzione. Se questo argomento è NULL, viene applicata una matrice identity Mt alla formula in Osservazioni.
Valore restituito
Tipo: D3DXMATRIX*
Puntatore a una struttura D3DXMATRIX che rappresenta la matrice di trasformazione.
Commenti
Questa funzione calcola la matrice di trasformazione con la formula seguente, con la concatenazione matrice valutata nell'ordine a sinistra a destra:
M out = (Msc)⁻¹ * (M sr)⁻¹* Ms * Msr * M sc * (Mrc)⁻¹* M r * Mrc * Mt
dove:
Mout = matrice di output (pOut)
Msc = matrice del centro di ridimensionamento (pScalingCenter)
Msr = matrice di rotazione del ridimensionamento (pScalingRotation)
Ms = matrice di ridimensionamento (pScaling)
Mrc = centro della matrice di rotazione (pRotationCenter)
Mr = matrice di rotazione (pRotation)
Mt = matrice di traduzione (pTranslation)
Il valore restituito per questa funzione è lo stesso valore restituito nel parametro pOut . In questo modo, la funzione D3DXMatrixTransformation può essere usata come parametro per un'altra funzione.
Per le trasformazioni 2D, usare D3DXMatrixTransformation2D.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche