\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.6.1 - 2D Conforming Triangulations and Meshes
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
2D Conforming Triangulations and Meshes Reference

delaunaymesh-small.png
Laurent Rineau
This package implements a Delaunay refinement algorithm to construct conforming triangulations and 2D meshes. Conforming Delaunay triangulations are obtained from constrained Delaunay triangulations by refining constrained edges until they are Delaunay edges. Conforming Gabriel triangulations are obtained by further refining constrained edges until they become Gabriel edges. The package provides also a 2D mesh generator that refines triangles and constrained edges until user defined size and shape criteria on triangles are satisfied. The package can handle intersecting input constraints and set no restriction on the angle formed by two constraints sharing an endpoint.


Introduced in: CGAL 3.1
Depends on: 2D Triangulation
BibTeX: cgal:r-ctm2-15a
License: GPL
Windows Demo: 2D Mesh Generator
Common Demo Dlls: dlls

Classified Reference Pages

Concepts

Classes

Global functions

Modules

 Concepts
 

Classes

class  CGAL::Delaunay_mesh_criteria_2< CDT >
 The class Delaunay_mesh_criteria_2 is a model for the MeshingCriteria_2 concept. More...
 
class  CGAL::Delaunay_mesh_face_base_2< Traits, Fb >
 The class Delaunay_mesh_face_base_2 is a model for the concept DelaunayMeshFaceBase_2. More...
 
class  CGAL::Delaunay_mesh_size_criteria_2< CDT >
 The class Delaunay_mesh_size_criteria_2 is a model for the MeshingCriteria_2 concept. More...
 
class  CGAL::Delaunay_mesher_2< CDT, Criteria >
 This class implements a 2D mesh generator. More...
 
class  CGAL::Triangulation_conformer_2< CDT >
 The class Triangulation_conformer_2 is an auxiliary class of Delaunay_mesher_2<CDT>. More...
 

Enumerations

enum  CGAL::Mesh_2::Face_badness { CGAL::Mesh_2::NOT_BAD, CGAL::Mesh_2::BAD, CGAL::Mesh_2::IMPERATIVELY_BAD }
 

Functions

template<class CDT , class Criteria >
void CGAL::refine_Delaunay_mesh_2 (CDT &t, const Criteria &criteria=Criteria())
 Refines the default domain defined by a constrained Delaunay triangulation without seeds into a mesh satisfying the criteria defined by the traits criteria. More...
 
template<class CDT , class Criteria , class InputIterator >
void CGAL::refine_Delaunay_mesh_2 (CDT &t, InputIterator begin, InputIterator end, const Criteria &criteria=Criteria(), bool mark=false)
 Refines the default domain defined by a constrained Delaunay triangulation into a mesh satisfying the criteria defined by the traits criteria.The sequence [begin, end) gives a set of seeds points, that defines the domain to be meshed as follows. More...
 
template<class CDT >
void CGAL::make_conforming_Delaunay_2 (CDT &t)
 Refines the constrained Delaunay triangulation t into a conforming Delaunay triangulation. More...
 
template<class CDT >
void CGAL::make_conforming_Gabriel_2 (CDT &t)
 Refines the constrained Delaunay triangulation t into a conforming Gabriel triangulation. More...
 

Enumeration Type Documentation

#include <CGAL/Mesh_2/Face_badness.h>

Enumerator
NOT_BAD 
BAD 
IMPERATIVELY_BAD 

Function Documentation

template<class CDT >
void CGAL::make_conforming_Delaunay_2 ( CDT &  t)

Refines the constrained Delaunay triangulation t into a conforming Delaunay triangulation.

After a call to this function, all edges of t are Delaunay edges.

Template Parameters
CDTmust be a 2D constrained Delaunay triangulation and its geometric traits class must be a model of ConformingDelaunayTriangulationTraits_2.

#include <CGAL/Triangulation_conformer_2.h>

Examples:
Mesh_2/conforming.cpp.
template<class CDT >
void CGAL::make_conforming_Gabriel_2 ( CDT &  t)

Refines the constrained Delaunay triangulation t into a conforming Gabriel triangulation.

After a call to this function, all constrained edges of t have the Gabriel property: the circle that has \( e\) as diameter does not contain any vertex from the triangulation.

Template Parameters
CDTmust be a 2D constrained Delaunay triangulation and its geometric traits class must be a model of ConformingDelaunayTriangulationTraits_2.

#include <CGAL/Triangulation_conformer_2.h>

Examples:
Mesh_2/conforming.cpp.
template<class CDT , class Criteria >
void CGAL::refine_Delaunay_mesh_2 ( CDT &  t,
const Criteria &  criteria = Criteria() 
)

Refines the default domain defined by a constrained Delaunay triangulation without seeds into a mesh satisfying the criteria defined by the traits criteria.

The domain of the mesh covers all the connected components of the plane defined by the constrained edges of t, except for the unbounded component.

Template Parameters
CDTmust be 2D constrained Delaunay triangulation and its geometric traits class must be a model of DelaunayMeshTraits_2.
Criteriamust be a model of the concept MeshingCriteria_2.
Requires:

The face of the constrained Delaunay triangulation must be a model of the concept DelaunayMeshFaceBase_2.

CDT::Face_handle must be the same as Criteria::Face_handle.

#include <CGAL/Delaunay_mesher_2.h>

Examples:
Mesh_2/mesh_global.cpp, and Mesh_2/mesh_with_seeds.cpp.
template<class CDT , class Criteria , class InputIterator >
void CGAL::refine_Delaunay_mesh_2 ( CDT &  t,
InputIterator  begin,
InputIterator  end,
const Criteria &  criteria = Criteria(),
bool  mark = false 
)

Refines the default domain defined by a constrained Delaunay triangulation into a mesh satisfying the criteria defined by the traits criteria.The sequence [begin, end) gives a set of seeds points, that defines the domain to be meshed as follows.

The constrained edges of t partition the plane into connected components. If mark==true, the mesh domain is the union of the bounded connected components including at least one seed. If mark==false, the domain is the union of the bounded components including no seed. Note that the unbounded component of the plane is never meshed.

Template Parameters
CDTmust be 2D constrained Delaunay triangulation and its geometric traits class must be a model of DelaunayMeshTraits_2.
Criteriamust be a model of the concept MeshingCriteria_2.
InputIteratormust be an input iterator with value type CDT::Geom_traits::Point_2.
Requires:

The face of the constrained Delaunay triangulation must be a model of the concept DelaunayMeshFaceBase_2.

CDT::Face_handle must be the same as Criteria::Face_handle.

#include <CGAL/Delaunay_mesher_2.h>