function angle(a, b) {
return Math.acos((a.x * b.x + a.y * b.y + a.z * b.z) / (length(a) * length(b)));
}
function makeLine(a, b) {
return new Point(b.x - a.x, b.y - a.y, b.z - a.z);
}
function issame(a,b)
{
return a.x==b.x&&a.y==b.y&&a.z==b.z;
}
function out_or_in_triangle(a, b, c, p) {
if(issame(a,p)||issame(b,p)||issame(c,p))
return true;
var p1 = makeLine(p, a);
var p2 = makeLine(p, b);
var p3 = makeLine(p, c);
var s1 = angle(p1, p2);
var s2 = angle(p2, p3);
var s3 = angle(p3, p1);
return Math.abs((s1+s2+s3)-(2*Math.PI))<0.001;
}
点P 和 A B C连接 如果APB APC BPC 夹角加起来是2PI 就是内部的 不是就在外面 如果在点上面就不管了