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
D3dx9math.h
Libreria
D3dx9.lib

Vedi anche

Funzioni matematiche

D3DXMatrixAffineTransformation2D

Trasformazioni (Direct3D 9)