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)

另请参阅

几何矢量函数

XMVectorHermiteV