LCC doc, ok for concepts.

This commit is contained in:
Guillaume Damiand 2013-03-01 14:29:38 +01:00
parent 2a04b964cd
commit f38df827b6
3 changed files with 131 additions and 125 deletions

View File

@ -3,67 +3,72 @@
\ingroup PkgLinearCellComplexConcepts
\cgalConcept
The concept `CellAttributeWithPoint` is a refinement of the `CellAttribute`
concept, to represent a cell attribute containing a point.
The concept `CellAttributeWithPoint` is a refinement of the `CellAttribute`
concept, to represent a cell attribute containing a point.
\cgalRefines `CellAttribute`
\cgalRefines `CellAttribute`
\cgalHasModel `CGAL::Cell_attribute_with_point<LCC,Info_,Tag,OnMerge,OnSplit>`
\cgalHasModel \ref CGAL::Cell_attribute_with_point "CGAL::Cell_attribute_with_point<LCC,Info_,Tag,OnMerge,OnSplit>"
\sa `LinearCellComplexItems`
\sa `LinearCellComplexItems`
*/
class CellAttributeWithPoint {
public:
/// \name Types
/// \name Types
/// @{
/*!
Type of the used point.
*/
typedef Hidden_type Point;
/*!
Type of the used point.
*/
typedef Hidden_type Point;
/// @}
/*!
Type of the information, defined in the `CellAttribute` concept.
*/
typedef CellAttribute::Info Info;
/// \name Creation
/// @}
/// \name Creation
/// @{
/*!
Default constructor.
*/
CellAttributeWithPoint();
/*!
Default constructor.
*/
CellAttributeWithPoint();
/*!
Constructor initializing the point of `cawp` by the
copy contructor `Point(apoint)`.
*/
CellAttributeWithPoint(const Point&apoint);
/*!
Constructor initializing the point of this attribute by the
copy contructor \ref Point "Point"`(apoint)`.
*/
CellAttributeWithPoint(const Point&apoint);
/*!
Constructor initializing the point of `cawp` by the
copy contructor `Point(apoint)` and initializing the
information of `cawp` by the
copy contructor `Info(info)`.
Defined only if `Info` is different from `void`.
*/
CellAttributeWithPoint(const Point&apoint, const Info& info);
/*!
Constructor initializing the point of this attribute by the
copy contructor \ref Point "Point"`(apoint)` and initializing the
information of this attribute by the
copy contructor \ref Info "Info"`(info)`.
Defined only if `Info` is different from `void`.
*/
CellAttributeWithPoint(const Point&apoint, const Info& info);
/// @}
/// @}
/// \name Access Member Functions
/// \name Access Member Functions
/// @{
/*!
Returns the point of `cawp`.
*/
Point& point();
/*!
Returns the point of this attribute.
*/
Point& point();
/*!
Returns the point of `cawp`, when `cawp` is const.
*/
const Point& point() const;
/*!
Returns the point of this attribute, when this is const.
*/
const Point& point() const;
/// @}

View File

@ -3,20 +3,20 @@
\ingroup PkgLinearCellComplexConcepts
\cgalConcept
The concept `LinearCellComplexItems` refines the concept of
`CombinatorialMapItems` by adding the requirement that
0-attributes are enabled, and associated with attributes that are
models of the `CellAttributeWithPoint` concept.
The concept `LinearCellComplexItems` refines the concept of
`CombinatorialMapItems` by adding the requirement that
0-attributes are enabled, and associated with attributes that are
models of the `CellAttributeWithPoint` concept.
\cgalRefines `CombinatorialMapItems`
\cgalRefines `CombinatorialMapItems`
\cgalRequires The first type in `Attributes` must be a model of the
`CellAttributeWithPoint` concept.
\cgalRequires The first type in \ref CombinatorialMapItems::Dart_wrapper "Attributes" must be a model of the
`CellAttributeWithPoint` concept.
\cgalHasModel `CGAL::Linear_cell_complex_min_items<d>`
\cgalHasModel \ref CGAL::Linear_cell_complex_min_items "CGAL::Linear_cell_complex_min_items<d>"
\sa `CGAL::Linear_cell_complex<d,d2,LCCTraits,Items,Alloc>`
\sa `CellAttributeWithPoint`
\sa `CellAttributeWithPoint`
\sa `CGAL::Dart<d,CMap>`
*/

View File

@ -3,11 +3,11 @@
\ingroup PkgLinearCellComplexConcepts
\cgalConcept
Required types and functors for the `LinearCellComplexTraits` concept. This
geometric traits concept is used in the `Linear_cell_complex`
class.
Required types and functors for the `LinearCellComplexTraits` concept. This
geometric traits concept is used in the \ref CGAL::Linear_cell_complex "Linear_cell_complex"
class.
\cgalHasModel `CGAL::Linear_cell_complex_traits<d,K>`
\cgalHasModel \ref CGAL::Linear_cell_complex_traits "CGAL::Linear_cell_complex_traits<d,K>"
\sa `CGAL::Linear_cell_complex<d,d2,LCCTraits,Items,Alloc>`
@ -16,79 +16,80 @@ class.
class LinearCellComplexTraits {
public:
/// \name Constants
/// \name Constants
/// @{
/*!
The ambient dimension, must be \f$ >\f$1.
*/
static unsigned int ambient_dimension;
/*! The ambient dimension (must be > 1).
*/
static unsigned int ambient_dimension;
/// @}
/// @}
/// \name Types
/// \name Types
/// @{
/*!
a number type that is a model of FieldNumberType.
*/
typedef Hidden_type FT;
/*!
a number type that is a model of FieldNumberType.
*/
typedef Hidden_type FT;
/*!
point type.
*/
typedef Hidden_type Point;
/*!
point type.
*/
typedef Hidden_type Point;
/*!
vector type.
*/
typedef Hidden_type Vector;
/*!
vector type.
*/
typedef Hidden_type Vector;
/// @}
/// @}
/// \name Constructions
/// \name Constructions
/// @{
/*!
Functor that provides `Point operator() (const Point& p, const Vector& v)`,
which constructs the translation of point `p` by vector `v`, and
`Point operator() (const CGAL::Origin&, const Vector& v)`,
which constructs the translation of a point at the origin by vector `v`
(used in `Linear_cell_complex::barycenter`).
*/
typedef Hidden_type Construct_translated_point;
/*!
Functor that provides \ref LinearCellComplexTraits::Point "Point " `operator() (const` \ref Point " Point"`& p, const` \ref LinearCellComplexTraits::Vector " Vector"` & v)`,
which constructs the translation of point `p` by vector `v`, and
\ref LinearCellComplexTraits::Point "Point " `operator() (const CGAL::Origin&, const ` \ref LinearCellComplexTraits::Vector " Vector"& v)`,
which constructs the translation of a point at the origin by vector `v`
(used in \ref CGAL::Linear_cell_complex::barycenter "Linear_cell_complex::barycenter").
*/
typedef Hidden_type Construct_translated_point;
/*!
Functor that provides `Vector operator() (const Point& p1, const Point& p2)`
which constructs a vector as the difference of points `p2-p1`, and
`Vector operator() (const CGAL::Origin&, const Point& p)`
which constructs a vector as the difference of point `p` and a point at the origin
(used in `Linear_cell_complex::barycenter` and `CGAL::import_from_plane_graph`).
*/
typedef Hidden_type Construct_vector;
/*!
Functor that provides \ref LinearCellComplexTraits::Vector " Vector " `operator() (const ` \ref Point "Point"`& p1, const ` \ref Point " Point"`& p2)`
which constructs a vector as the difference of points `p2-p1`, and
\ref LinearCellComplexTraits::Vector " Vector " `operator() (const CGAL::Origin&, const ` \ref Point " Point"`& p)`
which constructs a vector as the difference of point `p` and a point at the origin
(used in \ref CGAL::Linear_cell_complex::barycenter "Linear_cell_complex::barycenter"
and `CGAL::import_from_plane_graph`).
*/
typedef Hidden_type Construct_vector;
/*!
Functor that provides `Vector operator() (const Vector& v1, const Vector& v2)`
which constructs a vector as the sum of vectors `v1+v2`
(used in `Linear_cell_complex::barycenter`, `CGAL::compute_normal_of_cell_0`
and `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_sum_of_vectors;
/*!
Functor that provides \ref LinearCellComplexTraits::Vector " Vector " `operator() (const` \ref LinearCellComplexTraits::Vector " Vector"`& v1, const` \ref LinearCellComplexTraits::Vector " Vector"`& v2)`
which constructs a vector as the sum of vectors `v1+v2`
(used in \ref CGAL::Linear_cell_complex::barycenter "Linear_cell_complex::barycenter",
`CGAL::compute_normal_of_cell_0`
and `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_sum_of_vectors;
/*!
Functor that provides `Vector operator() (const Vector& v, FT scale)`
which constructs a vector equal to vector `v` scaled by `scale` factor
(used in `Linear_cell_complex::barycenter` , `CGAL::compute_normal_of_cell_0`
and `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_scaled_vector;
/*!
Functor that provides \ref LinearCellComplexTraits::Vector " Vector " `operator() (const` \ref LinearCellComplexTraits::Vector " Vector"`& v, ` \ref LinearCellComplexTraits::FT "FT" `scale)`
which constructs a vector equal to vector `v` scaled by `scale` factor
(used in \ref CGAL::Linear_cell_complex::barycenter "Linear_cell_complex::barycenter",
`CGAL::compute_normal_of_cell_0` and `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_scaled_vector;
/*!
Functor that provides `Point operator() (const Point& p1, const Point& p2)`
which constructs the midpoint of points `p1` and `p2`
(used in `Linear_cell_complex::barycenter`).
*/
typedef Hidden_type Construct_midpoint;
/*!
Functor that provides \ref LinearCellComplexTraits::Point "Point " `operator() (const ` \ref Point "Point"`& p1, const ` \ref Point "Point"`& p2)`
which constructs the midpoint of points `p1` and `p2`
(used in \ref CGAL::Linear_cell_complex::barycenter "Linear_cell_complex::barycenter").
*/
typedef Hidden_type Construct_midpoint;
/// @}
@ -96,15 +97,15 @@ typedef Hidden_type Construct_midpoint;
/// If `ambient_dimension==2`
/// @{
/*!
a model of `Direction_2`.
*/
typedef Hidden_type Direction_2;
/*!
a model of \ref Kernel::Direction_2 "Direction_2".
*/
typedef Hidden_type Direction_2;
/*!
a model of `ConstructDirection_2` (used in `CGAL::import_from_plane_graph`).
*/
typedef Hidden_type Construct_direction_2;
/*!
a model of \ref Kernel::ConstructDirection_2 "ConstructDirection_2" (used in `CGAL::import_from_plane_graph`).
*/
typedef Hidden_type Construct_direction_2;
/// @}
@ -112,15 +113,15 @@ typedef Hidden_type Construct_direction_2;
/// If `ambient_dimension==3`
/// @{
/*!
a model of `ConstructNormal_3` (used in `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_normal_3;
/*!
a model of \ref Kernel::ConstructNormal_3 "ConstructNormal_3" (used in `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Construct_normal_3;
/*!
a model of `Collinear_3` (used in `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Collinear_3;
/*!
a model of \ref Kernel::Collinear_3 "Collinear_3" (used in `CGAL::compute_normal_of_cell_2`).
*/
typedef Hidden_type Collinear_3;
/// @}