I'm constructing a terrain with constraints that can intercept themselves, so I changed the third parameter of CDT to CGAL::Exact_intersections_tag. I supouse that the only reason to got an error in insert constraint is this, crossing constraint without the correct tag but is still occurring erros on CDT::insert_constrain. The exception text comes empty so I got stucked and can′t verify the reason and fix the code. the insertion code is:
ct.insert_constraint(P.vertices_begin(), P.vertices_end(), closed);
closed is a boolean that is true when the constraint is closed (polygon).
Is a big surface with 500.000 points. On my code the error occurs on:
ct.insert_constraint(P.vertices_begin(), P.vertices_end(),closed);
the CGAL file is Polyline_constraint_hierarchy_2.h.
the exceptin data is:
expr -> false
file -> file = 0x00007ffbeb81d6b0 "C:\dev\CGAL-
5.0\include\CGAL\Triangulation_2\internal\Polyline_constraint_hierarchy_2.h"
line -> 1016
msg -> ""
The code on the file Polyline_constraint_hierarchy_2.h is:
template <class T, class Compare, class Data>
void
Polyline_constraint_hierarchy_2<T,Compare,Data>::
add_Steiner(T va, T vb, T vc){
Context_list* hcl=nullptr;
if(!get_contexts(va,vb,hcl)) CGAL_triangulation_assertion(false); <<--- here
Context_list* hcl2 = new Context_list;
Vertex_it pos;
...
Sure the problem is on get_contexts
Thank you.