Export (0) Print
Expand All

D3DXQUATERNION structure

Describes a quaternion.

Syntax


typedef struct D3DXQUATERNION {
  FLOAT x;
  FLOAT y;
  FLOAT z;
  FLOAT w;
} D3DXQUATERNION, *LPD3DXQUATERNION;

Members

x

Type: FLOAT

The x-component.

y

Type: FLOAT

The y-component.

z

Type: FLOAT

The z-component.

w

Type: FLOAT

The w-component.

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 axis-angle 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

Header

D3dx9math.h

See also

Vectors, Vertices, and Quaternions (Direct3D 9)

 

 

Community Additions

ADD
Show:
© 2014 Microsoft