CGAL 5.1 - 2D Alpha Shapes
|
#include <Concepts/AlphaShapeFace_2.h>
The concept AlphaShapeFace_2
describes the requirements for the base face of an alpha shape.
TriangulationFaceBase_2
, if the underlying triangulation of the alpha shape is a Delaunay triangulation.
RegularTriangulationFaceBase_2
, if the underlying triangulation of the alpha shape is a regular triangulation.
Periodic_2TriangulationFaceBase_2
, if the underlying triangulation of the alpha shape is a periodic triangulation.
CGAL::Alpha_shape_face_base_2
(templated with the appropriate triangulation face base class).Types | |
typedef unspecified_type | Interval_3 |
A container type to get (and put) the three special values ( \( \alpha_1, \alpha_2, \alpha_3\)) associated with an alpha shape edge. More... | |
typedef unspecified_type | FT |
A coordinate type. More... | |
Creation | |
AlphaShapeFace_2 () | |
default constructor. More... | |
AlphaShapeFace_2 (const Vertex_handle &v0, const Vertex_handle &v1, const Vertex_handle &v2) | |
constructor setting the incident vertices. More... | |
AlphaShapeFace_2 (const Vertex_handle &v0, const Vertex_handle &v1, const Vertex_handle &v2, const Face_handle &n0, const Face_handle &n1, const Face_handle &n2) | |
constructor setting the incident vertices and the neighboring faces. More... | |
Access Functions | |
Interval_3 | get_ranges (const int &i) |
returns the interval associated with the edge indexed with \( i\), which contains three alpha values \( \alpha_1 \leq\alpha_2 \leq\alpha_3\), such as for \( \alpha\) between \( \alpha_1\) and \( \alpha_2\), the edge indexed with \( i\) is attached but singular, for \( \alpha\) between \( \alpha_2\) and \( \alpha_3\), the edge is regular, and for \( \alpha\) greater than \( \alpha_3\), the edge is interior. More... | |
FT | get_alpha () |
return the alpha value, under which the alpha shape contains the face. More... | |
Modifiers | |
void | set_ranges (const int &i, const Interval_3 &V) |
sets the interval associated with the edge indexed with \( i\), which contains three alpha values \( \alpha_1 \leq\alpha_2 \leq\alpha_3\), such as for \( \alpha\) between \( \alpha_1\) and \( \alpha_2\), the edge indexed with \( i\) is attached but singular, for \( \alpha\) between \( \alpha_2\) and \( \alpha_3\), the edge is regular, and for \( \alpha\) greater than \( \alpha_3\), the edge is interior. More... | |
void | set_alpha (FT A) |
sets the alpha value, under which the alpha shape contains the face. More... | |
typedef unspecified_type AlphaShapeFace_2::FT |
A coordinate type.
The type must provide a copy constructor, assignment, comparison operators, negation, multiplication, division and allow the declaration and initialization with a small integer constant (cf. requirements for number types). An obvious choice would be coordinate type of the point class
typedef unspecified_type AlphaShapeFace_2::Interval_3 |
A container type to get (and put) the three special values ( \( \alpha_1, \alpha_2, \alpha_3\)) associated with an alpha shape edge.
AlphaShapeFace_2::AlphaShapeFace_2 | ( | ) |
default constructor.
AlphaShapeFace_2::AlphaShapeFace_2 | ( | const Vertex_handle & | v0, |
const Vertex_handle & | v1, | ||
const Vertex_handle & | v2 | ||
) |
constructor setting the incident vertices.
AlphaShapeFace_2::AlphaShapeFace_2 | ( | const Vertex_handle & | v0, |
const Vertex_handle & | v1, | ||
const Vertex_handle & | v2, | ||
const Face_handle & | n0, | ||
const Face_handle & | n1, | ||
const Face_handle & | n2 | ||
) |
constructor setting the incident vertices and the neighboring faces.
FT AlphaShapeFace_2::get_alpha | ( | ) |
return the alpha value, under which the alpha shape contains the face.
Interval_3 AlphaShapeFace_2::get_ranges | ( | const int & | i | ) |
returns the interval associated with the edge indexed with \( i\), which contains three alpha values \( \alpha_1 \leq\alpha_2 \leq\alpha_3\), such as for \( \alpha\) between \( \alpha_1\) and \( \alpha_2\), the edge indexed with \( i\) is attached but singular, for \( \alpha\) between \( \alpha_2\) and \( \alpha_3\), the edge is regular, and for \( \alpha\) greater than \( \alpha_3\), the edge is interior.
void AlphaShapeFace_2::set_alpha | ( | FT | A | ) |
sets the alpha value, under which the alpha shape contains the face.
void AlphaShapeFace_2::set_ranges | ( | const int & | i, |
const Interval_3 & | V | ||
) |
sets the interval associated with the edge indexed with \( i\), which contains three alpha values \( \alpha_1 \leq\alpha_2 \leq\alpha_3\), such as for \( \alpha\) between \( \alpha_1\) and \( \alpha_2\), the edge indexed with \( i\) is attached but singular, for \( \alpha\) between \( \alpha_2\) and \( \alpha_3\), the edge is regular, and for \( \alpha\) greater than \( \alpha_3\), the edge is interior.