Fungsi XMQuaternionMultiply (directxmath.h)
Menghitung produk dari dua kuaternion.
Sintaks
XMVECTOR XM_CALLCONV XMQuaternionMultiply(
[in] FXMVECTOR Q1,
[in] FXMVECTOR Q2
) noexcept;
Parameter
[in] Q1
Kuaternion pertama.
[in] Q2
Kuaternion kedua.
Nilai kembali
Mengembalikan produk dari dua kuaternion sebagai Q2*Q1.
Keterangan
Fungsi kuaternion DirectXMath menggunakan XMVECTOR 4-vektor untuk mewakili kuaternion, di mana komponen X, Y, dan Z adalah bagian vektor dan komponen W adalah bagian skalar.
Hasilnya mewakili rotasi Q1 diikuti oleh rotasi Q2 agar konsisten dengan perangkaian XMMatrixMulplity karena fungsi ini biasanya digunakan untuk menggabungkan kuaternion yang mewakili rotasi (yaitu mengembalikan Q2*Q1).
Fungsi ini menghitung yang setara dengan pseudo-code berikut:
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;
Persyaratan Platform
Microsoft Visual Studio 2010 atau Microsoft Visual Studio 2012 dengan Windows SDK untuk Windows 8. Didukung untuk aplikasi desktop Win32, aplikasi Windows Store, dan aplikasi Windows Phone 8.Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Windows |
Header | directxmath.h |