判断平面上,点在三角形内

时间:2022-04-09 10:25:20
//判断 V1, V2, V3是否是逆时针顺序
bool IsCCW(V1, V2, V3)
{
    e1 = V2-V1;
    e2 = v3-v2;
    v = e1xe2;
    return v.z > 0; // v.z > 0 逆时针;
                    // v.z < 0 顺时针;
                    // v.z == 0 三点共线;
}

//判断点v 是否在三角形(v1, v2, v3)内
bool IsInTriangle(v, v1, v2, v3)
{
    return (IsCCW(v, v1, v2) && IsCCW(v, v2, v3) && IsCCW(v, v3, v1));
}