mirror of https://github.com/CGAL/cgal
created at r56349 and last modifications at r56671 modification in r56464 requires that the function point() of triangle returns a const ref to the triangle point. This has already been done in the trunk at r56954. Details: *For Bbox_3 plane_3 intersection: For floating point arithmetic everything is ok, but in the presence of floating point filters things start getting slightly more complicated. The supporting plane/bbox test uses the orientation of the normal of the plane for finding two corners of the cube for a sidedness test. For planes parallel to the xy, xz, yz plane this immediatly leads to problems. We introduce CGAL::Uncertain, etc in order to avoid switching to an exact arithmetic as long as possible. *For Bbox_3 triangle_3: Idem. Fine with floating point or exact type but get into troubles with interval arithmetic when one triangle boundary is collinear with an axis. Remember that the implementation is based on the separating axis theorem. Amongst axis tested, the one discribed by the cross product of the triangle boundary and the bbox boundary is tested. In the case they are collinear this directly fail. To handle this we added a small part testing whether the triangle has one boundary collinear to an axis to avoid this situation. Also, The "underlying" code has been factorized using the swap function. |
||
|---|---|---|
| .. | ||
| include/CGAL | ||
| package_info/Intersections_3 | ||
| test/Intersections_3 | ||