Función D3DXQuaternionMultiply (D3DX10Math.h)
Nota
La biblioteca de utilidades D3DX10 está en desuso. Se recomienda usar DirectXMath en su lugar.
Multiplica dos cuaterniones.
Sintaxis
D3DXQUATERNION* D3DXQuaternionMultiply(
_Inout_ D3DXQUATERNION *pOut,
_In_ const D3DXQUATERNION *pQ1,
_In_ const D3DXQUATERNION *pQ2
);
Parámetros
-
pOut [in, out]
-
Tipo: D3DXQUATERNION*
Puntero al D3DXQUATERNION que es el resultado de la operación.
-
pQ1 [in]
-
Tipo: const D3DXQUATERNION*
Puntero a una estructura D3DXQUATERNION de origen.
-
pQ2 [in]
-
Tipo: const D3DXQUATERNION*
Puntero a una estructura D3DXQUATERNION de origen.
Valor devuelto
Tipo: D3DXQUATERNION*
Puntero a una estructura D3DXQUATERNION que es el producto de dos cuaterniones.
Comentarios
El resultado representa la rotación Q1 seguida de la rotación Q2 (Out = Q2 * Q1). Esto se hace para que D3DXQuaternionMultiply mantenga la misma semántica que D3DXMatrixMultiply porque los cuaterniones de unidad se pueden considerar como otra manera de representar matrices de rotación.
Las transformaciones se concatenan en el mismo orden para las funciones D3DXQuaternionMultiply y D3DXMatrixMultiply . Por ejemplo, suponiendo que mX y mY representen las mismas rotaciones que qX y qY, tanto m como q representarán las mismas rotaciones.
D3DXMatrixMultiply(&m, &mX, &mY);
D3DXQuaternionMultiply(&q, &qX, &qY);
La multiplicación de cuaterniones no es conmutativa.
El valor devuelto de esta función es el mismo valor devuelto en el parámetro pOut. De esta manera, la función D3DXQuaternionMultiply se puede usar como parámetro para otra función.
Use D3DXQuaternionNormalize para cualquier entrada de cuaternión que aún no esté normalizada.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|
Consulte también