Fonction XMQuaternionMultiply (directxmath.h)
Calcule le produit de deux quaternions.
Syntaxe
XMVECTOR XM_CALLCONV XMQuaternionMultiply(
[in] FXMVECTOR Q1,
[in] FXMVECTOR Q2
) noexcept;
Paramètres
[in] Q1
Premier quaternion.
[in] Q2
Deuxième quaternion.
Valeur retournée
Retourne le produit de deux quaternions sous la forme Q2*Q1.
Remarques
Les fonctions quaternion DirectXMath utilisent un vecteur XMVECTOR 4 pour représenter des quaternions, où les composants X, Y et Z sont la partie vectorielle et le composant W est la partie scalaire.
Le résultat représente la rotation Q1 suivie de la rotation Q2 pour être cohérente avec la concaténation XMMatrixMulplity, car cette fonction est généralement utilisée pour concaténer des quaternions qui représentent des rotations (c’est-à-dire qu’elle retourne Q2*Q1).
Cette fonction calcule l’équivalent du pseudo-code suivant :
XMVECTOR Result;
Result.x = (Q2.w * Q1.x) + (Q2.x * Q1.w) + (Q2.y * Q1.z) - (Q2.z * Q1.y);
Result.y = (Q2.w * Q1.y) - (Q2.x * Q1.z) + (Q2.y * Q1.w) + (Q2.z * Q1.x);
Result.z = (Q2.w * Q1.z) + (Q2.x * Q1.y) - (Q2.y * Q1.x) + (Q2.z * Q1.w);
Result.w = (Q2.w * Q1.w) - (Q2.x * Q1.x) - (Q2.y * Q1.y) - (Q2.z * Q1.z);
return Result;
Configuration requise pour la plateforme
Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le Kit de développement logiciel (SDK) Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et Windows Phone 8 applications.Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | directxmath.h |