Fix bug in hidden line removal when an edge, projected into the xy

plane, lies exactly on the boundary of a triangle.

[git-p4: depot-paths = "//depot/solvespace/": change = 1956]
This commit is contained in:
Jonathan Westhues 2009-05-20 05:07:56 -08:00
parent b4dfb1aded
commit e70bb37061

View File

@ -638,7 +638,9 @@ void SKdNode::SplitLinesAgainstTriangle(SEdgeList *sel, STriangle *tr) {
Point2d pt = ((se->a).Plus(se->b).ScaledBy(0.5)).ProjectXy();
se->tag = 1;
for(i = 0; i < 3; i++) {
if(n[i].Dot(pt) - d[i] > -LENGTH_EPS) se->tag = 0;
// If the test point lies on the boundary of our triangle,
// then we still discard the edge.
if(n[i].Dot(pt) - d[i] > LENGTH_EPS) se->tag = 0;
}
}
}