BOOL XMVectorNearEqual(
FXMVECTOR V1,
FXMVECTOR V2,
FXMVECTOR Epsilon
);
- 参数:
- V1、V2:要比较的两个向量。
- Epsilon:表示相等的误差范围的向量。
- 返回值:
- 如果两个向量的每个分量都在指定的误差范围内相等,则返回 TRUE,否则返回 FALSE。
使用示例:
#include <DirectXMath.h>
using namespace DirectX;
int main() {
XMVECTOR vector1 = XMVectorSet(1.0f, 2.0f, 3.0f, 4.0f);
XMVECTOR vector2 = XMVectorSet(1.01f, 2.02f, 3.03f, 4.04f);
// 定义一个误差范围的向量
XMVECTOR epsilon = XMVectorReplicate(0.1f);
// 使用XMVectorNearEqual进行近似相等比较
BOOL areEqual = XMVectorNearEqual(vector1, vector2, epsilon);
// 输出结果
printf("Vector 1: (%.2f, %.2f, %.2f, %.2f)\n",
XMVectorGetX(vector1), XMVectorGetY(vector1),
XMVectorGetZ(vector1), XMVectorGetW(vector1));
printf("Vector 2: (%.2f, %.2f, %.2f, %.2f)\n",
XMVectorGetX(vector2), XMVectorGetY(vector2),
XMVectorGetZ(vector2), XMVectorGetW(vector2));
printf("Are vectors near equal? %s\n", areEqual ? "Yes" : "No");
return 0;
}
在这个例子中,XMVectorNearEqual 函数用于比较两个向量的每个分量是否在指定的误差范围内相等。输出结果会告诉您这两个向量是否近似相等。
转载请注明出处:http://www.zyzy.cn/article/detail/27132/Win32 API/Directxmath.h/XMVectorNearEqual