}
int opposite_side(point3 p1,point3p2,plane3 s){
returndmult(pvec(s),subt(p1,s.a))*dmult(pvec(s),subt(p2,s.a))<-eps;
}
int opposite_side(point3 p1,point3p2,point3 s1,point3 s2,point3 s3){
returndmult(pvec(s1,s2,s3),subt(p1,s1))*dmult(pvec(s1,s2,s3),subt(p2,s1))<-eps;
}
int parallel(line3 u,line3 v){
returnvlen(xmult(subt(u.a,u.b),subt(v.a,v.b)))<eps;
}
int parallel(point3 u1,point3 u2,point3v1,point3 v2){
returnvlen(xmult(subt(u1,u2),subt(v1,v2)))<eps;
}
int parallel(plane3 u,plane3 v){
returnvlen(xmult(pvec(u),pvec(v)))<eps;
}
int parallel(point3 u1,point3 u2,point3u3,point3 v1,point3 v2,point3 v3){
returnvlen(xmult(pvec(u1,u2,u3),pvec(v1,v2,v3)))<eps;
}
int parallel(line3 l,plane3 s){
returnzero(dmult(subt(l.a,l.b),pvec(s)));
}
int parallel(point3 l1,point3 l2,point3s1,point3 s2,point3 s3){
returnzero(dmult(subt(l1,l2),pvec(s1,s2,s3)));
}
int perpendicular(line3 u,line3 v){
returnzero(dmult(subt(u.a,u.b),subt(v.a,v.b)));
}
int perpendicular(point3 u1,point3u2,point3 v1,point3 v2){
returnzero(dmult(subt(u1,u2),subt(v1,v2)));
}
int perpendicular(plane3 u,plane3 v){
returnzero(dmult(pvec(u),pvec(v)));
}
int perpendicular(point3 u1,point3u2,point3 u3,point3 v1,point3 v2,point3 v3){
returnzero(dmult(pvec(u1,u2,u3),pvec(v1,v2,v3)));
}
int perpendicular(line3 l,plane3 s){
returnvlen(xmult(subt(l.a,l.b),pvec(s)))<eps;
}
int perpendicular(point3 l1,point3l2,point3 s1,point3 s2,point3 s3){
returnvlen(xmult(subt(l1,l2),pvec(s1,s2,s3)))<eps;
}
int intersect_in(line3 u,line3 v){
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-34960-34.html
这么没自信还顾水军