The concept TriangulationDataStructure_3::Cell stores four Vertex_handles to its four vertices and four Cell_handles to its four neighbors. The vertices are indexed 0, 1, 2, and 3 in consistent order. The neighbor indexed $$i lies opposite to vertex i.
In degenerate dimensions, cells are used to store faces of maximal dimension: in dimension 2, each cell represents only one facet of index 3, and 3 edges $$(0,1), $$(1,2) and $$(2,0); in dimension 1, each cell represents one edge $$(0,1). (See also Section .)
 
 
 


 

In order to obtain new cells or destruct unused cells, the user must call the create_cell() and delete_cell() methods of the triangulation data structure.


Returns the vertex i of c. Precondition: $$i {0, 1, 2, 3}. 

 
Returns the index of vertex v in c. Precondition: v is a vertex of c.  

 
Returns true if v is a vertex of c.  

 
Returns true if v is a vertex of c, and computes its index i in c.  

 
Returns the neighbor i of c. Precondition: $$i {0, 1, 2, 3}.  

 
Returns the index corresponding to neighboring cell n. Precondition: n is a neighbor of c.  

 
Returns true if n is a neighbor of c.  

 
Returns true if n is a neighbor of c, and computes its index i in c.  

 
Returns the vertex of the neighbor of c that is opposite to c. Precondition: $$i {0, 1, 2, 3}.  

 
Returns the index of c in its $$i^{th} neighbor. Precondition: $$i {0, 1, 2, 3}. 

 
dim is the dimension of the triangulation, with default
value 3. In dimension 3 (resp. 2, 1) this function must check that the cell shares three (resp. two, one) vertices with its neighbors, and these neighbors have a correct reciprocal neighboring link. Moreover, the consistency of the orientations of common faces must be checked. The validity of all the vertices of the cell must be checked. The validity of the base cell is also checked. When verbose is set to true, messages are printed to give a precise indication of the kind of invalidity encountered. 
TriangulationDataStructure_3::Vertex.