Поделиться через


Функция D3DXQuaternionSquad (D3dx9math.h)

Примечание

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

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

Синтаксис

D3DXQUATERNION* D3DXQuaternionSquad(
  _Inout_       D3DXQUATERNION *pOut,
  _In_    const D3DXQUATERNION *pQ1,
  _In_    const D3DXQUATERNION *pA,
  _In_    const D3DXQUATERNION *pB,
  _In_    const D3DXQUATERNION *pC,
  _In_          FLOAT          t
);

Параметры

pOut [in, out]

Тип: D3DXQUATERNION*

Указатель на структуру D3DXQUATERNION , которая является результатом операции.

pQ1 [in]

Тип: const D3DXQUATERNION*

Указатель на исходную структуру D3DXQUATERNION .

pA [in]

Тип: const D3DXQUATERNION*

Указатель на исходную структуру D3DXQUATERNION .

pB [in]

Тип: const D3DXQUATERNION*

Указатель на исходную структуру D3DXQUATERNION .

pC [in]

Тип: const D3DXQUATERNION*

Указатель на исходную структуру D3DXQUATERNION .

t [in]

Тип: FLOAT

Параметр, указывающий, насколько интерполяция между кватернионами.

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

Тип: D3DXQUATERNION*

Указатель на структуру D3DXQUATERNION , которая является результатом интерполяции сферического четырехугольника.

Комментарии

Эта функция использует следующую последовательность операций сферической линейной интерполяции:

Slerp(Slerp(pQ1, pC, t), Slerp(pA, pB, t), 2t(1 - t))

Возвращаемое значение для этой функции совпадает с значением, возвращаемым в параметре pOut . Таким образом, функцию D3DXQuaternionSquad можно использовать в качестве параметра для другой функции.

Пример интерполяции между кватернионами см. в примере SkinnedMesh. Вы можете получить этот пример и узнать о нем из пакета SDK для DirectX. Сведения о пакете SDK для DirectX см. в разделе Где находится пакет SDK для DirectX?.

Используйте D3DXQuaternionNormalize для любых входных данных кватерниона, которые еще не нормализованы.

Требования

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

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

Математические функции

D3DXQuaternionExp

D3DXQuaternionLn

D3DXQuaternionSquadSetup