Platform SDK: DirectX

D3DXQUATERNION

D3DXQUATERNION 構造体は、クオータニオンを記述する。

typedef struct D3DXQUATERNION {
  float x, y, z, w;
} D3DXQUATERNION;

メンバ

x
x コンポーネント。
y
y コンポーネント。
z
z コンポーネント。
w
w コンポーネント。

注意

クオータニオンは、ベクトルを定義した [x, y, z] 値に第 4 元を追加し、任意の 4D ベクトルを生成する。次に、単位クオータニオンの各元が軸/角度の回転にどのように関係しているかを示す (ただし、q は単位クオータニオン (x, y, z, w) を表し、axis は正規化され、theta は軸を回転軸とした CCW 回転である)。

q.x = sin(theta/2) * axis.x
q.y = sin(theta/2) * axis.y
q.z = sin(theta/2) * axis.z
q.w = cos(theta/2)

C++ プログラマは、演算子のオーバーロード機能や型変換機能を利用できる。D3DXQUATERNION 構造体を C++ で実装すると、オーバーロードされたコンストラクタやオーバーロードされた代入演算子、単項演算子、および 2 項演算子 (等価演算子を含む) が実装される。詳細については、「C++ 固有の機能」を参照すること。

動作環境

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以上が必要。Windows 95 用に再配布可能な形で使用可能。
  バージョン : DirectX 7.0 が必要。
  ヘッダー : d3dxmath.h で宣言。

参照

D3DXPlaneDotD3DXPlaneDotCoordD3DXPlaneDotNormalD3DXPlaneIntersectLineD3DXPlaneFromPointNormalD3DXPlaneFromPointsD3DXPlaneTransform