Função D3DXQuaternionMultiply (D3dx9math.h)
Observação
A biblioteca de utilitários D3DX foi preterida. Em vez disso, recomendamos que você use DirectXMath .
Multiplica dois quatérnios.
Sintaxe
D3DXQUATERNION* D3DXQuaternionMultiply(
_Inout_ D3DXQUATERNION *pOut,
_In_ const D3DXQUATERNION *pQ1,
_In_ const D3DXQUATERNION *pQ2
);
Parâmetros
-
pOut [in, out]
-
Tipo: D3DXQUATERNION*
Ponteiro para a estrutura D3DXQUATERNION que é o resultado da operação.
-
pQ1 [in]
-
Tipo: const D3DXQUATERNION*
Ponteiro para uma estrutura D3DXQUATERNION de origem.
-
pQ2 [in]
-
Tipo: const D3DXQUATERNION*
Ponteiro para uma estrutura D3DXQUATERNION de origem.
Valor retornado
Tipo: D3DXQUATERNION*
Ponteiro para uma estrutura D3DXQUATERNION que é o produto de dois quatérnios.
Comentários
O resultado representa a rotação Q1 seguida pela rotação Q2 (Out = Q2 * Q1). Isso é feito para que D3DXQuaternionMultiply mantenha a mesma semântica que D3DXMatrixMultiply porque os quatérnios de unidade podem ser considerados como outra maneira de representar matrizes de rotação.
As transformações são concatenadas na mesma ordem para as funções D3DXQuaternionMultiply e D3DXMatrixMultiply . Por exemplo, supondo que mX e mY representem as mesmas rotações que qX e qY, m e q representarão as mesmas rotações.
D3DXMatrixMultiply(&m, &mX, &mY);
D3DXQuaternionMultiply(&q, &qX, &qY);
A multiplicação de quatérnios não é commutativa.
O valor retornado para essa função é o mesmo valor retornado no parâmetro pOut . Dessa forma, a função D3DXQuaternionMultiply pode ser usada como um parâmetro para outra função.
Use D3DXQuaternionNormalize para qualquer entrada de quatérnio que ainda não esteja normalizada.
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também