XMQuaternionMultiply 関数 (directxmath.h)

2 つの四元数の積を計算します。

構文

XMVECTOR XM_CALLCONV XMQuaternionMultiply(
  [in] FXMVECTOR Q1,
  [in] FXMVECTOR Q2
) noexcept;

パラメーター

[in] Q1

最初の四元数。

[in] Q2

2 番目の四元数。

戻り値

2 つの四元数の積を 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

こちらもご覧ください

DirectXMath ライブラリの四元数関数