The class Triangulation_conformer_2<CDT> is an auxiliary class of Delaunay_mesher_2<CDT>. It permits to refine a constrained Delaunay triangulation into a conforming Delaunay or conforming Gabriel triangulation. For standard needs, consider using the global functions make_conforming_Gabriel_2 and make_conforming_Delaunay_2.
#include <CGAL/Triangulation_conformer_2.h>
The template parameter CDT should be a model of the concept ConstrainedDelaunayTriangulation_2.
The geometric traits class of the instance of CDT has to be a model of the concept ConformingDelaunayTriangulationTraits_2.
The constructor of the class Triangulation_conformer_2<CDT> takes a reference to a CDT as an argument. A call to the method make_conforming_Delaunay() or make_conforming_Gabriel() will refine this constrained Delaunay triangulation into a conforming Delaunay or conforming Gabriel triangulation. Note that if, during the life time of the Triangulation_conformer_2<CDT> object, the triangulation is externally modified, any further call to its member methods may lead to undefined behavior. Consider reconstructing a new Triangulation_conformer_2<CDT> object if the triangulation has been modified.
The conforming methods insert points into constrained edges, thereby splitting them into several sub-constraints. You have access to the initial inserted constraints if you instantiate the template parameter by a CGAL::Constrained_triangulation_plus_2<CDT>.
| |
Create a new conforming maker, working on t.
|
The Triangulation_conformer_2<CDT> class allows, for debugging or demos, to play the conforming algorithm step by step, using the following methods. They exist in two versions, depending on whether you want the triangulation to be conforming Delaunay or conforming Gabriel, respectively. Any call to a step_by_step_conforming_XX function requires a previous call to the corresponding function init_XX and Gabriel and Delaunay methods can not be mixed between two calls of init_XX.