Функция XMVectorHermite (directxmath.h)
Выполняет интерполяцию сплайна Эрмита, используя указанные векторы.
Синтаксис
XMVECTOR XM_CALLCONV XMVectorHermite(
[in] FXMVECTOR Position0,
[in] FXMVECTOR Tangent0,
[in] FXMVECTOR Position1,
[in] GXMVECTOR Tangent1,
[in] float t
) noexcept;
Параметры
[in] Position0
Первая позиция для интерполяции.
[in] Tangent0
Тангенсный вектор для первой позиции.
[in] Position1
Вторая позиция для интерполяции.
[in] Tangent1
Тангенсный вектор для второй позиции.
[in] t
Коэффициент управления интерполяцией.
Возвращаемое значение
Возвращает вектор, содержащий интерполяцию.
Комментарии
Следующий псевдокод демонстрирует работу функции:
XMVECTOR Result;
float t2 = t * t;
float t3 = t2* t;
float P0 = 2.0f * t3 - 3.0f * t2 + 1.0f;
float T0 = t3 - 2.0f * t2 + t;
float P1 = -2.0f * t3 + 3.0f * t2;
float T1 = t3 - t2;
Result.x = P0 * Position0.x + T0 * Tangent0.x + P1 * Position1.x + T1 * Tangent1.x;
Result.y = P0 * Position0.y + T0 * Tangent0.y + P1 * Position1.y + T1 * Tangent1.y;
Result.z = P0 * Position0.z + T0 * Tangent0.z + P1 * Position1.z + T1 * Tangent1.z;
Result.w = P0 * Position0.w + T0 * Tangent0.w + P1 * Position1.w + T1 * Tangent1.w;
return Result;
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с Windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и Windows Phone 8 приложений.Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | directxmath.h (включая DirectXMath.h) |