XMVectorHermite 函数 (directxmath.h)
使用指定的向量执行 Hermite 样条内插。
语法
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;
平台要求
具有 Windows SDK for Windows 8 的 Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | directxmath.h (包括 DirectXMath.h) |