Partager via


Structure D3DXQUATERNION (D3dx9math.h)

Notes

La bibliothèque d’utilitaireS D3DX est déconseillée. Nous vous recommandons d’utiliser DirectXMath à la place.

Décrit un quaternion.

Syntaxe

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

Membres

x

Type : FLOAT

Composant x.

y

Type : FLOAT

Composant y.

z

Type : FLOAT

Composant z.

w

Type : FLOAT

Composant w.

Notes

Les quaternions ajoutent un quatrième élément aux valeurs [ x, y, z] qui définissent un vecteur, ce qui entraîne des vecteurs 4D arbitraires. Toutefois, les éléments suivants illustrent comment chaque élément d’un quaternion unitaire est lié à une rotation axe-angle (où q représente un quaternion unitaire (x, y, z, w), l’axe est normalisé et le téta est la rotation CCW souhaitée sur l’axe ) :

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)

Les programmeurs C++ peuvent tirer parti de la surcharge des opérateurs et du cast de type avec les extensions D3DXQUATERNION, qui implémentent des constructeurs et des opérateurs d’affectation surchargés, unaires et binaires (y compris l’égalité).

Spécifications

Condition requise Valeur
En-tête
D3dx9math.h

Voir aussi

D3DX Structures

Vecteurs, sommets et quaternions (Direct3D 9)