Funzione D3DXQuaternionMultiply (D3dx9math.h)
Nota
La libreria di utilità D3DX è deprecata. È consigliabile usare invece DirectXMath .
Moltiplica due quaternioni.
Sintassi
D3DXQUATERNION* D3DXQuaternionMultiply(
_Inout_ D3DXQUATERNION *pOut,
_In_ const D3DXQUATERNION *pQ1,
_In_ const D3DXQUATERNION *pQ2
);
Parametri
-
pOut [in, out]
-
Tipo: D3DXQUATERNION*
Puntatore alla struttura D3DXQUATERNION risultante dall'operazione.
-
pQ1 [in]
-
Tipo: const D3DXQUATERNION*
Puntatore a una struttura D3DXQUATERNION di origine.
-
pQ2 [in]
-
Tipo: const D3DXQUATERNION*
Puntatore a una struttura D3DXQUATERNION di origine.
Valore restituito
Tipo: D3DXQUATERNION*
Puntatore a una struttura D3DXQUATERNION che rappresenta il prodotto di due quaternioni.
Commenti
Il risultato rappresenta la rotazione Q1 seguita dalla rotazione Q2 (Out = Q2 * Q1). Questa operazione viene eseguita in modo che D3DXQuaternionMultiply mantengano la stessa semantica di D3DXMatrixMultiply perché i quaternioni unità possono essere considerati come un altro modo per rappresentare le matrici di rotazione.
Le trasformazioni vengono concatenate nello stesso ordine per le funzioni D3DXQuaternionMultiply e D3DXMatrixMultiply . Ad esempio, supponendo che mX e mY rappresentino le stesse rotazioni di qX e qY, sia m che q rappresenteranno le stesse rotazioni.
D3DXMatrixMultiply(&m, &mX, &mY);
D3DXQuaternionMultiply(&q, &qX, &qY);
La moltiplicazione dei quaternioni non è commutativa.
Il valore restituito per questa funzione è lo stesso valore restituito nel parametro pOut . In questo modo, la funzione D3DXQuaternionMultiply può essere usata come parametro per un'altra funzione.
Usare D3DXQuaternionNormalize per qualsiasi input quaternione non già normalizzato.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche