NOTE: The types and expression involving
Incidence Iterators are given below for the
case of cell-on-vertex iteration.
Analogous types and expressions can be defined for the other element types,
like edge, facet, or cell.
The tables are to be understood in the following sense:
If a vertex defines the incidence iterator over cells,
then the requirements under Optional part apply.
Analogous requirements take effect if `cell' is replaced by another element type.
Name | Expression | Description |
handle type | V::vertex_handle | type of the corresponding Vertex Handle |
Optional part (as example) | ||
cell-on-vertex iterator | V::CellIterator | type of the corr. CellOnVertexIterator |
Name | Expression | Type requirements | return type |
handle | v.handle() | V::vertex_handle | |
Optional part (as example) | |||
cell-on-vertex iteration start | v.FirstCell() | V::CellIterator | |
number of incident cells | v.NumOfCells() | int | |
Name | Expression | Precondition | Semantics | Postcondition |
handle | h = v.handle(); | v is valid | shorthand for h = v.TheGrid(). handle(v) | v == v.TheGrid(). vertex(h) |
Optional part (as example) | ||||
cell-on-vertex iteration start | ci = v.FirstCell() | v is valid | let ci point to the first cell incident to v | ci.TheVertex() == ci.TheAnchor() == v and ci.TheGrid() == v.TheGrid() |
number of incident cells | n = v.NumOfCells() | v is valid | n is the number of cells that are incident to v | |
Vertex classes of complex2d (see Vertex2D), complex3d, cartesian2d, cartesian3d, or triang2d.