D3DXQUATERNION structure (D3dx9math.h)
Note
The D3DX utility library is deprecated. We recommend that you use DirectXMath instead.
Describes a quaternion.
Syntax
typedef struct D3DXQUATERNION {
FLOAT x;
FLOAT y;
FLOAT z;
FLOAT w;
} D3DXQUATERNION, *LPD3DXQUATERNION;
Members

x

Type: FLOAT

The xcomponent.

y

Type: FLOAT

The ycomponent.

z

Type: FLOAT

The zcomponent.

w

Type: FLOAT

The wcomponent.
Remarks
Quaternions add a fourth element to the [ x, y, z] values that define a vector, resulting in arbitrary 4D vectors. However, the following illustrates how each element of a unit quaternion relates to an axisangle rotation (where q represents a unit quaternion (x, y, z, w), axis is normalized, and theta is the desired CCW rotation about the axis):
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++ programmers can take advantage of operator overloading and type casting with the D3DXQUATERNION Extensions, which implement overloaded constructors and assignment, unary, and binary (including equality) operators.
Requirements
Requirement  Value 

Header 

See also