Funzione D3DXMatrixAffineTransformation (D3DX10Math.h)
Nota
La libreria di utilità D3DX è deprecata. È consigliabile usare invece DirectXMath .
Compila una matrice di trasformazione affine 3D. Gli argomenti NULL vengono considerati come trasformazioni di identità.
Sintassi
D3DXMATRIX* D3DXMatrixAffineTransformation(
_In_ D3DXMATRIX *pOut,
_In_ FLOAT Scaling,
_In_ const D3DXVECTOR3 *pRotationCenter,
_In_ const D3DXQUATERNION *pRotation,
_In_ const D3DXVECTOR3 *pTranslation
);
Parametri
-
pOut [in]
-
Tipo: D3DXMATRIX*
Puntatore al D3DXMATRIX che è il risultato dell'operazione.
-
Ridimensionamento [in]
-
Tipo: FLOAT
Fattore di ridimensionamento.
-
pRotationCenter [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a un 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 un 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 una matrice di trasformazione affine.
Commenti
Questa funzione calcola la matrice di trasformazione affine con la formula seguente, con la concatenazione matrice valutata nell'ordine a sinistra a destra:
Mout = Ms * (Mrc)-1 * Mr * Mrc * Mt
dove:
Mout = matrice di output (pOut)
Ms = matrice di ridimensionamento (ridimensionamento)
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 D3DXMatrixAffineTransformation può essere usata come parametro per un'altra funzione.
Per le trasformazioni affine 2D, usare D3DXMatrixAffineTransformation2D.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche