The do_intersect function returns the wrong result between a segment and a triangle if the segment is degenerate. I tried it on my colleague's machine to make sure the error didn't come from mine.
The expected result is "000" or a precondition violation and the output is "010". A precondition is probably missing.
Source Code
include <CGAL/Exact_predicates_exact_constructions_kernel.h>
Issue Details
The do_intersect function returns the wrong result between a segment and a triangle if the segment is degenerate. I tried it on my colleague's machine to make sure the error didn't come from mine. The expected result is "000" or a precondition violation and the output is "010". A precondition is probably missing.
Source Code
include <CGAL/Exact_predicates_exact_constructions_kernel.h>
include <CGAL/intersections.h>
typedef CGAL::Exact_predicates_exact_constructions_kernel K; typedef K::Point_2 Point_2; typedef K::Triangle_2 Triangle_2; typedef K::Segment_2 Segment_2;
int main(){ Triangle_2 tr_normal(Point_2(-1,0),Point_2(0,0),Point_2(1,7)); Point_2 p(0.5,-1);
}
Environment