Функция 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 для любых входных данных кватерниона, которые еще не нормализованы.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел