Funzione D3DXMatrixTransformation2D (D3dx9math.h)
Nota
La libreria di utilità D3DX è deprecata. È consigliabile usare invece DirectXMath .
Compila una matrice di trasformazione 2D che rappresenta le trasformazioni nel piano xy. Gli argomenti NULL vengono considerati come trasformazioni di identità.
Sintassi
D3DXMATRIX* D3DXMatrixTransformation2D(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR2 *pScalingCenter,
_In_ FLOAT pScalingRotation,
_In_ const D3DXVECTOR2 *pScaling,
_In_ const D3DXVECTOR2 *pRotationCenter,
_In_ FLOAT Rotation,
_In_ const D3DXVECTOR2 *pTranslation
);
Parametri
-
pOut [in, out]
-
Tipo: D3DXMATRIX*
Puntatore alla struttura D3DXMATRIX che contiene il risultato delle trasformazioni.
-
pScalingCenter [in]
-
Tipo: const D3DXVECTOR2*
Puntatore a una struttura D3DXVECTOR2 , un punto che identifica il centro di ridimensionamento. Se questo argomento è NULL, viene applicata una matrice identity Msc alla formula in Osservazioni.
-
pScalingRotation [in]
-
Tipo: FLOAT
Fattore di rotazione del ridimensionamento.
-
pScaling [in]
-
Tipo: const D3DXVECTOR2*
Puntatore a una struttura D3DXVECTOR2 , un punto che identifica la scala. Se questo argomento è NULL, viene applicata una matrice ms di identità alla formula in Osservazioni.
-
pRotationCenter [in]
-
Tipo: const D3DXVECTOR2*
Puntatore a una struttura D3DXVECTOR2 , un punto che identifica il centro di rotazione. Se questo argomento è NULL, viene applicata una matriceidentity M rc alla formula in Osservazioni.
-
Rotazione [in]
-
Tipo: FLOAT
Angolo di rotazione nei radianti.
-
pTranslation [in]
-
Tipo: const D3DXVECTOR2*
Puntatore a una struttura D3DXVECTOR2 , identificando 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 contiene 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 (rotazione)
Mt = matrice di traduzione (pTranslation)
Il valore restituito per questa funzione è lo stesso valore restituito nel parametro pOut. In questo modo, la funzione D3DXMatrixTransformation2D può essere usata come parametro per un'altra funzione.
Per le trasformazioni 3D, usare D3DXMatrixTransformation.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche