|
CGAL 6.0 - 2D Triangulation Data Structure
|
The concept TriangulationDataStructure_2::Face describes the types used to store the faces face class of a TriangulationDataStructure_2. A TriangulationDataStructure_2::Face stores three handles to its three vertices and three handles to its three neighbors. The vertices are indexed 0,1, and 2 in counterclockwise order. The neighbor indexed i lies opposite to vertex i.
In degenerate cases, when the triangulation data structure stores a simplicial complex of dimension 0 and 1, the type TriangulationDataStructure_2::Face is used to store the faces of maximal dimension of the complex, i.e., a vertex in dimension 0, an edge in dimension 1. Only vertices and neighbors with index 0 are set in the first case, only vertices and neighbors with index 0 or 1 are set in the second case.
Types
The class TriangulationDataStructure_2::Face defines the same types as the triangulation data structure except the iterators and the circulators.
Creation
The methods create_face() and delete_face() have to be used to define new faces and to delete no longer used faces.
CGAL::Triangulation_ds_face_base_2<Tds> Vertex Access Functions | |
| Vertex_handle | vertex (int i) const |
returns the vertex i of the face. | |
| int | index (Vertex_handle v) const |
returns the index of vertex v in the face. | |
| bool | has_vertex (Vertex_handle v) const |
returns true if v is a vertex of the face. | |
| bool | has_vertex (Vertex_handle v, int &i) const |
returns true if v is a vertex of the face, and computes the index i of v in the face. | |
Neighbor Access Functions | |
The neighbor with index | |
| Face_handle | neighbor (int i) const |
returns the neighbor i of the face. | |
| int | index (Face_handle n) const |
returns the index of face n. | |
| bool | has_neighbor (Face_handle n) const |
returns true if n is a neighbor of the face. | |
| bool | has_neighbor (Face_handle n, int &i) const |
returns true if n is a neighbor of the face, and compute the index i of n. | |
Setting | |
| void | set_vertex (int i, Vertex_handle v) |
sets vertex i to be v. | |
| void | set_neighbor (int i, Face_handle n) |
sets neighbor i to be n. | |
| void | set_vertices () |
sets the vertex handles to Vertex_handle(). | |
| void | set_vertices (Vertex_handle v0, Vertex_handle v1, Vertex_handle v2) |
| sets the vertex handles. | |
| void | set_neighbors () |
sets the neighbors handles to Face_handle(). | |
| void | set_neighbors (Face_handle n0, Face_handle n1, Face_handle n2) |
| sets the neighbors handles. | |
Checking | |
| bool | is_valid () const |
returns true if the function is_valid() of the base class returns true and if, for each index \( i\), \( 0 \le i < 3\), the face is a neighbor of its neighboring face neighbor(i) and shares with this neighbor the vertices cw(i) and ccw(i) in correct reverse order. | |
Miscellaneous | |
| int | ccw (int i) const |
| Returns \( i+1\) modulo 3, with \( 0\leq i \leq2\). | |
| int | cw (int i) const |
| Returns \( i+2\) modulo 3, with \( 0\leq i \leq2\). | |
| std::istream & | operator>> (std::istream &is, TriangulationDataStructure_2::Face &f) |
| Inputs any non combinatorial information possibly stored in the face. | |
| std::ostream & | operator<< (std::ostream &os, const TriangulationDataStructure_2::Face &f) |
| Outputs any non combinatorial information possibly stored in the face. | |
| int TriangulationDataStructure_2::Face::index | ( | Face_handle | n | ) | const |
returns the index of face n.
n is a neighbor of the face. | int TriangulationDataStructure_2::Face::index | ( | Vertex_handle | v | ) | const |
returns the index of vertex v in the face.
v is a vertex of the face. | Face_handle TriangulationDataStructure_2::Face::neighbor | ( | int | i | ) | const |
returns the neighbor i of the face.
| void TriangulationDataStructure_2::Face::set_neighbor | ( | int | i, |
| Face_handle | n | ||
| ) |
sets neighbor i to be n.
| void TriangulationDataStructure_2::Face::set_vertex | ( | int | i, |
| Vertex_handle | v | ||
| ) |
sets vertex i to be v.
| Vertex_handle TriangulationDataStructure_2::Face::vertex | ( | int | i | ) | const |
returns the vertex i of the face.