Метод ID3DXMATRIXStack::RotateAxis (D3dx9math.h)

Примечание

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

Вращается (относительно мирового координатного пространства) вокруг произвольной оси.

Синтаксис

HRESULT RotateAxis(
  [in] const D3DXVECTOR3 *pV,
  [in]       FLOAT       Angle
);

Параметры

pV [in]

Тип: const D3DXVECTOR3*

Указатель на произвольную ось поворота. См . раздел D3DXVECTOR3.

Угол [в]

Тип: FLOAT

Угол поворота произвольной оси в радианах. Углы измеряются против часовой стрелки при взгляде вдоль произвольной оси к источнику.

Возвращаемое значение

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается сбоем, возвращаемое значение можно D3DERR_INVALIDCALL.

Комментарии

Этот метод добавляет поворот в стек матрицы с вычисляемой матрицей поворота следующим образом:

D3DXMATRIX tmp;
D3DXMatrixRotationAxis( &tmp, pV, angle );
m_stack[m_currentPos] = m_stack[m_currentPos] * tmp;

Так как поворот умножается вправо на стек матрицы, поворот происходит относительно мирового координатного пространства.

Требования

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

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

ID3DXMATRIXStack

D3DXMatrixRotationAxis

ID3DXMATRIXStack::RotateAxisLocal

ID3DXMATRIXStack::RotateYawPitchRoll

ID3DXMATRIXStack::RotateYawPitchRollLocal