mirror of https://github.com/CGAL/cgal
try to improve cgalRequires removal
This commit is contained in:
parent
7b4267c162
commit
6d5a92ebcb
|
|
@ -194,9 +194,8 @@ OutputIterator get_alpha_shape_vertices(OutputIterator it, Classification_type t
|
|||
/*!
|
||||
Inserts the fixed alpha shape `A` into the stream `os`.
|
||||
|
||||
Defined in `CGAL/IO/io.h`
|
||||
|
||||
The insert operator must be defined for `GT::Point`.
|
||||
An overlaoad of `operator<<` must be available for `GT::Point`.
|
||||
\relates Fixed_alpha_shape_3
|
||||
*/
|
||||
ostream& operator<<(ostream& os, const Fixed_alpha_shape_3<Dt>& A);
|
||||
|
|
|
|||
|
|
@ -213,7 +213,7 @@ than `eps` in general). In any case, the number
|
|||
\f$ 1+\epsilon\f$) can be queried by calling the routine
|
||||
`achieved_epsilon()` discussed below.
|
||||
|
||||
@tparam Iterator must be a model for concept `InputIterator` with value type `Point`.
|
||||
\tparam Iterator must be a model of `InputIterator` with `Point` as value type.
|
||||
|
||||
\pre The dimension \f$ d\f$ of the input points must be at least \f$ 2\f$, and \f$ \epsilon>0\f$.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ std::ostream& stream = std::cout);
|
|||
|
||||
initializes `min_annulus` to \f$ ma(P)\f$ with \f$ P\f$ being the set of points
|
||||
in the range [`first`,`last`).
|
||||
@tparam InputIterator has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
\pre All points have the same dimension.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -242,7 +242,7 @@ outer_support_points_end( ) const;
|
|||
/*!
|
||||
|
||||
returns the center of `min_annulus`.
|
||||
An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre `min_annulus` is not empty.
|
||||
*/
|
||||
Point center( ) const;
|
||||
|
|
@ -250,7 +250,7 @@ Point center( ) const;
|
|||
/*!
|
||||
|
||||
returns the squared inner radius of `min_annulus`.
|
||||
An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre `min_annulus` is not empty.
|
||||
*/
|
||||
FT squared_inner_radius( ) const;
|
||||
|
|
@ -258,7 +258,7 @@ FT squared_inner_radius( ) const;
|
|||
/*!
|
||||
|
||||
returns the squared outer radius of `min_annulus`.
|
||||
An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre `min_annulus` is not empty.
|
||||
*/
|
||||
FT squared_outer_radius( ) const;
|
||||
|
|
@ -372,7 +372,7 @@ void clear( );
|
|||
|
||||
sets `min_annulus` to \f$ ma(P)\f$, where \f$ P\f$ is the set of points in
|
||||
the range [`first`,`last`).
|
||||
@tparam InputIterator has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
\pre All points have the same dimension.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -390,7 +390,7 @@ void insert( const Point& p);
|
|||
|
||||
inserts the points in the range [`first`,`last`) into
|
||||
`min_annulus` and recomputes the smallest enclosing annulus.
|
||||
@tparam InputIterator has the value type of `Point`.
|
||||
@tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
\pre All points have the same dimension. If `min_annulus` is not empty, this dimension must be equal to `min_annulus.ambient_dimension()`.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -438,7 +438,7 @@ const Traits& traits( ) const;
|
|||
/*!
|
||||
|
||||
writes `min_annulus` to output stream `os`.
|
||||
The output operator is defined for `Point`.
|
||||
An overload of `operator<<` must be defined for `Point`.
|
||||
\relates Min_annulus_d
|
||||
*/
|
||||
std::ostream&
|
||||
|
|
@ -448,7 +448,7 @@ const Min_annulus_d<Traits>& min_annulus);
|
|||
/*!
|
||||
|
||||
reads `min_annulus` from input stream `is`.
|
||||
The input operator is defined for `Point`.
|
||||
An overload of `operator>>` must be defined for `Point`.
|
||||
\relates Min_annulus_d
|
||||
*/
|
||||
std::istream&
|
||||
|
|
|
|||
|
|
@ -123,9 +123,8 @@ advance, using the random numbers generator `random`.
|
|||
Usually, this will not be necessary, however, the algorithm's
|
||||
efficiency depends on the order in which the points are
|
||||
processed, and a bad order might lead to extremely poor
|
||||
performance (see example below).
|
||||
@param first has the value type of `Point`.
|
||||
@param last has the value type of `Point`.
|
||||
performance (see example below).
|
||||
\tparam InputIterator must be a model of `InputIterator` with `Point` as value type.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
Min_circle_2( InputIterator first,
|
||||
|
|
@ -300,8 +299,7 @@ inserts the points in the range [`first`,`last`)
|
|||
into `min_circle` and recomputes the smallest enclosing circle by
|
||||
calling `insert(p)` for each point `p` in
|
||||
[`first`,`last`).
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator must be a model of `InputIterator` with `Point` as value type.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
void insert( InputIterator first,
|
||||
|
|
@ -352,7 +350,7 @@ const Traits& traits( ) const;
|
|||
/*!
|
||||
|
||||
writes `min_circle` to output stream `os`.
|
||||
The output operator is defined for `Point` (and for `Circle`, if pretty printing is used).
|
||||
An overload of `operator<<` must be defined for `Point` (and for `Circle`, if pretty printing is used).
|
||||
\relates Min_circle_2
|
||||
*/
|
||||
std::ostream&
|
||||
|
|
@ -362,7 +360,7 @@ const Min_circle_2<Traits>& min_circle);
|
|||
/*!
|
||||
|
||||
reads `min_circle` from input stream `is`.
|
||||
The input operator is defined for `Point`.
|
||||
An overload of `operator>>` must be defined for `Point`.
|
||||
\relates Min_circle_2
|
||||
*/
|
||||
std::istream&
|
||||
|
|
|
|||
|
|
@ -113,8 +113,7 @@ Usually, this will not be necessary, however, the algorithm's
|
|||
efficiency depends on the order in which the points are
|
||||
processed, and a bad order might lead to extremely poor
|
||||
performance (see example below).
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
Min_Ellipse_2( InputIterator first,
|
||||
|
|
@ -313,8 +312,7 @@ inserts the points in the range [`first`,`last`)
|
|||
into `min_ellipse` and recomputes the smallest enclosing ellipse by
|
||||
calling `insert(p)` for each point `p` in
|
||||
[`first`,`last`).
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
void insert( InputIterator first,
|
||||
|
|
@ -370,7 +368,7 @@ const Traits& traits( ) const;
|
|||
/*!
|
||||
|
||||
writes `min_ellipse` to output stream `os`.
|
||||
The output operator is defined for `Point` (and for `Ellipse`, if pretty printing is used).
|
||||
An overload of `operator<<` must be defined for `Point` (and for `Ellipse`, if pretty printing is used).
|
||||
\relates Min_ellipse_2
|
||||
*/
|
||||
std::ostream&
|
||||
|
|
@ -380,7 +378,7 @@ const Min_ellipse_2<Traits>& min_ellipse);
|
|||
/*!
|
||||
|
||||
reads `min_ellipse` from input stream `is`.
|
||||
The input operator is defined for `Point`.
|
||||
An overload of `operator>>` must be defined for `Point`.
|
||||
\relates Min_ellipse_2
|
||||
*/
|
||||
std::istream&
|
||||
|
|
|
|||
|
|
@ -126,8 +126,7 @@ Min_sphere_d (const Traits& traits = Traits());
|
|||
creates a variable `min_sphere` of type `Min_sphere_d`.
|
||||
It is initialized to \f$ ms(P)\f$ with \f$ P\f$ being the set of points
|
||||
in the range [`first`,`last`).
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
If the traits parameter is not supplied, the class `Traits` must provide a default constructor.
|
||||
\pre All points have the same dimension.
|
||||
*/
|
||||
|
|
@ -262,8 +261,7 @@ void clear ();
|
|||
|
||||
sets `min_sphere` to the \f$ ms(P)\f$, where \f$ P\f$ is the set of points
|
||||
in the range [`first`,`last`).
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
\pre All points have the same dimension.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -285,8 +283,7 @@ void insert( const Point& p);
|
|||
inserts the points in the range [`first`,`last`)
|
||||
into `min_sphere` and recomputes the smallest enclosing sphere, by
|
||||
calling `insert` for all points in the range.
|
||||
@tparam first has the value type of `Point`.
|
||||
@tparam last has the value type of `Point`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Point` as value type.
|
||||
\pre All points have the same dimension. If `min_sphere` is not empty, this dimension must be equal to `ambient_dimension()`.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -336,7 +333,7 @@ const Traits& traits( ) const;
|
|||
/*!
|
||||
|
||||
writes `min_sphere` to output stream `os`.
|
||||
The output operator is defined for `Point`.
|
||||
An overload of `operator<<` must be defined for `Point`.
|
||||
\relates Min_sphere_d
|
||||
*/
|
||||
std::ostream& operator << ( std::ostream& os,
|
||||
|
|
@ -346,7 +343,7 @@ min_sphere);
|
|||
/*!
|
||||
|
||||
reads `min_sphere` from input stream `is`.
|
||||
The input operator is defined for `Point`.
|
||||
An overload of `operator>>` must be defined for `Point`
|
||||
\relates Min_sphere_d
|
||||
*/
|
||||
std::istream& operator >> ( std::istream& is,
|
||||
|
|
|
|||
|
|
@ -176,8 +176,7 @@ creates a variable `minsphere` of type
|
|||
`Min_sphere_of_spheres_d` and inserts (cf.
|
||||
`insert()`) the spheres from
|
||||
the range [`first`,`last`).
|
||||
@tparam first has the value type of `Sphere`.
|
||||
@tparam last has the value type of `Sphere`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Sphere` as value type.
|
||||
If the traits parameter is not supplied, the class `Traits` must provide a default constructor.
|
||||
*/
|
||||
template < typename InputIterator >
|
||||
|
|
@ -267,8 +266,7 @@ void clear ();
|
|||
sets `minsphere` to
|
||||
the \f$ ms(S)\f$, where \f$ S\f$ is the set of spheres in the range
|
||||
[`first`,`last`).
|
||||
@tparam first has the value type of `Sphere`.
|
||||
@tparam last has the value type of `Sphere`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Sphere` as value type.
|
||||
*/
|
||||
template < class InputIterator > void
|
||||
set( InputIterator first, InputIterator last );
|
||||
|
|
@ -283,8 +281,7 @@ void insert( const Sphere& s );
|
|||
inserts the spheres in
|
||||
the range [`first`,`last`) into the set \f$ S\f$ of instance
|
||||
`minsphere`.
|
||||
@tparam first has the value type of `Sphere`.
|
||||
@tparam last has the value type of `Sphere`.
|
||||
\tparam InputIterator is a model of `InputIterator` with `Sphere` as value type.
|
||||
*/
|
||||
template < class InputIterator > void insert(
|
||||
InputIterator first, InputIterator last );
|
||||
|
|
|
|||
|
|
@ -29,12 +29,12 @@ type from one the \cgal kernels. In this case, a default traits class
|
|||
(`Min_quadrilateral_default_traits_2<K>`) is used.
|
||||
|
||||
<OL>
|
||||
<LI>If `Traits` is specified, it is a model for
|
||||
<LI>If `Traits` is specified, it must be a model for
|
||||
`MinQuadrilateralTraits_2` and the value type `VT` of
|
||||
`ForwardIterator` is `Traits::Point_2`. Otherwise
|
||||
`VT` is `CGAL::Point_2<K>` for some kernel
|
||||
`VT` must be `CGAL::Point_2<K>` for some kernel
|
||||
`K`.
|
||||
<LI>`OutputIterator` accepts `VT` as value type.
|
||||
<LI>`OutputIterator` must accept `VT` as value type.
|
||||
</OL>
|
||||
|
||||
\sa `CGAL::min_rectangle_2()`
|
||||
|
|
@ -100,11 +100,11 @@ type from one the \cgal kernels. In this case, a default traits class
|
|||
(`Min_quadrilateral_default_traits_2<K>`) is used.
|
||||
|
||||
<OL>
|
||||
<LI>If `Traits` is specified, it is a model for
|
||||
<LI>If `Traits` is specified, it must be a model for
|
||||
`MinQuadrilateralTraits_2` and the value type `VT` of
|
||||
`ForwardIterator` is `Traits::Point_2`. Otherwise `VT`
|
||||
is `CGAL::Point_2<K>` for some kernel `K`.
|
||||
<LI>`OutputIterator` accepts `VT` as value type.
|
||||
must be `CGAL::Point_2<K>` for some kernel `K`.
|
||||
<LI>`OutputIterator` must accept `VT` as value type.
|
||||
</OL>
|
||||
|
||||
\sa `CGAL::min_parallelogram_2()`
|
||||
|
|
@ -168,11 +168,11 @@ traits class (`Min_quadrilateral_default_traits_2<K>`) is
|
|||
used.
|
||||
|
||||
<OL>
|
||||
<LI>If `Traits` is specified, it is a model for
|
||||
<LI>If `Traits` is specified, it must be a model for
|
||||
`MinQuadrilateralTraits_2` and the value type `VT` of
|
||||
`ForwardIterator` is `Traits::Point_2`. Otherwise `VT`
|
||||
is `CGAL::Point_2<K>` for some kernel `K`.
|
||||
<LI>`OutputIterator` accepts `Traits::Line_2` as value type.
|
||||
must be `CGAL::Point_2<K>` for some kernel `K`.
|
||||
<LI>`OutputIterator` must accept `Traits::Line_2` as value type.
|
||||
</OL>
|
||||
|
||||
\sa `CGAL::min_rectangle_2()`
|
||||
|
|
|
|||
|
|
@ -229,12 +229,12 @@ the 2D-Kernel. In this case, a default traits class
|
|||
|
||||
<OL>
|
||||
<LI><I>Either: (if no traits parameter is given)</I> Value type
|
||||
of `ForwardIterator` is `CGAL::Point_2<K>` for some
|
||||
representation class `K` and `FT` is equivalent to
|
||||
of `ForwardIterator` must be `CGAL::Point_2<K>` for some
|
||||
representation class `K` and `FT` must be equivalent to
|
||||
`K::FT`,
|
||||
<LI><I>Or: (if a traits parameter is specified)</I> `Traits`
|
||||
is a model for `RectangularPCenterTraits_2`.
|
||||
<LI>`OutputIterator` accepts the value type of
|
||||
must be a model for `RectangularPCenterTraits_2`.
|
||||
<LI>`OutputIterator` must accept the value type of
|
||||
`ForwardIterator` as value type.
|
||||
</OL>
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ typedef unspecified_type Sphere;
|
|||
/*!
|
||||
is a (exact or inexact) field number type.
|
||||
|
||||
@tparam FT must either be `double` or `float`, or an exact field number type. (An <I>exact</I> number type is one which evaluates arithmetic expressions involving the four basic operations and comparisions with infinite precision, that is, like in \f$ \mathbb{R}\f$.)
|
||||
\tparam FT must either be `double` or `float`, or an exact field number type. (An <I>exact</I> number type is one which evaluates arithmetic expressions involving the four basic operations and comparisions with infinite precision, that is, like in \f$ \mathbb{R}\f$.)
|
||||
*/
|
||||
typedef unspecified_type FT;
|
||||
|
||||
|
|
|
|||
|
|
@ -97,14 +97,14 @@ intervals to [`lo[i]`,`hi[i]`], \f$ 0 \leq i < D\f$.
|
|||
Box_d(NT lo[D], NT hi[D]);
|
||||
|
||||
/*!
|
||||
constructs from `bbox`.
|
||||
Requires : \f$ D=2\f$ and `NT`\f$ \equiv\f$`double`.
|
||||
constructs from `bbox`.
|
||||
Requirements: \f$ D=2\f$ and `NT`\f$ \equiv\f$`double`.
|
||||
*/
|
||||
Box_d( const Bbox_2& bbox);
|
||||
|
||||
/*!
|
||||
constructs from `bbox`.
|
||||
Requires : \f$ D=3\f$ and `NT`\f$ \equiv\f$`double`.
|
||||
Requirements: \f$ D=3\f$ and `NT`\f$ \equiv\f$`double`.
|
||||
*/
|
||||
Box_d( const Bbox_3& bbox);
|
||||
|
||||
|
|
@ -140,7 +140,7 @@ static int dimension();
|
|||
returns a unique box id, see the
|
||||
`IdPolicy` template parameter above for the different
|
||||
choices.
|
||||
@tparam `IdPolicy`\f$ \neq\f$`ID_NONE`
|
||||
\tparam `IdPolicy`\f$ \neq\f$`ID_NONE`
|
||||
*/
|
||||
std::size_t id();
|
||||
|
||||
|
|
@ -158,13 +158,13 @@ NT max_coord(int d) const;
|
|||
|
||||
/*!
|
||||
returns the bounding box
|
||||
Requires : \f$ D=2\f$ and `NT`\f$ \equiv\f$`double`
|
||||
Requirements: \f$ D=2\f$ and `NT`\f$ \equiv\f$`double`
|
||||
*/
|
||||
const Bbox_2& bbox() const;
|
||||
|
||||
/*!
|
||||
returns the bounding box
|
||||
Requires : \f$ D=3\f$ and `NT`\f$ \equiv\f$`double`
|
||||
Requirements: \f$ D=3\f$ and `NT`\f$ \equiv\f$`double`
|
||||
*/
|
||||
const Bbox_3& bbox() const;
|
||||
|
||||
|
|
|
|||
|
|
@ -238,7 +238,6 @@ ALIASES += "cgalConcept=\details <div id=\"CGALConcept\"></div>\n \brief"
|
|||
ALIASES += "cgalConceptNamespace=\details <div id=\"CGALConceptNS\"></div>\n \brief"
|
||||
|
||||
ALIASES += "cgalRefines=\xrefitem refines \"Refines\" \"Refinement Relationships\""
|
||||
ALIASES += "cgalRequires=\xrefitem requires \"Requires\" \"Type Requirements\""
|
||||
ALIASES += "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\""
|
||||
ALIASES += "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\""
|
||||
ALIASES += "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relationships\""
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ Halfedge_handle create_segment();
|
|||
|
||||
removes the first vertex if vertices are supported.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void vertices_pop_front();
|
||||
|
||||
|
|
@ -127,7 +127,7 @@ void vertices_pop_back();
|
|||
|
||||
removes the vertex `v` if vertices are supported.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void vertices_erase( Vertex_handle v);
|
||||
|
||||
|
|
@ -136,7 +136,7 @@ void vertices_erase( Vertex_handle v);
|
|||
removes the range `[first,last)` if vertices
|
||||
are supported.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void vertices_erase( Vertex_handle first, Vertex_handle last);
|
||||
|
||||
|
|
@ -144,7 +144,7 @@ void vertices_erase( Vertex_handle first, Vertex_handle last);
|
|||
|
||||
removes the first face if faces are supported.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void faces_pop_front();
|
||||
|
||||
|
|
@ -158,7 +158,7 @@ void faces_pop_back();
|
|||
|
||||
removes the face `f` if faces are supported.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void faces_erase( Face_handle f);
|
||||
|
||||
|
|
@ -166,7 +166,7 @@ void faces_erase( Face_handle f);
|
|||
|
||||
removes the range `[first,last)` if faces are
|
||||
supported.
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void faces_erase( Face_handle first, Face_handle last);
|
||||
|
||||
|
|
@ -179,7 +179,7 @@ creates isolated vertices they get removed as well. See
|
|||
`make_hole()` for a more specialized variant.
|
||||
\pre `h->is_border() == false`.
|
||||
|
||||
If faces are supported, `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
If faces are supported, `Supports_removal`must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void erase_face( Halfedge_handle h);
|
||||
|
||||
|
|
@ -187,7 +187,7 @@ void erase_face( Halfedge_handle h);
|
|||
removes the vertices, halfedges, and faces that belong to the
|
||||
connected component of `h`. \pre For all halfedges `g` in the connected component `g.next() != Halfedge_handle()`.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void erase_connected_component( Halfedge_handle h);
|
||||
|
||||
|
|
@ -196,9 +196,9 @@ Erases the small connected components and the isolated vertices.
|
|||
Keep `nb_components_to_keep` largest connected components.
|
||||
Returns the number of connected components erased (ignoring isolated vertices).
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`,
|
||||
`Supports_vertex_halfedge` \f$ \equiv\f$ `CGAL::Tag_true` and
|
||||
`Supports_halfedge_vertex` \f$ \equiv\f$ `CGAL::Tag_true`
|
||||
`Supports_removal` must be `CGAL::Tag_true`,
|
||||
`Supports_vertex_halfedge` must be `CGAL::Tag_true` and
|
||||
`Supports_halfedge_vertex` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
unsigned int keep_largest_connected_components(unsigned int nb_components_to_keep);
|
||||
|
||||
|
|
@ -211,7 +211,7 @@ unsigned int keep_largest_connected_components(unsigned int nb_components_to_kee
|
|||
removes the face incident to `h` from `hds` and creates a hole.
|
||||
\pre `h != Halfedge_handle()` and `!(h->is_border())`.
|
||||
|
||||
If faces are supported, `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
If faces are supported, `Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void make_hole( Halfedge_handle h);
|
||||
|
||||
|
|
@ -295,7 +295,7 @@ holes. Returns the predecessor of `h` around the face. The invariant
|
|||
the data structure unchanged. The time is proportional to the size
|
||||
of the face removed and the time to compute `h->prev()`.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_face.png
|
||||
\image latex euler_face.png
|
||||
|
|
@ -326,7 +326,7 @@ and keeps the polyhedron unchanged.
|
|||
The time is proportional to the degree of the vertex removed and
|
||||
the time to compute `h->prev()` and `h->opposite()->prev()`.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_vertex.png
|
||||
\image latex euler_vertex.png
|
||||
|
|
@ -361,7 +361,7 @@ create_center_vertex(h))` holds if `h` is not a border halfedge.
|
|||
The time is proportional to the sum of the size of all incident faces.
|
||||
\pre None of the incident faces of `g->vertex()` is a hole. There are at least two distinct faces incident to the faces that are incident to `g->vertex()`. (This prevents the operation from collapsing a volume into two faces glued together with opposite orientations, such as would happen with any vertex of a tetrahedron.)
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_center.png
|
||||
\image latex euler_center.png
|
||||
|
|
@ -396,7 +396,7 @@ by `g` gets removed. Both faces may be holes. The invariant
|
|||
data structure unchanged.
|
||||
\pre The faces denoted by `h` and `g` are different and have equal degree (i.e., number of edges).
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_loop.png
|
||||
\image latex euler_loop.png
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ where `K` is a model for `Kernel`.
|
|||
\tparam OutputIterator must accepts dereference/assignments of `Traits::Point_2`.
|
||||
|
||||
|
||||
There is a global function `K::FT CGAL::sqrt(K::FT)`
|
||||
There must be a global function `K::FT CGAL::sqrt(K::FT)`
|
||||
defined that computes the squareroot of a number.
|
||||
|
||||
\sa `CGAL::maximum_area_inscribed_k_gon_2()`
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ Point_d(double x0, double x1, ...);
|
|||
|
||||
/*! introduces a point with coordinate set `[first,end)`.
|
||||
\pre If `DimensionTag` is a fixed dimension, it matches `distance(first,end)`.
|
||||
\tparam `InputIterator` has its value type that is convertible to `double`.
|
||||
\tparam InputIterator has its value type that is convertible to `double`.
|
||||
*/
|
||||
template<typename InputIterator>
|
||||
Point_d(InputIterator first, InputIterator end);
|
||||
|
|
@ -79,7 +79,7 @@ Cartesian_const_iterator_d cartesian_end()const;
|
|||
struct Construct_circumcenter_d {
|
||||
/*! returns the center of the sphere defined by `A=tuple[first,last)`. The sphere is centered in the affine hull of A and passes through all the points of A. The order of the points of A does not matter.
|
||||
\pre A is affinely independant.
|
||||
\tparam `ForwardIterator`has `Epick_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Epick_d::Point_d` as value type.
|
||||
*/
|
||||
template<typename ForwardIterator>
|
||||
Point_d operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -87,7 +87,7 @@ Point_d operator()(ForwardIterator first, ForwardIterator last);
|
|||
struct Compute_squared_radius_d {
|
||||
/*! returns the radius of the sphere defined by `A=tuple[first,last)`. The sphere is centered in the affine hull of A and passes through all the points of A. The order of the points of A does not matter.
|
||||
\pre A is affinely independant.
|
||||
\tparam `ForwardIterator`has `Epick_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Epick_d::Point_d` as value type.
|
||||
*/
|
||||
template<class ForwardIterator>
|
||||
Point_d operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -97,7 +97,7 @@ Point_d operator()(ForwardIterator first, ForwardIterator last);
|
|||
struct Side_of_bounded_sphere_d {
|
||||
/*! returns the relative position of point p to the sphere defined by `A=tuple[first,last)`. The sphere is centered in the affine hull of A and passes through all the points of A. The order of the points of A does not matter.
|
||||
\pre A is affinely independant.
|
||||
\tparam `ForwardIterator`has `Epick_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Epick_d::Point_d` as value type.
|
||||
*/
|
||||
template<class ForwardIterator>
|
||||
Bounded_side operator()(ForwardIterator first, ForwardIterator last, const Point_d&p);
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ Direction_d<Kernel>(Vector_d<Kernel> v);
|
|||
introduces a variable `dir` of type `Direction_d<Kernel>` in
|
||||
dimension `d` with representation tuple `set [first,last)`.
|
||||
\pre `d` is nonnegative, `[first,last)` has `d` elements.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator>
|
||||
Direction_d<Kernel>(int d, InputIterator first, InputIterator last);
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ introduces a
|
|||
variable `h` of type `Hyperplane_d<Kernel>` initialized to the
|
||||
hyperplane with coefficients `set [first,last)` and `D`.
|
||||
\pre `size [first,last) == d`.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Hyperplane_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last, RT D);
|
||||
|
|
@ -76,7 +76,7 @@ introduces a variable
|
|||
with coefficients `set [first,last)`.
|
||||
|
||||
\pre `size [first,last) == d+1`.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Hyperplane_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last);
|
||||
|
|
@ -88,7 +88,7 @@ some hyperplane that passes through the points in `set [first,last)`. If `side`
|
|||
constructed hyperplane.
|
||||
|
||||
\pre A hyperplane with the stated properties must exist.
|
||||
\tparam `ForwardIterator` has `Point_d<Kernel>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<Kernel>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator>
|
||||
Hyperplane_d<Kernel>(ForwardIterator first, ForwardIterator last,
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ specifies the homogeneous coordinates
|
|||
where the sign chosen is the sign of \f$ h_d\f$.
|
||||
|
||||
\pre `d` is nonnegative, `[first,last)` has `d` or `d+1` elements where the last has to be non-zero.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Point_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last);
|
||||
|
|
@ -94,7 +94,7 @@ initialized to the point with homogeneous coordinates as defined by
|
|||
The sign chosen is the sign of \f$ D\f$.
|
||||
|
||||
\pre `D` is non-zero, the iterator range defines a \f$ d\f$-tuple of `RT`.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Point_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last, RT D);
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ sphere through the points in `A = tuple [first,last)`.
|
|||
|
||||
\pre \f$A\f$ consists of \f$d+1\f$ \f$d\f$-dimensional points.
|
||||
|
||||
\tparam `ForwardIterator` has `Point_d<Kernel>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<Kernel>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Sphere_d<Kernel>(int d,
|
||||
ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ coordinates `set [first,last)`. If `size [first,last) == p+1` the range specifie
|
|||
sign chosen is the sign of \f$ h_d\f$.
|
||||
|
||||
\pre `d` is nonnegative, `[first,last)` has `d` or `d+1` elements where the last has to be non-zero.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Vector_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last);
|
||||
|
|
@ -101,7 +101,7 @@ initialized to the vector with homogeneous coordinates as defined by
|
|||
chosen is the sign of \f$ D\f$.
|
||||
|
||||
\pre `D` is non-zero, the iterator range defines a \f$ d\f$-tuple of `RT`.
|
||||
\tparam `InputIterator`has `RT` as value type.
|
||||
\tparam InputIterator has `RT` as value type.
|
||||
*/
|
||||
template <class InputIterator> Vector_d<Kernel>(int d,
|
||||
InputIterator first, InputIterator last, RT D);
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ namespace CGAL {
|
|||
returns the center of the sphere spanned by the points in `A = tuple[first,last)`.
|
||||
|
||||
\pre \f$ A\f$ contains \f$ d+1\f$ affinely independent points of dimension \f$ d\f$.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Point_d<R>
|
||||
center_of_sphere(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -34,7 +34,7 @@ it via an iterator range starting in `result`. The returned
|
|||
iterator marks the end of the output.
|
||||
\pre \f$ A\f$ contains vectors of the same dimension \f$ d\f$.
|
||||
|
||||
\tparam `ForwardIterator`has `Vector_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Vector_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator, class OutputIterator>
|
||||
OutputIterator linear_base(ForwardIterator first, ForwardIterator
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ returns true iff the points in `A = tuple [first,last)` are
|
|||
affinely independent.
|
||||
|
||||
\pre The objects are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
affinely_independent(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -22,7 +22,7 @@ affinely_independent(ForwardIterator first, ForwardIterator last);
|
|||
computes
|
||||
the affine rank of the points in `A = tuple [first,last)`.
|
||||
\pre The objects in \f$ A\f$ are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> int
|
||||
affine_rank(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -49,7 +49,7 @@ determines whether \f$ p\f$ is contained in
|
|||
the affine hull of the points in `A = tuple [first,last)`.
|
||||
\pre The objects in `A` are of the same dimension.
|
||||
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
contained_in_affine_hull( ForwardIterator first, ForwardIterator
|
||||
|
|
@ -63,7 +63,7 @@ determines whether \f$ v\f$ is contained
|
|||
in the linear hull of the vectors in `A = tuple [first,last)`.
|
||||
\pre The objects in \f$ A\f$ are of the same dimension.
|
||||
|
||||
\tparam `ForwardIterator`has `Vector_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Vector_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
contained_in_linear_hull( ForwardIterator first, ForwardIterator
|
||||
|
|
@ -78,7 +78,7 @@ simplex of the points in `A = tuple [first,last)`.
|
|||
|
||||
\pre The objects in \f$ A\f$ are of the same dimension and affinely
|
||||
independent.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
contained_in_simplex( ForwardIterator first, ForwardIterator last,
|
||||
|
|
@ -118,7 +118,7 @@ decides whether the vectors in `A = tuple [first,last)`
|
|||
are linearly independent.
|
||||
|
||||
\pre The objects in `A` are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Vector_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Vector_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
linearly_independent( ForwardIterator first, ForwardIterator
|
||||
|
|
@ -131,7 +131,7 @@ last);
|
|||
computes
|
||||
the linear rank of the vectors in `A = tuple [first,last)`.
|
||||
\pre The objects are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Vector_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Vector_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> int
|
||||
linear_rank(ForwardIterator first, ForwardIterator last);
|
||||
|
|
@ -150,7 +150,7 @@ where `A[i]` denotes the %Cartesian coordinate vector of
|
|||
the \f$ i\f$-th point in \f$ A\f$.
|
||||
\pre `size [first,last) == d+1` and `A[i].dimension() == d` \f$ \forall0 \leq i \leq d\f$.
|
||||
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
|
||||
*/
|
||||
template <class ForwardIterator> Orientation
|
||||
|
|
@ -165,7 +165,7 @@ returns the relative position of point
|
|||
order of the points of \f$ A\f$ does not matter.
|
||||
|
||||
\pre `orientation(first,last)` is not `ZERO`.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Bounded_side
|
||||
side_of_bounded_sphere( ForwardIterator first, ForwardIterator last,
|
||||
|
|
@ -182,7 +182,7 @@ constructed sphere. If the points in \f$ A\f$ are positively oriented,
|
|||
the positive side is the bounded interior of the sphere.
|
||||
|
||||
\pre `A` contains \f$ d+1\f$ points in \f$ d\f$-space.
|
||||
\tparam `ForwardIterator`has `Point_d<R>` as value type.
|
||||
\tparam ForwardIterator has `Point_d<R>` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Oriented_side
|
||||
side_of_oriented_sphere( ForwardIterator first, ForwardIterator
|
||||
|
|
|
|||
|
|
@ -17,8 +17,7 @@ computes
|
|||
the affine rank of the points in `A = tuple [first,last)`.
|
||||
\pre The objects are of the same dimension.
|
||||
|
||||
\cgalRequires The value type of `ForwardIterator` is `Kernel_d::Point_d`.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator is a model of `ForwardIterator` with `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> int
|
||||
operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ independent.
|
|||
|
||||
\pre The objects are of the same dimension.
|
||||
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ public:
|
|||
returns the
|
||||
center of the sphere spanned by the points in `A = tuple [first,last)`.
|
||||
\pre \f$A\f$ contains \f$d+1\f$ affinely independent points of dimension \f$d\f$.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Kernel_d::Point_d
|
||||
operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ determines whether \f$ p\f$ is contained in the
|
|||
affine hull of the points in `A = tuple [first,last)`.
|
||||
\pre The objects are of the same dimension.
|
||||
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Bounded_side
|
||||
operator()( ForwardIterator first, ForwardIterator last, const
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ public:
|
|||
determines whether \f$ v\f$ is contained in the
|
||||
linear hull of the vectors in `A = tuple [first,last)`.
|
||||
\pre The objects are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Vector_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Vector_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Bounded_side
|
||||
operator()( ForwardIterator first, ForwardIterator last, const
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ determines whether \f$ p\f$ is contained in the
|
|||
simplex of the points in `A = tuple [first,last)`.
|
||||
|
||||
\pre The objects in \f$ A\f$ are of the same dimension and affinely independent.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Bounded_side
|
||||
operator()( ForwardIterator first, ForwardIterator last, const
|
||||
|
|
|
|||
|
|
@ -19,8 +19,8 @@ it via an iterator range starting in `result`. The returned
|
|||
iterator marks the end of the output.
|
||||
|
||||
\pre \f$ A\f$ contains vectors of the same dimension \f$ d\f$.
|
||||
\tparam `InputIterator`has `Kernel_d::Vector_d` as value type.
|
||||
\tparam `OutputIterator`has `Kernel_d::Vector_d` as value type.
|
||||
\tparam InputIterator has `Kernel_d::Vector_d` as value type.
|
||||
\tparam OutputIterator accepts objects of type `Kernel_d::Vector_d`.
|
||||
*/
|
||||
template <class
|
||||
ForwardIterator, class OutputIterator> int
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ computes
|
|||
the linear rank of the vectors in `A = tuple [first,last)`.
|
||||
\pre \f$ A\f$ contains vectors of the same dimension \f$ d\f$.
|
||||
|
||||
\tparam `ForwardIterator`has `Kernel_d::Vector_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Vector_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> int
|
||||
operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ whether the vectors in `A = tuple [first,last)` are linearly
|
|||
independent.
|
||||
|
||||
\pre The objects in `A` are of the same dimension.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Vector_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Vector_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> bool
|
||||
operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ where `A[i]` denotes the %Cartesian coordinate vector of
|
|||
the \f$ i\f$-th point in \f$ A\f$.
|
||||
\pre `size [first,last) == d+1` and `A[i].dimension() == d` \f$ \forall0 \leq i \leq d\f$.
|
||||
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator>
|
||||
Orientation operator()(ForwardIterator first, ForwardIterator last);
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ returns the relative position of point
|
|||
order of the points of \f$ A\f$ does not matter.
|
||||
|
||||
\pre `orientation(first,last)` is not `ZERO`.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Bounded_side
|
||||
operator()( ForwardIterator first, ForwardIterator last, const
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ sphere. If the points in \f$ A\f$ are positively oriented, the positive
|
|||
side is the bounded interior of the sphere.
|
||||
|
||||
\pre `A` contains \f$ d+1\f$ points in \f$ d\f$-space.
|
||||
\tparam `ForwardIterator`has `Kernel_d::Point_d` as value type.
|
||||
\tparam ForwardIterator has `Kernel_d::Point_d` as value type.
|
||||
*/
|
||||
template <class ForwardIterator> Oriented_side
|
||||
operator()( ForwardIterator first, ForwardIterator last, const
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ Vector(int d, NT x);
|
|||
creates an
|
||||
instance `v` of type `Vector`; `v` is initialized to the
|
||||
vector with entries `set [first,last)`.
|
||||
\tparam `ForwardIterator`has `NT` as value type.
|
||||
\tparam ForwardIterator has `NT` as value type.
|
||||
*/
|
||||
template <class Forward_iterator>
|
||||
Vector(Forward_iterator first, Forward_iterator last);
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ The class `Dynamic_matrix` is an adaptor for an arbitrary
|
|||
matrix class `M` to provide the dynamic operations needed for monotone
|
||||
matrix search.
|
||||
|
||||
\tparam `M` is a model for `BasicMatrix`.
|
||||
\tparam `M` is a model of `BasicMatrix`.
|
||||
|
||||
\cgalModels `MonotoneMatrixSearchTraits`
|
||||
\cgalModels `BasicMatrix`
|
||||
|
|
|
|||
|
|
@ -36,8 +36,8 @@ monotone).
|
|||
|
||||
\pre `t` points to a structure of size at least `m.number_of_rows()`
|
||||
|
||||
\tparam `Matrix` is a model for `MonotoneMatrixSearchTraits`.
|
||||
\tparam `RandomAccessIc`has `int` as value type.
|
||||
\tparam Matrix is a model of `MonotoneMatrixSearchTraits`.
|
||||
\tparam RandomAccessIC is a model of `RandomAccessIterator` with `int` as value type.
|
||||
If `compare_strictly` is defined, it is an adaptable
|
||||
binary function: `Matrix::Value` \f$ \times\f$
|
||||
`Matrix::Value` \f$ \rightarrow\f$ `bool` describing a strict
|
||||
|
|
|
|||
|
|
@ -45,8 +45,8 @@ to `Traits::compare_non_strictly`.
|
|||
true.
|
||||
</OL>
|
||||
|
||||
\tparam `Traits` is a model for `SortedMatrixSearchTraits`.
|
||||
\tparam `RandomAccessIterator`has `Traits::Matrix` as value type.
|
||||
\tparam Traits is a model for `SortedMatrixSearchTraits`.
|
||||
\tparam RandomAccessIterator has `Traits::Matrix` as value type.
|
||||
|
||||
\cgalHeading{Implementation}
|
||||
|
||||
|
|
|
|||
|
|
@ -267,11 +267,10 @@ constrained edges of `t`, except for the unbounded component.
|
|||
|
||||
\tparam CDT must be 2D constrained Delaunay triangulation
|
||||
and its geometric traits class must be a model of `DelaunayMeshTraits_2`.
|
||||
The face of the constrained Delaunay triangulation must be a model of the concept `DelaunayMeshFaceBase_2`.
|
||||
|
||||
\tparam Criteria must be a model of the concept `MeshingCriteria_2`.
|
||||
|
||||
The face of the constrained Delaunay triangulation must be a model of the concept `DelaunayMeshFaceBase_2`.
|
||||
`CDT::Face_handle` must be the same as `Criteria::Face_handle`.
|
||||
`Criteria::Face_handle` must be the same as `CDT::Face_handle`.
|
||||
*/
|
||||
template<class CDT, class Criteria>
|
||||
void refine_Delaunay_mesh_2 (CDT &t, const Criteria& criteria = Criteria());
|
||||
|
|
@ -297,12 +296,12 @@ never meshed.
|
|||
|
||||
\tparam CDT must be 2D constrained Delaunay triangulation
|
||||
and its geometric traits class must be a model of `DelaunayMeshTraits_2`.
|
||||
The face of the constrained Delaunay triangulation must be a model of the concept `DelaunayMeshFaceBase_2`.
|
||||
|
||||
\tparam Criteria must be a model of the concept `MeshingCriteria_2`.
|
||||
`Criteria::Face_handle` must be the same as `CDT::Face_handle`.
|
||||
\tparam InputIterator must be an input iterator with value type `CDT::Geom_traits::Point_2`.
|
||||
|
||||
The face of the constrained Delaunay triangulation must be a model of the concept `DelaunayMeshFaceBase_2`.
|
||||
`CDT::Face_handle` must be the same as `Criteria::Face_handle`.
|
||||
|
||||
*/
|
||||
template <class CDT, class Criteria, class InputIterator>
|
||||
|
|
|
|||
|
|
@ -49,10 +49,10 @@ namespace CGAL {
|
|||
/// `[first,last)`. In case of a tie, the point
|
||||
/// with the smallest `y`-coordinate is taken.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept `PolygonTraits_2`.
|
||||
/// \tparam Traits is a model of the concept `PolygonTraits_2`.
|
||||
/// Only the members `Less_xy_2` and
|
||||
/// `less_xy_2_object()` are used.
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
///
|
||||
/// \sa `CGAL::right_vertex_2()`
|
||||
|
|
@ -68,11 +68,11 @@ ForwardIterator left_vertex_2(ForwardIterator first,
|
|||
/// `[first,last)`. In case of a tie, the point
|
||||
/// with the largest `y`-coordinate is taken.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// In fact, only the members `Less_xy_2` and
|
||||
/// `less_xy_2_object()` are used.
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have`Traits::Point_2` as value type.
|
||||
///
|
||||
///
|
||||
/// \sa `CGAL::left_vertex_2()`
|
||||
|
|
@ -88,11 +88,11 @@ ForwardIterator right_vertex_2(ForwardIterator first,
|
|||
/// `[first,last)`. In case of a tie, the point
|
||||
/// with the largest `x`-coordinate is taken.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the members `Less_yx_2` and
|
||||
/// `less_yx_2_object()` are used.
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
/// \sa `CGAL::left_vertex_2()`
|
||||
/// \sa `CGAL::right_vertex_2()`
|
||||
|
|
@ -107,11 +107,11 @@ ForwardIterator top_vertex_2(ForwardIterator first,
|
|||
/// `[first,last)`. In case of a tie, the point
|
||||
/// with the smallest `x`-coordinate is taken.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the members `Less_yx_2` and
|
||||
/// `less_yx_2_object()` are used.
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
/// \sa `CGAL::left_vertex_2()`
|
||||
/// \sa `CGAL::right_vertex_2()`
|
||||
|
|
@ -130,14 +130,14 @@ ForwardIterator bottom_vertex_2(ForwardIterator first,
|
|||
/// The functionality is also available by the `polygon_area_2()` function, which
|
||||
/// returns the area instead of taking it as a parameter.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Compute_area_2` : Computes the signed area of the
|
||||
/// oriented triangle defined by 3 `Point_2` passed as arguments.
|
||||
/// - `FT`
|
||||
/// - `compute_area_2_object()`
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
/// \sa `CGAL::polygon_area_2()`
|
||||
/// \sa `PolygonTraits_2`
|
||||
|
|
@ -170,12 +170,12 @@ area_2( ForwardIterator first, ForwardIterator last,
|
|||
/// The sign is positive for counterclockwise polygons, negative for
|
||||
/// clockwise polygons. If the polygon is not simple, the area is not well defined.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept `PolygonTraits_2`. Only the following members of this traits class are used:
|
||||
/// \tparam Traits is a model of the concept `PolygonTraits_2`. Only the following members of this traits class are used:
|
||||
/// - `Compute_area_2` : Computes the signed area of the
|
||||
/// oriented triangle defined by 3 `Point_2` passed as arguments.
|
||||
/// - `FT`
|
||||
/// - `compute_area_2_object`
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
///
|
||||
/// \sa `PolygonTraits_2 `
|
||||
|
|
@ -205,14 +205,14 @@ polygon_area_2( ForwardIterator first, ForwardIterator last,
|
|||
|
||||
/// Checks if the polygon is convex.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Less_xy_2`
|
||||
/// - `Orientation_2`
|
||||
/// - `less_xy_2_object`
|
||||
/// - `orientation_2_object`
|
||||
/// \tparam `ForwardIterator` must have`PolygonTraits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `PolygonTraits::Point_2` as value type.
|
||||
///
|
||||
/// \sa `PolygonTraits_2 `
|
||||
/// \sa `CGAL::Polygon_2 `
|
||||
|
|
@ -225,7 +225,7 @@ bool is_convex_2(ForwardIterator first,
|
|||
/// iterator range `[first,last)` is simple, that is, if the edges
|
||||
/// do not intersect, except consecutive edges in their common vertex.
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Point_2`
|
||||
|
|
@ -233,7 +233,7 @@ bool is_convex_2(ForwardIterator first,
|
|||
/// - `Orientation_2`
|
||||
/// - `less_xy_2_object()`
|
||||
/// - `orientation_2_object()`
|
||||
/// \tparam `ForwardIterator` must have`PolygonTraits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `PolygonTraits::Point_2` as value type.
|
||||
///
|
||||
/// ### Implementation##
|
||||
///
|
||||
|
|
@ -253,7 +253,7 @@ bool is_simple_2(ForwardIterator first,
|
|||
// instead of Point, but this is not allowed by g++ 2.7.2.
|
||||
///
|
||||
/// Computes on which side of a polygon a point lies.
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Less_xy_2`
|
||||
|
|
@ -264,7 +264,7 @@ bool is_simple_2(ForwardIterator first,
|
|||
/// - `compare_x_2_object()`
|
||||
/// - `compare_y_2_object()`
|
||||
/// - `orientation_2_object()`
|
||||
/// \tparam `ForwardIterator` must have`PolygonTraits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `PolygonTraits::Point_2` as value type.
|
||||
///
|
||||
/// \sa `PolygonTraits_2`
|
||||
/// \sa `CGAL::bounded_side_2()`
|
||||
|
|
@ -287,7 +287,7 @@ Oriented_side oriented_side_2(ForwardIterator first,
|
|||
/// According to the definition points in the bounded region are inside the polygon.
|
||||
///
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Compare_x_2`
|
||||
|
|
@ -296,7 +296,7 @@ Oriented_side oriented_side_2(ForwardIterator first,
|
|||
/// - `compare_x_2_object()`
|
||||
/// - `compare_y_2_object()`
|
||||
/// - `orientation_2_object()`
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have `Traits::Point_2` as value type.
|
||||
///
|
||||
/// ### Implementation ###
|
||||
///
|
||||
|
|
@ -319,13 +319,13 @@ Bounded_side bounded_side_2(ForwardIterator first,
|
|||
/// Computes if a polygon is clockwise or counterclockwise oriented.
|
||||
/// \pre `is_simple_2(first, last, traits);`
|
||||
///
|
||||
/// \tparam `Traits` is a model of the concept
|
||||
/// \tparam Traits is a model of the concept
|
||||
/// `PolygonTraits_2`.
|
||||
/// Only the following members of this traits class are used:
|
||||
/// - `Less_xy_2`
|
||||
/// - `less_xy_2_object()`
|
||||
/// - `orientation_2_object()`
|
||||
/// \tparam `ForwardIterator` must have`Traits::Point_2` as value type.
|
||||
/// \tparam ForwardIterator must have`Traits::Point_2` as value type.
|
||||
///
|
||||
///
|
||||
///
|
||||
|
|
|
|||
|
|
@ -1238,7 +1238,7 @@ public:
|
|||
facet removed and the time to compute `h->%prev()`.
|
||||
\pre The degree of both vertices incident to `h` is at least three (no antennas).
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_facet.png
|
||||
\image latex euler_facet.png
|
||||
|
|
@ -1284,7 +1284,7 @@ n */
|
|||
the time to compute `h->%prev()` and `h->%opposite()->%prev()`.
|
||||
\pre The size of both facets incident to `h` is at least four (no multi-edges).
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_vertex.png
|
||||
\image latex euler_vertex.png
|
||||
|
|
@ -1338,7 +1338,7 @@ n */
|
|||
The time is proportional to the sum of the size of all incident facets.
|
||||
\pre None of the incident facets of `g->vertex()` is a hole. There are at least two distinct facets incident to the facets that are incident to `g->vertex()`. (This prevents the operation from collapsing a volume into two facets glued together with opposite orientations, such as would happen with any vertex of a tetrahedron.)
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_center.png
|
||||
\image latex euler_center.png
|
||||
|
|
@ -1375,7 +1375,7 @@ n */
|
|||
polyhedron unchanged.
|
||||
\pre The facets denoted by `h` and `g` are different and have equal degree (i.e., number of edges).
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
|
||||
\image html euler_loop.png
|
||||
\image latex euler_loop.png
|
||||
|
|
@ -1395,7 +1395,7 @@ n */
|
|||
See `erase_facet(h)` for a more generalized variant.
|
||||
\pre None of the incident halfedges of the facet is a border edge.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
Halfedge_handle make_hole( Halfedge_handle h);
|
||||
|
||||
|
|
@ -1450,7 +1450,7 @@ n */
|
|||
See `make_hole(h)` for a more specialized variant.
|
||||
\pre `h->is_border() == false`.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`
|
||||
`Supports_removal` must be `CGAL::Tag_true`
|
||||
|
||||
\image html add_facet1.png
|
||||
\image latex add_facet1.png
|
||||
|
|
@ -1464,7 +1464,7 @@ n */
|
|||
removes the vertices, halfedges, and facets that belong to the
|
||||
connected component of `h`.
|
||||
|
||||
Requires : `Supports_removal` \f$ \equiv\f$ `CGAL::Tag_true`.
|
||||
`Supports_removal` must be `CGAL::Tag_true`.
|
||||
*/
|
||||
void erase_connected_component( Halfedge_handle h);
|
||||
|
||||
|
|
@ -1473,7 +1473,7 @@ n */
|
|||
Keep `nb_components_to_keep` largest connected components.
|
||||
Returns the number of connected components erased (ignoring isolated vertices).
|
||||
|
||||
Requires : supports vertices, halfedges, and removal operation.
|
||||
The polyhedron type must support vertices, halfedges, and removal operations.
|
||||
*/
|
||||
unsigned int keep_largest_connected_components(unsigned int nb_components_to_keep);
|
||||
|
||||
|
|
|
|||
|
|
@ -131,8 +131,8 @@ std::ostream& stream = std::cout);
|
|||
initializes `poly_dist` to \f$ pd(P,Q)\f$ with \f$ P\f$ and \f$ Q\f$ being the
|
||||
sets of points in the range [`p_first`,`p_last`) and
|
||||
[`q_first`,`q_last`), respectively.
|
||||
@tparam `InputIterator1` has `Point` as value type.
|
||||
@tparam `InputIterator2` has `Point` as value type.
|
||||
\tparam InputIterator1 has `Point` as value type.
|
||||
\tparam InputIterator2 has `Point` as value type.
|
||||
\pre All points have the same dimension.
|
||||
|
||||
\attention If `verbose` is set to \f$ 1\f$, \f$ 2\f$, or
|
||||
|
|
@ -271,7 +271,7 @@ Support_point_index_iterator support_points_q_indices_end( ) const;
|
|||
/*!
|
||||
|
||||
returns the realizing point of \f$ P\f$.
|
||||
Requires : An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre \f$ pd(P,Q)\f$ is finite.
|
||||
*/
|
||||
Point realizing_point_p( ) const;
|
||||
|
|
@ -279,7 +279,7 @@ Point realizing_point_p( ) const;
|
|||
/*!
|
||||
|
||||
returns the realizing point of \f$ Q\f$.
|
||||
Requires : An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre \f$ pd(P,Q)\f$ is finite.
|
||||
*/
|
||||
Point realizing_point_q( ) const;
|
||||
|
|
@ -287,7 +287,7 @@ Point realizing_point_q( ) const;
|
|||
/*!
|
||||
|
||||
returns the squared distance of `poly_dist`, i.e.\ \f$ (pd(P,Q))^2\f$.
|
||||
Requires : An implicit conversion from `ET` to `RT` is available.
|
||||
An implicit conversion from `ET` to `RT` must be available.
|
||||
\pre \f$ pd(P,Q)\f$ is finite.
|
||||
*/
|
||||
FT squared_distance( ) const;
|
||||
|
|
@ -388,8 +388,8 @@ void clear( );
|
|||
sets `poly_dist` to \f$ pd(P,Q)\f$ with \f$ P\f$ and \f$ Q\f$ being the sets of
|
||||
points in the ranges [`p_first`,`p_last`) and
|
||||
[`q_first`,`q_last`), respectively.
|
||||
@tparam `InputIterator1` has `Point` as value type.
|
||||
@tparam `InputIterator2` has `Point` as value type.
|
||||
\tparam InputIterator1 has `Point` as value type.
|
||||
\tparam InputIterator2 has `Point` as value type.
|
||||
\pre All points have the same dimension.
|
||||
*/
|
||||
template < class InputIterator1, class InputIterator2 >
|
||||
|
|
@ -402,7 +402,7 @@ InputIterator2 q_last );
|
|||
|
||||
sets `poly_dist` to \f$ pd(P,Q)\f$ with \f$ P\f$ being the set of points
|
||||
in the range [`p_first`,`p_last`) (\f$ Q\f$ remains unchanged).
|
||||
@tparam `InputIterator` has `Point` as value type.
|
||||
\tparam InputIterator has `Point` as value type.
|
||||
\pre All points in \f$ P\f$ have dimension `poly_dist``.ambient_dimension()` if \f$ Q\f$ is not empty.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -413,7 +413,7 @@ InputIterator p_last );
|
|||
|
||||
sets `poly_dist` to \f$ pd(P,Q)\f$ with \f$ Q\f$ being the set of points
|
||||
in the range [`q_first`,`q_last`) (\f$ P\f$ remains unchanged).
|
||||
@tparam `InputIterator` has `Point` as value type.
|
||||
\tparam InputIterator has `Point` as value type.
|
||||
\pre All points in \f$ Q\f$ have dimension `poly_dist``.ambient_dimension()` if \f$ P\f$ is not empty.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -439,8 +439,8 @@ void insert_q( const Point& q);
|
|||
inserts the points in the range [`p_first`,`p_last`)
|
||||
and [`q_first`,`q_last`) into \f$ P\f$ and \f$ Q\f$, respectively,
|
||||
and recomputes the (squared) distance.
|
||||
@tparam `InputIterator1` has `Point` as value type.
|
||||
@tparam `InputIterator2` has `Point` as value type.
|
||||
\tparam InputIterator1 has `Point` as value type.
|
||||
\tparam InputIterator2 has `Point` as value type.
|
||||
\pre All points have the same dimension. If `poly_dist` is not \f$ pd(\emptyset, \emptyset)\f$, this dimension must be equal to `poly_dist``.ambient_dimension()`.
|
||||
*/
|
||||
template < class InputIterator1, class InputIterator2 >
|
||||
|
|
@ -453,7 +453,7 @@ InputIterator2 q_last );
|
|||
|
||||
inserts the points in the range [`p_first`,`p_last`) into
|
||||
\f$ P\f$ and recomputes the (squared) distance (\f$ Q\f$ remains unchanged).
|
||||
@tparam `InputIterator` has `Point` as value type.
|
||||
\tparam InputIterator has `Point` as value type.
|
||||
\pre All points have the same dimension. If `poly_dist` is not empty, this dimension must be equal to `poly_dist``.ambient_dimension()`.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -464,7 +464,7 @@ InputIterator p_last );
|
|||
|
||||
inserts the points in the range [`q_first`,`q_last`) into
|
||||
\f$ Q\f$ and recomputes the (squared) distance (\f$ P\f$ remains unchanged).
|
||||
@tparam `InputIterator` has `Point` as value type.
|
||||
\tparam InputIterator has `Point` as value type.
|
||||
\pre All points have the same dimension. If `poly_dist` is not empty, this dimension must be equal to `poly_dist``.ambient_dimension()`.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
|
|
@ -512,7 +512,7 @@ const Traits& traits( ) const;
|
|||
/*!
|
||||
|
||||
writes `poly_dist` to output stream `os`.
|
||||
Requires : The output operator is defined for `Point_d`.
|
||||
An overload of `operator<<` must be defined for `Point_d`.
|
||||
\relates Polytope_distance_d
|
||||
*/
|
||||
std::ostream&
|
||||
|
|
@ -521,7 +521,7 @@ operator << ( std::ostream& os, const Polytope_distance_d<Traits>& poly_dist);
|
|||
/*!
|
||||
|
||||
reads `poly_dist` from input stream `is`.
|
||||
Requires : The input operator is defined for `Point_d`.
|
||||
An overload of `operator>>` must be defined for `Point_d`.
|
||||
\relates Polytope_distance_d
|
||||
*/
|
||||
std::istream&
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ creates a variable `width` initialized to the width of \f$ \mathcal{S}\f$ -
|
|||
with \f$ \mathcal{S}\f$ being the set of points in the range
|
||||
[`first`,`beyond`).
|
||||
|
||||
\tparam `InputIterator` has `Point_3` as value type.
|
||||
\tparam InputIterator has `Point_3` as value type.
|
||||
*/
|
||||
template < class InputIterator >
|
||||
Width_3( InputIterator first, InputIterator beyond);
|
||||
|
|
@ -137,7 +137,7 @@ the width of the polyhedron \f$ P\f$. Note that the vertex point coordinates
|
|||
are altered!
|
||||
\pre \f$ P\f$ is a convex polyhedron.
|
||||
|
||||
`Polyhedron` is a
|
||||
\tparam Polyhedron is a
|
||||
`CGAL::Polyhedron_3` with facets supporting plane equations
|
||||
where `Polyhedron::Point_3` \f$ \equiv\f$ `Point_3` and
|
||||
`Polyhedron::Plane_3` \f$ \equiv\f$ `Plane_3`.
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ CGAL::Kernel_traits<
|
|||
>::Kernel
|
||||
\endcode
|
||||
|
||||
\tparam `InputIterator` must have
|
||||
\tparam InputIterator must have
|
||||
`std::pair<K::Point_2, K::FT>` or `std::pair<K::Point_3, K::FT> as value type`.
|
||||
|
||||
\pre first != beyond, and the sum of the weights is non-zero.
|
||||
|
|
@ -50,7 +50,7 @@ points.
|
|||
\returns `K::Point_2` or `K::Point_3` depending on the dimension of
|
||||
the input values.
|
||||
|
||||
\tparam `InputIterator` must have
|
||||
\tparam InputIterator must have
|
||||
`std::pair<K::Point_2, K::FT>` or `std::pair<K::Point_3, K::FT>` as value type.
|
||||
|
||||
\pre first != beyond, and the sum of the weights is non-zero.
|
||||
|
|
|
|||
|
|
@ -75,11 +75,11 @@ especially for large and/or complex sequences.
|
|||
second component refers to the maximal element in the range
|
||||
[`first`, `last`).
|
||||
|
||||
\tparam `CompareMin` is an adaptable binary
|
||||
\tparam CompareMin is an adaptable binary
|
||||
function object: `VT` \f$ \times\f$ `VT` \f$ \rightarrow\f$ `bool` where `VT`
|
||||
is the value type of `ForwardIterator`.
|
||||
|
||||
\tparam `CompareMax` is an adaptable binary
|
||||
\tparam CompareMax is an adaptable binary
|
||||
function object: `VT` \f$ \times\f$ `VT` \f$ \rightarrow\f$ `bool` where `VT`
|
||||
is the value type of `ForwardIterator`.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -401,7 +401,7 @@ additional argument.
|
|||
|
||||
\cgalModels `OutputIterator`
|
||||
|
||||
\tparam `Container` provides a member function `insert(const Container::const_reference&)`.
|
||||
\tparam Container provides a member function `insert(const Container::const_reference&)`.
|
||||
|
||||
*/
|
||||
template< typename Container >
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ constructs a quadruple such that
|
|||
constructed from `v`, `third` is constructed from `w`,
|
||||
and `fourth` is constructed from `x`.
|
||||
|
||||
\Requires : Proper conversion operators exist from `U` to `T1`, `V` to `T2`, `W` to `T3`, and `X` to `T4`.
|
||||
Proper conversion operators must exist from `U` to `T1`, `V` to `T2`, `W` to `T3`, and `X` to `T4`.
|
||||
*/
|
||||
template <class U, class V, class W, class X>
|
||||
Quadruple(U u, V v, W w, X x);
|
||||
|
|
@ -357,7 +357,7 @@ Triple(T1 x, T2 y, T3 z);
|
|||
constructs a triple such that `first` is constructed
|
||||
from `u`, `second` is constructed from `v`, and
|
||||
`third` is constructed from `w`.
|
||||
Requires : Proper conversion operators exist from `U` to `T1`, `V` to `T2`, and `W` to `T3`.
|
||||
Proper conversion operators must exist from `U` to `T1`, `V` to `T2`, and `W` to `T3`.
|
||||
*/
|
||||
template <class U, class V, class W> Triple(U u, V v,
|
||||
W w);
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ Multiscale_sort (const Sort &sort = Sort(), std::ptrdiff_t threshold = 1, double
|
|||
|
||||
/*!
|
||||
It sorts the range `[begin, end)`.
|
||||
Requires : `Sort::operator()(RandomAccessIterator begin, RandomAccessIterator end)` is defined.
|
||||
`Sort::operator()(RandomAccessIterator begin, RandomAccessIterator end)` must be defined.
|
||||
*/
|
||||
template <class RandomAccessIterator> void operator() (RandomAccessIterator begin, RandomAccessIterator end) const;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue