Describe what concepts are for

This commit is contained in:
Mael Rouxel-Labbé 2023-01-18 11:00:48 +01:00
parent ab35faf3e5
commit 72f82ca1ff
3 changed files with 16 additions and 7 deletions

View File

@ -8,6 +8,10 @@
\brief The concept `IsosurfacingDomainWithGradient_3` describes the set of requirements to be
fulfilled by any class used as input data for some isosurfacing algorithms.
This concept refines `IsosurfacingDomain_3` to add a `gradient()` function which is used
by isosurfacing domains to query the domain for the gradient of the implicit function
at a 3D point (not necessarily a vertex) in space.
\cgalHasModel `CGAL::Isosurfacing::Explicit_Cartesian_grid_domain_3`
\cgalHasModel `CGAL::Isosurfacing::Implicit_Cartesian_grid_domain_3`
*/

View File

@ -3,8 +3,13 @@
\cgalConcept
The concept `IsosurfacingDomain_3` describes the set of requirements to be
fulfilled by any class used as input data for any isosurfacing algorithms.
\brief The concept `IsosurfacingDomain_3` describes the set of requirements to be
fulfilled by any class used as input data for isosurfacing algorithms.
A model of the concept `IsosurfacingDomain_3` provides a discrete representation
of an implicit function through a partition of the Euclidean space in cells.
The isosurfacing algorithms will traverse these cells and query the domain class
at the vertices of each cell, using the functions `point()` and `value()`.
\cgalHasModel `CGAL::Isosurfacing::Explicit_Cartesian_grid_domain_3`
\cgalHasModel `CGAL::Isosurfacing::Implicit_Cartesian_grid_domain_3`
@ -57,19 +62,19 @@ public:
/*!
A container for the cells incident to an edge.
Must be a model of the concept `Container` whose value type is `Cell_descriptor`.
Must be a model of the concept `Range` whose value type is `Cell_descriptor`.
*/
typedef unspecified_type Cells_incident_to_edge;
/*!
A container for the vertices of a cell.
Must be a model of the concept `Container` whose value type is `Vertex_descriptor`.
Must be a model of the concept `Range` whose value type is `Vertex_descriptor`.
*/
typedef unspecified_type Cell_vertices;
/*!
A container for the edges of a cell.
Must be a model of the concept `Container` whose value type is `Edge_descriptor`.
Must be a model of the concept `Range` whose value type is `Edge_descriptor`.
*/
typedef unspecified_type Cell_edges;
@ -91,7 +96,7 @@ public:
Point_3 point(const Vertex_descriptor& v) const;
/*!
gets the value of the function at a vertex
gets the value of the implicit function at a vertex
*/
FT value(const Vertex_descriptor& v) const;

View File

@ -4,7 +4,7 @@
\cgalConcept
The concept `IsosurfacingTraits_3` describes the set of requirements to be
fulfilled by any traits class of a model of `IsosurfacingDomain_3`.
fulfilled by the traits class of a model of `IsosurfacingDomain_3`.
\cgalHasModel All models of `Kernel`.
*/