mirror of https://github.com/CGAL/cgal
Merge pull request #3743 from afabri/SearchStructures-fix_code_doc-GF
Range and Segment Trees: Sync code and doc
This commit is contained in:
commit
eaace93cf3
|
|
@ -4,13 +4,15 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Range_segment_tree_traits_set_2` is a range and segment tree traits class for the
|
The class `Range_segment_tree_set_traits_2` is a range and segment tree traits class for the
|
||||||
2-dimensional point class from the \cgal kernel. The class is
|
2-dimensional point class from the \cgal kernel. The class is
|
||||||
parameterized with a representation class `R`.
|
parameterized with a representation class `R`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R >
|
template< typename R >
|
||||||
class Range_segment_tree_traits_set_2 {
|
class Range_segment_tree_set_traits_2 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -19,16 +21,16 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
Point_2<R> Key;
|
typedef R::Point_2 Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<Key, Key> Interval;
|
typedef std::pair<Key, Key> Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Range_segment_tree_traits_set_2 */
|
}; /* end Range_segment_tree_set_traits_2 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
|
|
@ -36,13 +38,15 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Range_segment_tree_traits_set_3` is a range and segment tree traits class for the 3-dimensional
|
The class `Range_segment_tree_set_traits_3` is a range and segment tree traits class for the 3-dimensional
|
||||||
point class from the \cgal kernel.
|
point class from the \cgal kernel.
|
||||||
The class is parameterized with a representation class `R`.
|
The class is parameterized with a representation class `R`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R >
|
template< typename R >
|
||||||
class Range_segment_tree_traits_set_3 {
|
class Range_segment_tree_set_traits_3 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -51,16 +55,16 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
Point_3<R> Key;
|
typedef R::Point_3 Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<Key, Key> Interval;
|
typedef std::pair<Key, Key> Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Range_segment_tree_traits_set_3 */
|
}; /* end Range_segment_tree_set_traits_3 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
|
|
@ -68,15 +72,17 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Range_tree_traits_map_2` is a range tree traits class for the
|
The class `Range_tree_map_traits_2` is a range tree traits class for the
|
||||||
2-dimensional point class from the \cgal kernel, where data of
|
2-dimensional point class from the \cgal kernel, where data of
|
||||||
type `T` is associated to each key. The class is
|
type `T` is associated to each key. The class is
|
||||||
parameterized with a representation class `R` and the type of
|
parameterized with a representation class `R` and the type of
|
||||||
the associated data `T`.
|
the associated data `T`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R, typename T >
|
template< typename R, typename T >
|
||||||
class Range_tree_traits_map_2 {
|
class Range_tree_map_traits_2 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -85,16 +91,16 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<R::Point_2,T> Key;
|
typedef std::pair<R::Point_2,T> Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<R::Point_2, R::Point_2 > Interval;
|
typedef std::pair<R::Point_2, R::Point_2 > Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Range_tree_traits_map_2 */
|
}; /* end Range_tree_map_traits_2 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
|
|
@ -102,15 +108,17 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Range_tree_traits_map_3` is a range and segment tree traits class for the 3-dimensional
|
The class `Range_tree_map_traits_3` is a range and segment tree traits class for the 3-dimensional
|
||||||
point class from the \cgal kernel, where data of
|
point class from the \cgal kernel, where data of
|
||||||
type `T` is associated to each key.
|
type `T` is associated to each key.
|
||||||
The class is parameterized with a representation class `R` and the type of
|
The class is parameterized with a representation class `R` and the type of
|
||||||
the associated data `T`.
|
the associated data `T`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R, typename T >
|
template< typename R, typename T >
|
||||||
class Range_tree_traits_map_3 {
|
class Range_tree_map_traits_3 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -119,16 +127,16 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<R::Point_3,T> Key;
|
typedef std::pair<R::Point_3,T> Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<R::Point_3, R::Point_3> Interval;
|
typedef std::pair<R::Point_3, R::Point_3> Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Range_tree_traits_map_3 */
|
}; /* end Range_tree_map_traits_3 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
|
|
@ -136,15 +144,17 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Segment_tree_traits_map_2` is a segment tree traits class for the
|
The class `Segment_tree_map_traits_2` is a segment tree traits class for the
|
||||||
2-dimensional point class from the \cgal kernel, where data of
|
2-dimensional point class from the \cgal kernel, where data of
|
||||||
type `T` is associated to each interval. The class is
|
type `T` is associated to each interval. The class is
|
||||||
parameterized with a representation class `R` and the type of
|
parameterized with a representation class `R` and the type of
|
||||||
the associated data `T`.
|
the associated data `T`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R, typename T >
|
template< typename R, typename T >
|
||||||
class Segment_tree_traits_map_2 {
|
class Segment_tree_map_traits_2 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -153,16 +163,16 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
R::Point_2 Key;
|
typedef R::Point_2 Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<std::pair<Key,Key>,T> Interval;
|
typedef std::pair<std::pair<Key,Key>,T> Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Segment_tree_traits_map_2 */
|
}; /* end Segment_tree_map_traits_2 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
||||||
namespace CGAL {
|
namespace CGAL {
|
||||||
|
|
@ -170,15 +180,17 @@ namespace CGAL {
|
||||||
/*!
|
/*!
|
||||||
\ingroup PkgSearchStructuresTraitsClasses
|
\ingroup PkgSearchStructuresTraitsClasses
|
||||||
|
|
||||||
The class `Segment_tree_traits_map_3` is a segment tree traits class for the 3-dimensional
|
The class `Segment_tree_map_traits_3` is a segment tree traits class for the 3-dimensional
|
||||||
point class from the \cgal kernel, where data of
|
point class from the \cgal kernel, where data of
|
||||||
type `T` is associated to each interval.
|
type `T` is associated to each interval.
|
||||||
The class is parameterized with a representation class `R` and the type of
|
The class is parameterized with a representation class `R` and the type of
|
||||||
the associated data `T`.
|
the associated data `T`.
|
||||||
|
|
||||||
|
\cgalModels `RangeSegmentTreeTraits_k`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
template< typename R, typename T >
|
template< typename R, typename T >
|
||||||
class Segment_tree_traits_map_3 {
|
class Segment_tree_map_traits_3 {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/// \name Types
|
/// \name Types
|
||||||
|
|
@ -187,14 +199,14 @@ public:
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<R::Point_3 > Key;
|
typedef std::pair<R::Point_3 > Key;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
||||||
*/
|
*/
|
||||||
std::pair<std::pair<Key, Key>,T> Interval;
|
typedef std::pair<std::pair<Key, Key>,T> Interval;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
}; /* end Segment_tree_traits_map_3 */
|
}; /* end Segment_tree_map_traits_3 */
|
||||||
} /* end namespace CGAL */
|
} /* end namespace CGAL */
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,14 @@ type information of the keys and intervals. Further more, they define function o
|
||||||
the keys and intervals, and provide comparison functions that
|
the keys and intervals, and provide comparison functions that
|
||||||
are needed for window queries.
|
are needed for window queries.
|
||||||
|
|
||||||
|
|
||||||
|
\cgalHasModel `CGAL::Range_segment_tree_set_traits_2`
|
||||||
|
\cgalHasModel `CGAL::Range_segment_tree_set_traits_3`
|
||||||
|
\cgalHasModel `CGAL::Range_tree_map_traits_2`
|
||||||
|
\cgalHasModel `CGAL::Range_tree_map_traits_3`
|
||||||
|
\cgalHasModel `CGAL::Segment_tree_map_traits_2`
|
||||||
|
\cgalHasModel `CGAL::Segment_tree_map_traits_3`
|
||||||
|
|
||||||
\cgalHeading{Example}
|
\cgalHeading{Example}
|
||||||
|
|
||||||
The following piece of code gives an example of how a traits class
|
The following piece of code gives an example of how a traits class
|
||||||
|
|
@ -122,7 +130,7 @@ typedef unspecified_type high_i;
|
||||||
/*!
|
/*!
|
||||||
function object providing an
|
function object providing an
|
||||||
`operator()` that takes two arguments argument \f$ a\f$, \f$ b\f$ of type `Key_i` and returns
|
`operator()` that takes two arguments argument \f$ a\f$, \f$ b\f$ of type `Key_i` and returns
|
||||||
true if \f$ a<b\f$, false otherwise.
|
`true` if \f$ a<b\f$, `false` otherwise.
|
||||||
*/
|
*/
|
||||||
typedef unspecified_type compare_i;
|
typedef unspecified_type compare_i;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,12 +42,12 @@ and segment trees in the same data structure.
|
||||||
|
|
||||||
\cgalCRPSection{Traits Classes}
|
\cgalCRPSection{Traits Classes}
|
||||||
|
|
||||||
- `CGAL::Range_segment_tree_traits_set_2<R>`
|
- `CGAL::Range_segment_tree_set_traits_2<R>`
|
||||||
- `CGAL::Range_segment_tree_traits_set_3<R>`
|
- `CGAL::Range_segment_tree_set_traits_3<R>`
|
||||||
- `CGAL::Range_tree_traits_map_2<R,T>`
|
- `CGAL::Range_tree_map_traits_2<R,T>`
|
||||||
- `CGAL::Range_tree_traits_map_3<R,T>`
|
- `CGAL::Range_tree_map_traits_3<R,T>`
|
||||||
- `CGAL::Segment_tree_traits_map_2<R,T>`
|
- `CGAL::Segment_tree_map_traits_2<R,T>`
|
||||||
- `CGAL::Segment_tree_traits_map_3<R,T>`
|
- `CGAL::Segment_tree_map_traits_3<R,T>`
|
||||||
- `CGAL::tree_interval_traits`
|
- `CGAL::tree_interval_traits`
|
||||||
- `CGAL::tree_point_traits`
|
- `CGAL::tree_point_traits`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,8 @@ in the cell an operator that computes its circumcenter.
|
||||||
|
|
||||||
\cgalRefines `TriangulationCellBase_3`
|
\cgalRefines `TriangulationCellBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Delaunay_triangulation_cell_base_3
|
\cgalHasModel `CGAL::Delaunay_triangulation_cell_base_3`
|
||||||
\cgalHasModel CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3
|
\cgalHasModel `CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3`
|
||||||
|
|
||||||
\sa `DelaunayTriangulationTraits_3`
|
\sa `DelaunayTriangulationTraits_3`
|
||||||
|
|
||||||
|
|
@ -26,7 +26,7 @@ public:
|
||||||
typedef DelaunayTriangulationTraits_3::Point_3 Point;
|
typedef DelaunayTriangulationTraits_3::Point_3 Point;
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
/// \name Access functions
|
/// \name Access Functions
|
||||||
/// @{
|
/// @{
|
||||||
/*!
|
/*!
|
||||||
Returns the circumcenter of the cell.
|
Returns the circumcenter of the cell.
|
||||||
|
|
|
||||||
|
|
@ -12,11 +12,11 @@ predicates and constructions on these objects.
|
||||||
|
|
||||||
\cgalHasModel `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended)
|
\cgalHasModel `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended)
|
||||||
\cgalHasModel `CGAL::Exact_predicates_exact_constructions_kernel` (recommended for Voronoi)
|
\cgalHasModel `CGAL::Exact_predicates_exact_constructions_kernel` (recommended for Voronoi)
|
||||||
\cgalHasModel CGAL::Filtered_kernel
|
\cgalHasModel `CGAL::Filtered_kernel`
|
||||||
\cgalHasModel CGAL::Cartesian
|
\cgalHasModel `CGAL::Cartesian`
|
||||||
\cgalHasModel CGAL::Simple_cartesian
|
\cgalHasModel `CGAL::Simple_cartesian`
|
||||||
\cgalHasModel CGAL::Homogeneous
|
\cgalHasModel `CGAL::Homogeneous`
|
||||||
\cgalHasModel CGAL::Simple_homogeneous
|
\cgalHasModel `CGAL::Simple_homogeneous`
|
||||||
|
|
||||||
In addition to the requirements described for the traits class of
|
In addition to the requirements described for the traits class of
|
||||||
`CGAL::Triangulation_3`, the geometric traits class of a
|
`CGAL::Triangulation_3`, the geometric traits class of a
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ circumcenter by calling `invalidate_weighted_circumcenter_cache()`.
|
||||||
|
|
||||||
\cgalRefines `RegularTriangulationCellBase_3`
|
\cgalRefines `RegularTriangulationCellBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3
|
\cgalHasModel `CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3`
|
||||||
|
|
||||||
\sa `RegularTriangulationTraits_3`
|
\sa `RegularTriangulationTraits_3`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ and an operator to compute its weighted circumcenter.
|
||||||
|
|
||||||
\cgalRefines `TriangulationCellBase_3`
|
\cgalRefines `TriangulationCellBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Regular_triangulation_cell_base_3
|
\cgalHasModel `CGAL::Regular_triangulation_cell_base_3`
|
||||||
|
|
||||||
\sa `RegularTriangulationTraits_3`
|
\sa `RegularTriangulationTraits_3`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ by adding a geometric point member.
|
||||||
|
|
||||||
\cgalRefines `TriangulationDSVertexBase_3`
|
\cgalRefines `TriangulationDSVertexBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Regular_triangulation_vertex_base_3
|
\cgalHasModel `CGAL::Regular_triangulation_vertex_base_3`
|
||||||
|
|
||||||
\sa `RegularTriangulationCellBase_3`
|
\sa `RegularTriangulationCellBase_3`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ and provides an additional information storage.
|
||||||
|
|
||||||
\cgalRefines `TriangulationCellBase_3`
|
\cgalRefines `TriangulationCellBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Triangulation_cell_base_with_info_3
|
\cgalHasModel `CGAL::Triangulation_cell_base_with_info_3`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@ structure apply.
|
||||||
|
|
||||||
\cgalRefines `TriangulationDSCellBase_3`
|
\cgalRefines `TriangulationDSCellBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Triangulation_cell_base_3
|
\cgalHasModel `CGAL::Triangulation_cell_base_3`
|
||||||
\cgalHasModel CGAL::Triangulation_cell_base_with_info_3
|
\cgalHasModel `CGAL::Triangulation_cell_base_with_info_3`
|
||||||
|
|
||||||
\sa `TriangulationVertexBase_3`
|
\sa `TriangulationVertexBase_3`
|
||||||
|
|
||||||
|
|
@ -23,4 +23,4 @@ public:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}; /* end TriangulationCellBase_3 */
|
}; /* end TriangulationCellBase_3 */
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ and provides an additional information storage.
|
||||||
|
|
||||||
\cgalRefines `TriangulationVertexBase_3`
|
\cgalRefines `TriangulationVertexBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Triangulation_vertex_base_with_info_3
|
\cgalHasModel `CGAL::Triangulation_vertex_base_with_info_3`
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,8 @@ for the triangulation data structure.
|
||||||
|
|
||||||
\cgalRefines `TriangulationDSVertexBase_3`
|
\cgalRefines `TriangulationDSVertexBase_3`
|
||||||
|
|
||||||
\cgalHasModel CGAL::Triangulation_vertex_base_3
|
\cgalHasModel `CGAL::Triangulation_vertex_base_3`
|
||||||
\cgalHasModel CGAL::Triangulation_vertex_base_with_info_3
|
\cgalHasModel `CGAL::Triangulation_vertex_base_with_info_3`
|
||||||
|
|
||||||
\sa `TriangulationCellBase_3`
|
\sa `TriangulationCellBase_3`
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue