CGAL 4.14 - 2D Alpha Shapes
AlphaShapeFace_2 Concept Reference

Definition

The concept AlphaShapeFace_2 describes the requirements for the base face of an alpha shape.

Refines:

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.

Has Models:
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.

typedef unspecified_type FT
A coordinate type. More...

Creation

AlphaShapeFace_2 ()
default constructor.

AlphaShapeFace_2 (const Vertex_handle &v0, const Vertex_handle &v1, const Vertex_handle &v2)
constructor setting the incident vertices.

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.

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.

FT get_alpha ()
return the alpha value, under which the alpha shape contains the face.

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.

void set_alpha (FT A)
sets the alpha value, under which the alpha shape contains the face.

◆ FT

 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