Структура D3DXQUATERNION (D3dx9math.h)

Примечание

Служебная библиотека D3DX является устаревшей. Вместо этого рекомендуется использовать DirectXMath .

Описывает кватернион.

Синтаксис

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

Члены

x

Тип: FLOAT

X-компонент.

y

Тип: FLOAT

Компонент y.

z

Тип: FLOAT

Z-компонент.

w

Тип: FLOAT

W-компонент.

Комментарии

Кватернионы добавляют четвертый элемент к значениям [x, y, z], которые определяют вектор, что приводит к произвольным 4D-векторам. Однако ниже показано, как каждый элемент кватерниона единиц соотносится с поворотом угла оси (где q представляет единицу кватерниона (x, y, z, w), ось нормализуется, а 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, которые реализуют перегруженные конструкторы и операторы присваивания, унарные и двоичные операторы (включая равенство).

Требования

Требование Значение
Заголовок
D3dx9math.h

См. также раздел

Структуры D3DX

Векторы, вершины и кватернионы (Direct3D 9)