XMQuaternionMultiply 函式 (directxmath.h)
計算兩個四元數的乘積。
語法
XMVECTOR XM_CALLCONV XMQuaternionMultiply(
[in] FXMVECTOR Q1,
[in] FXMVECTOR Q2
) noexcept;
參數
[in] Q1
第一個四元數。
[in] Q2
第二個四元數。
傳回值
傳回兩個四元數的乘積作為 Q2*Q1。
備註
DirectXMath 四元數函數使用 XMVECTOR 4 向量來表示四元數,其中 X、Y 和 Z 元件是向量部分,而 W 元件是純量部分。
結果代表旋轉 Q1,後面接著旋轉 Q2,使其與 XMMatrixMulplity 串連一致,因為此函式通常用來串連代表旋轉 (的四元數,亦即它會傳回 Q2*Q1) 。
此函式會計算與下列虛擬程式代碼相等的 :
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;
平臺需求
Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 與 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | directxmath.h |