通过叉乘判断结果向量的Z方向,叉乘前先将两个向量的Z设置为0
叉乘前先将两个向量的Z设置为0为了使两个向量都处于XY平面中。
叉乘的结果是一个垂直于XY平面的向量,所以结果应该是一个(0,0,ZValue)的向量。
根据叉乘的左手(右手)原则,通过Z的正负判断向量的关系。
tempVec1.Z = 0;
tempVec2.Z = 0;
FVector ret = FVector::CrossProduct(tempVec1, tempVec2);
if (ret.Z > 0)
{
TurnLeft = true;
}
else
{
TurnRight = true;
}
左手坐标系下,如果TurnLeft为true,表示tempVec1在tempVec2的左边。