//判断 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)); }