The concept AdaptationTraits_2 defines the functors required for accessing geometric information in the Delaunay graph that is needed by the Voronoi_diagram_2<DG,AT,AP> class. It optionally defines a functor for performing nearest site queries. A tag is provided for determining whether this functor is defined or not.
| |
A type for a point.
| |
| |
A type for the sites of the Voronoi diagram.
| |
| |
A type for the triangulated Delaunay
graph. The type Delaunay_graph must be a model of the
DelaunayGraph_2 concept.
|
| |
A type for a functor that accesses the
site associated with a vertex. The functor should be a model of the
concepts DefaultConstructible, CopyConstructible,
Assignable and AdaptableFunctor (with one argument). The
functor must provide the following operator: where the result type result_type must be either Site_2 or const Site_2&.
| |
| |
A type for a functor that
constructs the dual point of a (triangular) face in the Delaunay
graph. This point is the Voronoi vertex of the three sites defining
the face in the Delaunay graph. The functor must be a model of the
concepts DefaultConstructible, CopyConstructible,
Assignable, AdaptableFunctor (with one argument). It
must provide the following operator:
| |
| |
A tag for determining if the adaptation
traits class provides a functor for performing nearest site queries.
This tag is equal to either CGAL::Tag_true (a nearest site
query functor is available) or CGAL::Tag_false (a nearest site
query functor is not available).
| |
| |
A type for a functor that performs
nearest site queries. Semantically, the result of the query is
either a face, edge or vertex of the Delaunay graph. It is a face if
the query point has at least three closest sites; the returned face
has closest sites as vertices. It is an edge if the query point is
equidistant to exactly two vertices of the Delaunay graph, which are
the source and target vertices of the edge. In all other cases, the
search result is a vertex, namely, the unique vertex of the
Delaunay graph closest to the query point. The functor must be a
model of the concepts DefaultConstructible,
CopyConstructible, Assignable, AdaptableFunctor
(with two arguments). It must provide the following operator: where the result type result_type is boost::variant<Delaunay_vertex_handle,Delaunay_edge,Delaunay_face_handle>. This type is required only if Has_nearest_site_2 is equal to CGAL::Tag_true.
|
|
|
|
|
| |
|
| This method is required only if Has_nearest_site_2 is equal to CGAL::Tag_true. |