CGAL 4.7 - 3D Mesh Generation: MeshCellCriteria_3 Concept Reference

\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.7 - 3D Mesh Generation

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
MeshCellCriteria_3 Concept Reference
Main Concepts

## Definition

The Delaunay refinement process involved in the template functions `make_mesh_3()` and `refine_mesh_3()` is guided by a set of elementary refinement criteria that concern either mesh tetrahedra or surface facets. The concept `MeshCellCriteria_3` describes the types that handle the refinement criteria for mesh tetrahedra.

Has Models:
  `CGAL::Mesh_cell_criteria_3<Tr>`

See Also
  `MeshEdgeCriteria_3`
  `MeshFacetCriteria_3`
  `MeshCriteria_3`
  `CGAL::make_mesh_3()`
  `CGAL::refine_mesh_3()`

## Types

typedef unspecified_type | Cell_handle
| Handle type for the cells of the triangulation. More...
typedef unspecified_type | Cell_quality
| Type representing the quality of a cell. More...
typedef unspecified_type | Is_cell_bad
| Type representing if a cell is bad or not. More...

## Operations

Is_cell_bad | operator() (Cell_handle c)
| Returns `Is_cell_bad` value of cell `c`.

## Member Typedef Documentation

typedef unspecified_type MeshCellCriteria_3::Cell_handle

Handle type for the cells of the triangulation.

Must match the `Cell_handle` type in the triangulation type used by the mesh generation function.

typedef unspecified_type MeshCellCriteria_3::Cell_quality

Type representing the quality of a cell.

Must be a model of CopyConstructible and LessThanComparable. Between two cells, the one which has the lower quality must have the lower `Cell_quality`.

typedef unspecified_type MeshCellCriteria_3::Is_cell_bad

Type representing if a cell is bad or not.

Must be convertible to `bool`. If it converts to `true` then the cell is bad, otherwise the cell is good with regard to the criteria.

In addition, an object of this type must contain an object of type `Cell_quality` if it represents a bad cell. `Cell_quality` must be accessible by `operator*()`. Note that `boost::optional<Cell_quality>` is a natural model of this concept.