XMVectorBaryCentric 函数 (directxmath.h)
使用指定的位置向量返回以 Barycentric 坐标表示的点。
语法
XMVECTOR XM_CALLCONV XMVectorBaryCentric(
[in] FXMVECTOR Position0,
[in] FXMVECTOR Position1,
[in] FXMVECTOR Position2,
[in] float f,
[in] float g
) noexcept;
参数
[in] Position0
第一个位置。
[in] Position1
第二个位置。
[in] Position2
第三个位置。
[in] f
加权系数。 请参阅“备注”。
[in] g
加权系数。 请参阅“备注”。
返回值
返回 Barycentric 坐标。
注解
此函数提供了一种独立于三角形所在位置的三角形及其周围点的了解方法。 此函数使用以下公式返回结果点: Position0> + f> (Position1-Position0>) + g> (Position2-Position0>) 。
Position0>Position1>Position2> 平面中的任何点都可以由 barycentric 坐标 (f,g>>) 表示,其中 f> 控制 Position1> 在结果中加权的量,g> 控制 Position2> 在结果中加权的量。 最后,1-f-g>> 控制 Position0> 在结果中加权的量。
请注意以下关系。
- 如果 (f>=0 && g>=0 && 1-f-g>=0) ,则点位于三角形 Position0>Position1>Position2> 内。
- 如果 (f==0 && g>=0 && 1-f-g>=0) ,则点位于 Line Position0>Position2> 上。
- 如果 (f>=0 && g==0 && 1-f-g>=0) ,则点位于 Line Position0>Position1> 上。
- 如果 (f>=0 && g>=0 && 1-f-g==0) ,则点位于 Line Position1>Position2> 上。
平台要求
Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 与 Windows SDK for Windows 8。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | directxmath.h (包括 DirectXMath.h) |