From 7f7e2efefc63be0a5e37bf83fbcf9b3b5b08db62 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Thu, 29 Jun 2023 11:05:13 +0100 Subject: [PATCH 01/94] SLS: Fix warnings --- .../examples/Straight_skeleton_2/extrude_skeleton.cpp | 3 ++- .../examples/Straight_skeleton_2/include/CGAL/input_helpers.h | 2 +- .../test_sls_weighted_polygons_with_holes.cpp | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Straight_skeleton_2/examples/Straight_skeleton_2/extrude_skeleton.cpp b/Straight_skeleton_2/examples/Straight_skeleton_2/extrude_skeleton.cpp index 073b50964c0..0be087a09eb 100644 --- a/Straight_skeleton_2/examples/Straight_skeleton_2/extrude_skeleton.cpp +++ b/Straight_skeleton_2/examples/Straight_skeleton_2/extrude_skeleton.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include @@ -62,7 +63,7 @@ int main(int argc, char** argv) // below is only used for random weight generation double min_weight = 1., max_weight = 10.; - int seed = std::time(nullptr); + int seed = CGAL::get_default_random().get_seed(); for(int i = 1; i < argc; ++i) { diff --git a/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h b/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h index b42c29df4a4..35077e38c2e 100644 --- a/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h +++ b/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h @@ -247,7 +247,7 @@ void generate_random_weights(const PolygonWithHoles& p, std::vector weights; for(auto it=c.begin(); it 1) ? std::atoi(argv[1]) : 2; int hole_nv = (argc > 2) ? std::atoi(argv[2]) : 10; - int seed = (argc > 3) ? std::atoi(argv[3]) : std::time(nullptr); + int seed = (argc > 3) ? std::atoi(argv[3]) : CGAL::get_default_random().get_seed(); CGAL::Random rnd(seed); From c0db92d0e906cc78495e70c75bfef06c4e063768 Mon Sep 17 00:00:00 2001 From: albert-github Date: Wed, 5 Jul 2023 12:13:40 +0200 Subject: [PATCH 02/94] issue #7395 Improvement of layout of model relations Consistent implementation for the `AABB_tree` in respect to `Has Model` and `Is Model Of` --- AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h | 2 +- AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h | 11 ++++++----- .../AABB_tree/Concepts/AABBPrimitiveWithSharedData.h | 7 ++++--- .../Concepts/AABBRayIntersectionGeomTraits.h | 2 +- .../AABB_tree/Concepts/AABBRayIntersectionTraits.h | 3 ++- AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h | 3 ++- .../include/CGAL/AABB_face_graph_triangle_primitive.h | 2 +- .../CGAL/AABB_halfedge_graph_segment_primitive.h | 4 ++-- .../include/CGAL/AABB_polyhedron_segment_primitive.h | 2 +- .../include/CGAL/AABB_polyhedron_triangle_primitive.h | 2 +- AABB_tree/include/CGAL/AABB_primitive.h | 4 ++-- AABB_tree/include/CGAL/AABB_segment_primitive.h | 2 +- AABB_tree/include/CGAL/AABB_traits.h | 5 ++--- AABB_tree/include/CGAL/AABB_triangle_primitive.h | 2 +- .../CGAL/AABB_triangulation_3_triangle_primitive.h | 2 +- Documentation/doc/resources/1.8.13/BaseDoxyfile.in | 10 ++++++++++ Documentation/doc/resources/1.9.6/BaseDoxyfile.in | 10 ++++++++++ 17 files changed, 48 insertions(+), 25 deletions(-) diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h index 2f1fdc3e5c6..75823eb238a 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h @@ -11,7 +11,7 @@ and the primitives stored in the AABB tree. \cgalRefines{SearchGeomTraits_3} -\cgalHasModel All models of the concept `Kernel` +\cgalHasModelsBare{All models of the concept `Kernel`} \sa `CGAL::AABB_traits` \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h index 11195b5808e..4a987a58cbb 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h @@ -12,11 +12,12 @@ The concept `AABBPrimitive` describes the requirements for the primitives stored The `Primitive` type can be, e.g., a wrapper around a `Handle`. Assume for instance that the input objects are the triangle faces of a mesh stored as a `CGAL::Polyhedron_3`. The `Datum` would be a `Triangle_3` and the `Id` would be a polyhedron `Face_handle`. Method `datum()` can return either a `Triangle_3` constructed on the fly from the face handle or a `Triangle_3` stored internally. This provides a way for the user to trade memory for efficiency. -\cgalHasModel `CGAL::AABB_primitive` -\cgalHasModel `CGAL::AABB_segment_primitive` -\cgalHasModel `CGAL::AABB_triangle_primitive` -\cgalHasModel `CGAL::AABB_halfedge_graph_segment_primitive` -\cgalHasModel `CGAL::AABB_face_graph_triangle_primitive` +\cgalHasModelsBegin CGAL::AABB_primitive +\cgalHasModels CGAL::AABB_segment_primitive +\cgalHasModels CGAL::AABB_triangle_primitive +\cgalHasModels CGAL::AABB_halfedge_graph_segment_primitive +\cgalHasModels CGAL::AABB_face_graph_triangle_primitive +\cgalHasModelsEnd */ class AABBPrimitive { diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h index 3c47d53d552..8ec9a103acd 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h @@ -21,9 +21,10 @@ The `Datum` would be a `Triangle_3` and the `Id` a `std::size_t`. The shared dat `std::vector`. The method `datum(const Shared_data&)` then returns a triangle from the vector. -\cgalHasModel `CGAL::AABB_primitive` -\cgalHasModel `CGAL::AABB_halfedge_graph_segment_primitive` -\cgalHasModel `CGAL::AABB_face_graph_triangle_primitive` +\cgalHasModelsBegin CGAL::AABB_primitive +\cgalHasModels CGAL::AABB_halfedge_graph_segment_primitive +\cgalHasModels CGAL::AABB_face_graph_triangle_primitive +\cgalHasModelsEnd */ class AABBPrimitiveWithSharedData { diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h index a90c498a7ec..f47f1e9464b 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h @@ -9,7 +9,7 @@ define the Intersection_distance functor. \cgalRefines{AABBGeomTraits} -\cgalHasModel All models of the concept `Kernel` +\cgalHasModelsBare{All models of the concept `Kernel`} \sa `CGAL::AABB_traits` \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h index 215cbd65924..87d139973b5 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h @@ -7,7 +7,8 @@ The concept `AABBRayIntersectionTraits` is a refinement of the concept `AABBTraits` it also requires function objects to calculate the distance of an intersection along a ray. -\cgalHasModel `CGAL::AABB_traits` +\cgalHasModelsBegin CGAL::AABB_traits +\cgalHasModelsEnd \sa `CGAL::AABB_tree` \sa `AABBPrimitive` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h index c7f0e806faf..f5e5846322e 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h @@ -5,7 +5,8 @@ The concept `AABBTraits` provides the geometric primitive types and methods for the class `CGAL::AABB_tree`. -\cgalHasModel `CGAL::AABB_traits` +\cgalHasModelsBegin CGAL::AABB_traits +\cgalHasModelsEnd \cgalRefines{SearchGeomTraits_3} diff --git a/AABB_tree/include/CGAL/AABB_face_graph_triangle_primitive.h b/AABB_tree/include/CGAL/AABB_face_graph_triangle_primitive.h index 6d12a85adef..5422c84b2ae 100644 --- a/AABB_tree/include/CGAL/AABB_face_graph_triangle_primitive.h +++ b/AABB_tree/include/CGAL/AABB_face_graph_triangle_primitive.h @@ -33,7 +33,7 @@ namespace CGAL { * while the AABB tree holding the primitive is in use. * The triangle type of the primitive (`Datum`) is `CGAL::Kernel_traits< boost::property_traits< VertexPointPMap >::%value_type >::%Kernel::Triangle_3`. * - * \cgalModels `AABBPrimitiveWithSharedData` + * \cgalModels{AABBPrimitiveWithSharedData} * *\tparam FaceGraph is a model of the face graph concept. *\tparam VertexPointPMap is a property map with `boost::graph_traits::%vertex_descriptor` diff --git a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h index fe85c35d366..0ac0476616e 100644 --- a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h +++ b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h @@ -41,8 +41,8 @@ namespace CGAL { * of `VertexPointPMap` (using the `Kernel_traits` mechanism). * The segment type of the primitive (`Datum`) is `CGAL::Kernel_traits< boost::property_traits< VertexPointPMap >::%value_type >::%Kernel::Segment_3`. * - * \cgalModels `AABBPrimitive` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`, - * and `AABBPrimitiveWithSharedData` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`. + * \cgalModelsBare{AABBPrimitive if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`, + * AABBPrimitiveWithSharedData if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`} * * \tparam HalfedgeGraph is a model of the halfedge graph concept. * as key type and a \cgal Kernel `Point_3` as value type. diff --git a/AABB_tree/include/CGAL/AABB_polyhedron_segment_primitive.h b/AABB_tree/include/CGAL/AABB_polyhedron_segment_primitive.h index 2ace80acf22..7b8b72697f9 100644 --- a/AABB_tree/include/CGAL/AABB_polyhedron_segment_primitive.h +++ b/AABB_tree/include/CGAL/AABB_polyhedron_segment_primitive.h @@ -42,7 +42,7 @@ namespace CGAL { /// AABB tree is built should not be deleted while the AABB tree /// is in use. /// - /// \cgalModels `AABBPrimitive` + /// \cgalModels{AABBPrimitive} /// \tparam GeomTraits must provide a \c %Point_3 /// type, used as \c Point, and a \c %Segment_3 type, used as \c /// Datum and constructible from two arguments of type \c diff --git a/AABB_tree/include/CGAL/AABB_polyhedron_triangle_primitive.h b/AABB_tree/include/CGAL/AABB_polyhedron_triangle_primitive.h index b45ae54039c..647ae48b415 100644 --- a/AABB_tree/include/CGAL/AABB_polyhedron_triangle_primitive.h +++ b/AABB_tree/include/CGAL/AABB_polyhedron_triangle_primitive.h @@ -35,7 +35,7 @@ namespace CGAL { /// the polyhedron from which the AABB tree is built should not be /// deleted while the AABB tree is in use. /// - /// \cgalModels `AABBPrimitive` + /// \cgalModels{AABBPrimitive} /// \tparam GeomTraits must provides a \c %Point_3 /// type, used as \c Point, and a \c %Triangle_3 type, used as \c /// Datum and constructible from three arguments of type \c diff --git a/AABB_tree/include/CGAL/AABB_primitive.h b/AABB_tree/include/CGAL/AABB_primitive.h index b0e9abdaf38..d602a349ee0 100644 --- a/AABB_tree/include/CGAL/AABB_primitive.h +++ b/AABB_tree/include/CGAL/AABB_primitive.h @@ -53,8 +53,8 @@ public: * The two property maps which are template parameters of the class enable to get the datum and the reference point of * the primitive from the identifier. The last template parameter controls whether the primitive class holds a copy of the datum. * - * \cgalModels `AABBPrimitive` if `ExternalPropertyMaps` is `CGAL::Tag_false`. - * \cgalModels `AABBPrimitiveWithSharedData` if `ExternalPropertyMaps` is `CGAL::Tag_true`. + * \cgalModelsBare{AABBPrimitive if `ExternalPropertyMaps` is `CGAL::Tag_false`, + * AABBPrimitiveWithSharedData if `ExternalPropertyMaps` is `CGAL::Tag_true`} * * \tparam ObjectPropertyMap is a model of `ReadablePropertyMap` with `Id` as * `key_type`. It must be a model of `CopyConstructible`, `DefaultConstructible`, and `CopyAssignable`. diff --git a/AABB_tree/include/CGAL/AABB_segment_primitive.h b/AABB_tree/include/CGAL/AABB_segment_primitive.h index a4627c8592e..f13523ba40c 100644 --- a/AABB_tree/include/CGAL/AABB_segment_primitive.h +++ b/AABB_tree/include/CGAL/AABB_segment_primitive.h @@ -54,7 +54,7 @@ namespace internal { * The iterator from which the primitive is built should not be invalided * while the AABB tree holding the primitive is in use. * - * \cgalModels `AABBPrimitive` + * \cgalModels{AABBPrimitive} * * \tparam GeomTraits is a traits class providing the nested type `Point_3` and `Segment_3`. * It also provides the functor `Construct_source_3` that has an operator taking a `Segment_3` diff --git a/AABB_tree/include/CGAL/AABB_traits.h b/AABB_tree/include/CGAL/AABB_traits.h index b2eb87dc8f6..f4473907730 100644 --- a/AABB_tree/include/CGAL/AABB_traits.h +++ b/AABB_tree/include/CGAL/AABB_traits.h @@ -149,9 +149,8 @@ class AABB_tree; /// computations, and it handles points as query type for distance /// queries. /// -/// \cgalModels AABBTraits -/// \cgalModels AABBRayIntersectionTraits - +/// \cgalModels{AABBTraits,AABBRayIntersectionTraits} +/// /// \tparam GeomTraits must be a model of the concept \ref AABBGeomTraits, /// and provide the geometric types as well as the intersection tests and computations. /// \tparam Primitive provide the type of primitives stored in the AABB_tree. diff --git a/AABB_tree/include/CGAL/AABB_triangle_primitive.h b/AABB_tree/include/CGAL/AABB_triangle_primitive.h index b1b1bd1fe79..1fc1b140c58 100644 --- a/AABB_tree/include/CGAL/AABB_triangle_primitive.h +++ b/AABB_tree/include/CGAL/AABB_triangle_primitive.h @@ -55,7 +55,7 @@ namespace internal { * The iterator from which the primitive is built should not be invalided * while the AABB tree holding the primitive is in use. * - * \cgalModels `AABBPrimitive` + * \cgalModels{AABBPrimitive} * * \tparam GeomTraits is a traits class providing the nested type `Point_3` and `Triangle_3`. * It also provides the functor `Construct_vertex_3` that has an operator taking a `Triangle_3` diff --git a/AABB_tree/include/CGAL/AABB_triangulation_3_triangle_primitive.h b/AABB_tree/include/CGAL/AABB_triangulation_3_triangle_primitive.h index e573dc71f49..f45a005b99e 100644 --- a/AABB_tree/include/CGAL/AABB_triangulation_3_triangle_primitive.h +++ b/AABB_tree/include/CGAL/AABB_triangulation_3_triangle_primitive.h @@ -28,7 +28,7 @@ namespace CGAL { // the TriangleMesh from which the AABB tree is built should not be // deleted while the AABB tree is in use. // - // \cgalModels `AABBPrimitive` + // \cgalModels{AABBPrimitive} // \tparam GeomTraits must provides a \c %Point_3 // type, used as \c Point, and a \c %Triangle_3 type, used as \c // Datum and constructible from three arguments of type \c diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index ae2cc84f6c1..7486ae587d7 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -136,8 +136,18 @@ ALIASES = "cgal=%CGAL" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ + "cgalModelsHeader=Is Model Of" \ + "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ + "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ + "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ + "cgalModelsBare{2}=
@cgalModelsHeader
@c \1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relationships\"" \ + "cgalHasModelsHeader=Has Models" \ + "cgalHasModelsBegin=
@cgalHasModelsHeader
`" \ + "cgalHasModels=`
`" \ + "cgalHasModelsEnd=`
" \ + "cgalHasModelsBare{1}=
@cgalHasModels
\1
" \ "cgalDebugBegin=\htmlonly
Debugging Support
\endhtmlonly \n" \ "cgalDebugEnd=\htmlonly
\endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 1cfd0a6ffd9..3813f3748da 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -145,8 +145,18 @@ ALIASES = "cgal=%CGAL" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ + "cgalModelsHeader=Is Model Of" \ + "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ + "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ + "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ + "cgalModelsBare{2}=
@cgalModelsHeader
@c \1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relationships\"" \ + "cgalHasModelsHeader=Has Models" \ + "cgalHasModelsBegin=
@cgalHasModelsHeader
`" \ + "cgalHasModels=`
`" \ + "cgalHasModelsEnd=`
" \ + "cgalHasModelsBare{1}=
@cgalHasModelsHeader
\1
" \ "cgalDebugBegin=\htmlonly[block]
Debugging Support
\endhtmlonly ^^" \ "cgalDebugEnd=\htmlonly[block]
\endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ From ee2a55279d072fee46aadbb6c91f52759b1b51a3 Mon Sep 17 00:00:00 2001 From: albert-github Date: Thu, 6 Jul 2023 17:35:34 +0200 Subject: [PATCH 03/94] issue #7395 Improvement of layout of model relations - Completed the cgalHasModel part - corrected spelling of `Has Model` and `Is Model Of` to `Has model` and `Is model of` --- .../AABB_halfedge_graph_segment_primitive.h | 4 +- AABB_tree/include/CGAL/AABB_primitive.h | 4 +- ...ancingFrontSurfaceReconstructionTraits_3.h | 2 +- .../Concepts/AlgebraicStructureTraits.h | 3 +- .../Concepts/FieldNumberType.h | 21 +++--- .../Concepts/FractionTraits.h | 3 +- .../Concepts/FromIntConstructible.h | 7 +- .../Concepts/RealEmbeddableTraits.h | 3 +- .../Concepts/RingNumberType.h | 26 +++---- .../Concepts/AlgebraicKernel_d_1.h | 5 +- .../Concepts/AlphaShapeFace_2.h | 3 +- .../Concepts/AlphaShapeTraits_2.h | 3 +- .../Concepts/AlphaShapeVertex_2.h | 2 +- .../Concepts/WeightedAlphaShapeTraits_2.h | 3 +- .../Concepts/AlphaShapeCell_3.h | 2 +- .../Concepts/AlphaShapeTraits_3.h | 2 +- .../Concepts/AlphaShapeVertex_3.h | 2 +- .../Concepts/FixedAlphaShapeCell_3.h | 2 +- .../Concepts/FixedAlphaShapeTraits_3.h | 2 +- .../Concepts/FixedAlphaShapeVertex_3.h | 2 +- .../FixedWeightedAlphaShapeTraits_3.h | 2 +- .../Concepts/WeightedAlphaShapeTraits_3.h | 2 +- .../Alpha_wrap_3/Concepts/AlphaWrapOracle.h | 9 ++- .../Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h | 2 +- .../Concepts/ApolloniusGraphDataStructure_2.h | 3 +- .../ApolloniusGraphHierarchyVertexBase_2.h | 3 +- .../Concepts/ApolloniusGraphTraits_2.h | 5 +- .../Concepts/ApolloniusGraphVertexBase_2.h | 3 +- .../Concepts/ArrTraits--Approximate_2.h | 3 +- .../Concepts/ArrTraits--AreMergeable_2.h | 3 +- .../ArrTraits--CompareXNearBoundary_2.h | 3 +- ...rrTraits--CompareXOnBoundaryOfCurveEnd_2.h | 7 +- .../ArrTraits--CompareXOnBoundary_2.h | 7 +- .../Concepts/ArrTraits--CompareX_2.h | 3 +- .../Concepts/ArrTraits--CompareXy_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtXLeft_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtXRight_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtX_2.h | 3 +- .../ArrTraits--CompareYNearBoundary_2.h | 3 +- .../ArrTraits--CompareYOnBoundary_2.h | 9 ++- .../Concepts/ArrTraits--ConstructCurve_2.h | 3 +- .../ArrTraits--ConstructMaxVertex_2.h | 3 +- .../ArrTraits--ConstructMinVertex_2.h | 3 +- .../ArrTraits--ConstructXMonotoneCurve_2.h | 3 +- .../Concepts/ArrTraits--Curve_2.h | 3 +- .../Concepts/ArrTraits--Equal_2.h | 3 +- .../Concepts/ArrTraits--Intersect_2.h | 3 +- .../ArrTraits--IsOnXIdentification_2.h | 3 +- .../ArrTraits--IsOnYIdentification_2.h | 3 +- .../Concepts/ArrTraits--IsVertical_2.h | 3 +- .../Concepts/ArrTraits--MakeXMonotone_2.h | 3 +- .../Concepts/ArrTraits--Merge_2.h | 3 +- .../Concepts/ArrTraits--ParameterSpaceInX_2.h | 7 +- .../Concepts/ArrTraits--ParameterSpaceInY_2.h | 7 +- .../Concepts/ArrTraits--Point_2.h | 3 +- .../Concepts/ArrTraits--Split_2.h | 3 +- .../Concepts/ArrTraits--XMonotoneCurve_2.h | 3 +- .../Concepts/ArrangementApproximateTraits_2.h | 17 +++-- .../Concepts/ArrangementBasicTopologyTraits.h | 3 +- .../Concepts/ArrangementBasicTraits_2.h | 31 ++++---- .../ArrangementConstructCurveTraits_2.h | 15 ++-- ...rangementConstructXMonotoneCurveTraits_2.h | 15 ++-- .../Concepts/ArrangementDcel.h | 9 ++- .../Concepts/ArrangementDcelWithRebind.h | 7 +- .../ArrangementHorizontalSideTraits_2.h | 9 ++- .../Concepts/ArrangementInputFormatter.h | 7 +- .../Concepts/ArrangementLandmarkTraits_2.h | 17 +++-- .../ArrangementOpenBoundaryTraits_2.h | 11 +-- .../Concepts/ArrangementOutputFormatter.h | 7 +- .../Concepts/ArrangementPointLocation_2.h | 9 ++- .../ArrangementSphericalBoundaryTraits_2.h | 3 +- .../Concepts/ArrangementTopologyTraits.h | 7 +- .../Concepts/ArrangementTraits_2.h | 29 +++---- .../Concepts/ArrangementVerticalRayShoot_2.h | 9 ++- .../ArrangementVerticalSideTraits_2.h | 9 ++- .../ArrangementWithHistoryInputFormatter.h | 3 +- .../ArrangementWithHistoryOutputFormatter.h | 3 +- .../Concepts/ArrangementXMonotoneTraits_2.h | 29 +++---- .../Concepts/OverlayTraits.h | 5 +- BGL/doc/BGL/Concepts/EdgeListGraph.h | 2 +- BGL/doc/BGL/Concepts/FaceGraph.h | 2 +- BGL/doc/BGL/Concepts/FaceListGraph.h | 2 +- BGL/doc/BGL/Concepts/HalfedgeGraph.h | 2 +- BGL/doc/BGL/Concepts/HalfedgeListGraph.h | 2 +- BGL/doc/BGL/Concepts/MutableFaceGraph.h | 2 +- BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h | 2 +- BGL/doc/BGL/Concepts/VertexListGraph.h | 2 +- .../Concepts/BarycentricCoordinates_2.h | 8 +- .../Concepts/BarycentricTraits_2.h | 11 ++- .../Concepts/DiscretizedDomain_2.h | 3 +- .../ArrDirectionalTraits--AreMergeable_2.h | 3 +- ...rDirectionalTraits--CompareEndpointsXy_2.h | 3 +- ...rrDirectionalTraits--ConstructOpposite_2.h | 3 +- .../ArrDirectionalTraits--Intersect_2.h | 3 +- .../Concepts/ArrDirectionalTraits--Merge_2.h | 3 +- .../Concepts/ArrDirectionalTraits--Split_2.h | 3 +- .../ArrangementDirectionalXMonotoneTraits_2.h | 15 ++-- .../Concepts/GeneralPolygonSetDcel.h | 3 +- .../Concepts/GeneralPolygonSetDcelFace.h | 3 +- .../Concepts/GeneralPolygonSetDcelHalfedge.h | 3 +- .../Concepts/GeneralPolygonSetTraits_2.h | 7 +- .../Concepts/GeneralPolygon_2.h | 3 +- .../GpsTraitsGeneralPolygonWithHoles_2.h | 3 +- .../Concepts/GpsTraitsGeneralPolygon_2.h | 5 +- .../ApproximateMinEllipsoid_d_Traits_d.h | 7 +- .../Concepts/MinCircle2Traits.h | 3 +- .../Concepts/MinEllipse2Traits.h | 3 +- .../Concepts/MinQuadrilateralTraits_2.h | 3 +- .../Concepts/MinSphereAnnulusDTraits.h | 7 +- .../Concepts/MinSphereOfSpheresTraits.h | 14 ++-- .../Concepts/RectangularPCenterTraits_2.h | 3 +- .../Concepts/BoxIntersectionBox_d.h | 5 +- .../Concepts/BoxIntersectionTraits_d.h | 3 +- ...rnelForCircles--PolynomialForCircles_2_2.h | 3 +- ...lgebraicKernelForCircles--Polynomial_1_2.h | 3 +- ...raicKernelForCircles--RootForCircles_2_2.h | 3 +- .../Concepts/AlgebraicKernelForCircles.h | 3 +- .../CircularKernel--CircularArcPoint_2.h | 3 +- .../Concepts/CircularKernel--CircularArc_2.h | 3 +- .../Concepts/CircularKernel--LineArc_2.h | 3 +- .../Concepts/CircularKernel.h | 5 +- ...rnelForSpheres--PolynomialForSpheres_2_3.h | 3 +- ...lgebraicKernelForSpheres--Polynomial_1_3.h | 3 +- ...cKernelForSpheres--PolynomialsForLines_3.h | 3 +- ...raicKernelForSpheres--RootForSpheres_2_3.h | 3 +- .../Concepts/AlgebraicKernelForSpheres.h | 3 +- .../SphericalKernel--CircularArcPoint_3.h | 3 +- .../Concepts/SphericalKernel--CircularArc_3.h | 3 +- .../Concepts/SphericalKernel--LineArc_3.h | 3 +- .../Concepts/SphericalKernel.h | 5 +- .../doc/Circulator/Concepts/ConstHandle.h | 3 +- .../doc/Circulator/Concepts/ConstRange.h | 3 +- Circulator/doc/Circulator/Concepts/Handle.h | 9 ++- Circulator/doc/Circulator/Concepts/Range.h | 2 +- .../doc/Classification/Concepts/Classifier.h | 7 +- .../Classification/Concepts/NeighborQuery.h | 9 ++- .../Concepts/CellAttribute.h | 2 +- .../Concepts/CombinatorialMap.h | 2 +- .../Combinatorial_map/Concepts/GenericMap.h | 4 +- .../Concepts/GenericMapItems.h | 2 +- .../Concepts/ConvexHullTraits_2.h | 13 ++-- .../Concepts/ConvexHullTraits_3.h | 5 +- .../Concepts/IsStronglyConvexTraits_3.h | 4 +- .../Concepts/ConvexHullTraits_d.h | 7 +- .../Concepts/DelaunayLiftedTraits_d.h | 5 +- .../Convex_hull_d/Concepts/DelaunayTraits_d.h | 5 +- .../doc/resources/1.8.13/BaseDoxyfile.in | 11 +-- .../doc/resources/1.9.6/BaseDoxyfile.in | 9 ++- .../Envelope_3/Concepts/EnvelopeTraits_3.h | 9 ++- .../Generalized_map/Concepts/GeneralizedMap.h | 2 +- .../Generator/Concepts/CombinationElement.h | 6 +- .../doc/Generator/Concepts/PointGenerator.h | 29 +++---- .../Concepts/RandomConvexHullTraits_2.h | 2 +- .../Concepts/RandomConvexSetTraits_2.h | 3 +- .../Concepts/RandomPolygonTraits_2.h | 2 +- .../doc/HalfedgeDS/Concepts/HalfedgeDS.h | 7 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSFace.h | 5 +- .../HalfedgeDS/Concepts/HalfedgeDSHalfedge.h | 5 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSItems.h | 7 +- .../HalfedgeDS/Concepts/HalfedgeDSVertex.h | 5 +- .../Concepts/HeatMethodTraits_3.h | 2 +- .../HyperbolicDelaunayTriangulationTraits_2.h | 5 +- .../HyperbolicTriangulationFaceBase_2.h | 3 +- .../Concepts/ExtremalPolygonTraits_2.h | 5 +- .../LargestEmptyIsoRectangleTraits_2.h | 5 +- .../Concepts/GradientFittingTraits.h | 3 +- .../Concepts/InterpolationTraits.h | 5 +- .../Interval_skip_list/Concepts/Interval.h | 5 +- .../doc/Jet_fitting_3/Concepts/DataKernel.h | 5 +- .../doc/Jet_fitting_3/Concepts/LocalKernel.h | 5 +- .../doc/Kernel_23/Concepts/GeomObjects.h | 75 ++++++++++++------- Kernel_23/doc/Kernel_23/Concepts/Kernel.h | 17 +++-- .../Kernel_d/Concepts/KernelWithLifting_d.h | 5 +- Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h | 9 ++- .../Kernel_d/Concepts/LinearAlgebraTraits_d.h | 5 +- .../Concepts/CellAttributeWithPoint.h | 2 +- .../Concepts/LinearCellComplex.h | 4 +- .../Concepts/LinearCellComplexItems.h | 3 +- .../Concepts/LinearCellComplexTraits.h | 2 +- .../doc/Matrix_search/Concepts/BasicMatrix.h | 3 +- .../Concepts/MonotoneMatrixSearchTraits.h | 3 +- .../Concepts/SortedMatrixSearchTraits.h | 3 +- .../ConformingDelaunayTriangulationTraits_2.h | 4 +- .../Mesh_2/Concepts/DelaunayMeshFaceBase_2.h | 3 +- .../Mesh_2/Concepts/DelaunayMeshTraits_2.h | 4 +- .../Concepts/DelaunayMeshVertexBase_2.h | 3 +- .../doc/Mesh_2/Concepts/MeshingCriteria_2.h | 5 +- .../Concepts/BisectionGeometricTraits_3.h | 2 +- .../Concepts/IntersectionGeometricTraits_3.h | 2 +- Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h | 5 +- .../doc/Mesh_3/Concepts/MeshCellCriteria_3.h | 3 +- .../Concepts/MeshCriteriaWithFeatures_3.h | 3 +- Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h | 3 +- .../doc/Mesh_3/Concepts/MeshDomainField_3.h | 3 +- .../Concepts/MeshDomainWithFeatures_3.h | 5 +- Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h | 5 +- .../doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h | 3 +- .../doc/Mesh_3/Concepts/MeshFacetCriteria_3.h | 3 +- Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h | 2 +- .../Concepts/MeshTriangulationTraits_3.h | 2 +- Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h | 3 +- .../doc/Mesh_3/Concepts/TriangleAccessor_3.h | 3 +- .../Concepts/PolygonConvexDecomposition_2.h | 11 +-- .../PolygonWithHolesConvexDecomposition_2.h | 5 +- .../Miscellany/Concepts/UniqueHashFunction.h | 3 +- .../Concepts/ModularTraits.h | 3 +- .../Concepts/Modularizable.h | 20 ++--- .../Nef_2/Concepts/ExtendedKernelTraits_2.h | 7 +- .../doc/Number_types/Concepts/RootOf_2.h | 4 +- .../Concepts/OrientedBoundingBoxTraits.h | 3 +- ...imalTransportationReconstructionTraits_2.h | 4 +- .../doc/Orthtree/Concepts/OrthtreeTraits.h | 7 +- .../doc/Orthtree/Concepts/OrthtreeTraversal.h | 9 ++- .../Concepts/ConvexPartitionIsValidTraits_2.h | 3 +- .../Concepts/IsYMonotoneTraits_2.h | 5 +- .../Concepts/OptimalConvexPartitionTraits_2.h | 3 +- .../Concepts/PartitionIsValidTraits_2.h | 3 +- .../Partition_2/Concepts/PartitionTraits_2.h | 3 +- .../doc/Partition_2/Concepts/PolygonIsValid.h | 5 +- .../YMonotonePartitionIsValidTraits_2.h | 3 +- .../Periodic_2DelaunayTriangulationTraits_2.h | 3 +- .../Concepts/Periodic_2Offset_2.h | 3 +- .../Periodic_2TriangulationFaceBase_2.h | 3 +- .../Periodic_2TriangulationTraits_2.h | 3 +- .../Periodic_2TriangulationVertexBase_2.h | 3 +- .../Periodic_3MeshDomainWithFeatures_3.h | 4 +- .../Concepts/Periodic_3MeshDomain_3.h | 3 +- .../Periodic_3DelaunayTriangulationTraits_3.h | 3 +- .../Concepts/Periodic_3Offset_3.h | 3 +- ...riodic_3RegularTriangulationDSCellBase_3.h | 7 +- ...odic_3RegularTriangulationDSVertexBase_3.h | 4 +- .../Periodic_3RegularTriangulationTraits_3.h | 3 +- .../Periodic_3TriangulationDSCellBase_3.h | 3 +- .../Periodic_3TriangulationDSVertexBase_3.h | 3 +- .../Periodic_3TriangulationTraits_3.h | 3 +- ...4HyperbolicDelaunayTriangulationTraits_2.h | 3 +- ...iodic_4HyperbolicTriangulationFaceBase_2.h | 3 +- ...dic_4HyperbolicTriangulationVertexBase_2.h | 3 +- .../Concepts/GeneralPolygonWithHoles_2.h | 5 +- .../doc/Polygon/Concepts/PolygonTraits_2.h | 8 +- .../Concepts/PMPCorefinementVisitor.h | 3 +- .../Concepts/PMPDistanceTraits.h | 2 +- .../Concepts/PMPHolefillingVisitor.h | 3 +- .../PMPPolygonSoupOrientationVisitor.h | 3 +- .../Concepts/PMPTriangulateFaceVisitor.h | 3 +- .../Polyhedron/Concepts/PolyhedronItems_3.h | 5 +- .../Polyhedron/Concepts/PolyhedronTraits_3.h | 6 +- .../PolylineSimplificationCostFunction.h | 7 +- .../PolylineSimplificationStopPredicate.h | 7 +- .../PolylineSimplificationVertexBase_2.h | 3 +- .../Polynomial/Concepts/PolynomialTraits_d.h | 3 +- .../doc/Polynomial/Concepts/Polynomial_d.h | 3 +- .../Concepts/AllFurthestNeighborsTraits_2.h | 9 ++- .../Concepts/PolytopeDistanceDTraits.h | 7 +- .../Concepts/WidthTraits_3.h | 3 +- .../doc/QP_solver/Concepts/LinearProgram.h | 7 +- .../Concepts/NonnegativeLinearProgram.h | 14 ++-- .../Concepts/NonnegativeQuadraticProgram.h | 7 +- .../doc/QP_solver/Concepts/QuadraticProgram.h | 7 +- ...shComplexWithFeatures_3InTriangulation_3.h | 3 +- .../Concepts/MeshComplex_3InTriangulation_3.h | 3 +- .../Concepts/SimplicialMeshCellBase_3.h | 9 ++- .../Concepts/SimplicialMeshVertexBase_3.h | 7 +- .../doc/STL_Extension/Concepts/Descriptor.h | 5 +- .../doc/STL_Extension/Concepts/Hashable.h | 6 +- .../doc/STL_Extension/Concepts/Index.h | 5 +- .../STL_Extension/Concepts/ProjectionObject.h | 27 +++---- .../Concepts/SurjectiveLockDataStructure.h | 3 +- .../Concepts/ScaleSpaceMesher.h | 5 +- .../Concepts/ScaleSpaceSmoother.h | 5 +- .../Concepts/RangeSegmentTreeTraits_k.h | 13 ++-- .../SegmentDelaunayGraphDataStructure_2.h | 3 +- .../Concepts/SegmentDelaunayGraphFaceBase_2.h | 3 +- ...egmentDelaunayGraphHierarchyVertexBase_2.h | 3 +- .../Concepts/SegmentDelaunayGraphSite_2.h | 3 +- .../SegmentDelaunayGraphStorageSite_2.h | 3 +- .../SegmentDelaunayGraphStorageTraits_2.h | 3 +- .../Concepts/SegmentDelaunayGraphTraits_2.h | 9 ++- .../SegmentDelaunayGraphVertexBase_2.h | 3 +- .../SegmentDelaunayGraphLinfTraits_2.h | 9 ++- .../Concepts/CastingTraits_2.h | 2 +- .../Concepts/EfficientRANSACTraits.h | 4 +- .../Shape_detection/Concepts/NeighborQuery.h | 10 +-- .../doc/Shape_detection/Concepts/RegionType.h | 16 ++-- .../Concepts/ContourDirections.h | 8 +- .../Concepts/NeighborQuery.h | 4 +- .../Concepts/RegularizationType.h | 6 +- .../Concepts/SkinSurfaceTraits_3.h | 3 +- .../Skin_surface_3/Concepts/SkinSurface_3.h | 5 +- .../Concepts/SnapRoundingTraits_2.h | 21 +++--- .../Concepts/DiagonalizeTraits.h | 3 +- .../Concepts/MixedIntegerProgramTraits.h | 16 ++-- ...ormalEquationSparseLinearAlgebraTraits_d.h | 3 +- .../Concepts/QuadraticProgramTraits.h | 4 +- .../Concepts/SparseLinearAlgebraTraits_d.h | 11 ++- .../SparseLinearAlgebraWithFactorTraits_d.h | 3 +- .../doc/Solver_interface/Concepts/SvdTraits.h | 9 ++- .../Concepts/FuzzyQueryItem.h | 3 +- .../Concepts/GeneralDistance.h | 5 +- .../Concepts/OrthogonalDistance.h | 5 +- .../Concepts/RangeSearchTraits.h | 13 ++-- .../Concepts/SearchGeomTraits_2.h | 2 +- .../Concepts/SearchGeomTraits_3.h | 2 +- .../Spatial_searching/Concepts/SearchTraits.h | 17 +++-- .../Concepts/SpatialSeparator.h | 3 +- .../Spatial_searching/Concepts/SpatialTree.h | 3 +- .../doc/Spatial_searching/Concepts/Splitter.h | 15 ++-- .../Concepts/SpatialSortingTraits_2.h | 4 +- .../Concepts/SpatialSortingTraits_3.h | 4 +- .../Concepts/SpatialSortingTraits_d.h | 4 +- .../Concepts/PolygonOffsetBuilderTraits_2.h | 3 +- .../StraightSkeletonBuilderTraits_2.h | 3 +- .../StraightSkeletonBuilder_2_Visitor.h | 3 +- .../Concepts/StraightSkeletonFace_2.h | 3 +- .../Concepts/StraightSkeletonHalfedge_2.h | 3 +- .../StraightSkeletonItemsConverter_2.h | 3 +- .../Concepts/StraightSkeletonVertex_2.h | 3 +- .../Concepts/StraightSkeleton_2.h | 3 +- .../Stream_lines_2/Concepts/Integrator_2.h | 5 +- .../Concepts/StreamLinesTraits_2.h | 2 +- .../Stream_lines_2/Concepts/VectorField_2.h | 5 +- .../Subdivision_method_3/Concepts/DQQMask_3.h | 3 +- .../Subdivision_method_3/Concepts/PQQMask_3.h | 3 +- .../Subdivision_method_3/Concepts/PTQMask_3.h | 3 +- .../Concepts/Sqrt3Mask_3.h | 3 +- .../Concepts/ErrorMetricProxy.h | 5 +- .../DeformationClosestRotationTraits_3.h | 5 +- .../Concepts/Parameterizer_3.h | 21 +++--- .../Concepts/SegmentationGeomTraits.h | 2 +- .../Concepts/SurfaceMeshShortestPathTraits.h | 3 +- .../Concepts/GetCost.h | 7 +- .../Concepts/GetPlacement.h | 11 +-- .../Concepts/PlacementFilter.h | 5 +- .../Concepts/StopPredicate.h | 11 +-- .../MeanCurvatureSkeletonizationTraits.h | 2 +- .../Concepts/PolygonalSchema.h | 4 +- .../Concepts/PolygonalSchemaItems.h | 2 +- .../Concepts/WeightFunctor.h | 4 +- .../Concepts/ImplicitFunction.h | 4 +- .../Concepts/ImplicitSurfaceTraits_3.h | 2 +- .../Concepts/SurfaceMeshCellBase_3.h | 5 +- .../SurfaceMeshComplex_2InTriangulation_3.h | 3 +- .../Concepts/SurfaceMeshFacetsCriteria_3.h | 3 +- .../Concepts/SurfaceMeshTraits_3.h | 3 +- .../Concepts/SurfaceMeshTriangulation_3.h | 2 +- .../Concepts/SurfaceMeshVertexBase_3.h | 5 +- .../doc/Surface_mesher/Concepts/Surface_3.h | 3 +- .../Concepts/TriangulationDSFaceBase_2.h | 3 +- .../Concepts/TriangulationDSVertexBase_2.h | 3 +- .../Concepts/TriangulationDataStructure_2.h | 9 ++- .../Concepts/TriangulationDSCellBase_3.h | 3 +- .../Concepts/TriangulationDSVertexBase_3.h | 3 +- .../Concepts/TriangulationDataStructure_3.h | 3 +- .../Concepts/RemeshingCellBase_3.h | 3 +- .../Concepts/RemeshingTriangulationTraits_3.h | 2 +- .../Concepts/RemeshingVertexBase_3.h | 3 +- .../Concepts/DelaunayTriangulationTraits.h | 5 +- .../Concepts/RegularTriangulationTraits.h | 5 +- .../Concepts/TriangulationDSFace.h | 3 +- .../Concepts/TriangulationDSFullCell.h | 5 +- .../Concepts/TriangulationDSVertex.h | 5 +- .../Concepts/TriangulationDataStructure.h | 13 ++-- .../Concepts/TriangulationFullCell.h | 3 +- .../Concepts/TriangulationTraits.h | 5 +- .../Concepts/TriangulationVertex.h | 3 +- ...ConstrainedDelaunayTriangulationTraits_2.h | 8 +- .../ConstrainedTriangulationFaceBase_2.h | 3 +- .../ConstrainedTriangulationTraits_2.h | 10 +-- .../Concepts/DelaunayTriangulationTraits_2.h | 12 +-- .../Concepts/RegularTriangulationFaceBase_2.h | 3 +- .../Concepts/RegularTriangulationTraits_2.h | 2 +- .../RegularTriangulationVertexBase_2.h | 3 +- .../Concepts/TriangulationFaceBase_2.h | 3 +- .../TriangulationHierarchyVertexBase_2.h | 3 +- .../Concepts/TriangulationTraits_2.h | 10 +-- .../TriangulationVertexBaseWithInfo_2.h | 3 +- .../Concepts/TriangulationVertexBase_2.h | 3 +- .../DelaunayTriangulationCellBase_3.h | 5 +- .../Concepts/DelaunayTriangulationTraits_3.h | 15 ++-- ...lationCellBaseWithWeightedCircumcenter_3.h | 3 +- .../Concepts/RegularTriangulationCellBase_3.h | 3 +- .../Concepts/RegularTriangulationTraits_3.h | 2 +- .../RegularTriangulationVertexBase_3.h | 3 +- .../TriangulationCellBaseWithInfo_3.h | 3 +- .../Concepts/TriangulationCellBase_3.h | 5 +- .../Concepts/TriangulationTraits_3.h | 2 +- .../TriangulationVertexBaseWithInfo_3.h | 3 +- .../Concepts/TriangulationVertexBase_3.h | 5 +- .../DelaunayTriangulationOnSphereTraits_2.h | 5 +- .../TriangulationOnSphereFaceBase_2.h | 3 +- .../Concepts/TriangulationOnSphereTraits_2.h | 5 +- .../TriangulationOnSphereVertexBase_2.h | 3 +- .../doc/Visibility_2/Concepts/Visibility_2.h | 7 +- .../Concepts/AdaptationPolicy_2.h | 19 ++--- .../Concepts/AdaptationTraits_2.h | 9 ++- .../Concepts/DelaunayGraph_2.h | 14 ++-- .../Weights/Concepts/AnalyticWeightTraits_2.h | 9 +-- .../Weights/Concepts/AnalyticWeightTraits_3.h | 3 +- .../Weights/Concepts/BarycentricWeights_2.h | 8 +- 399 files changed, 1252 insertions(+), 916 deletions(-) diff --git a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h index 0ac0476616e..7fb8d9cfd96 100644 --- a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h +++ b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h @@ -41,8 +41,8 @@ namespace CGAL { * of `VertexPointPMap` (using the `Kernel_traits` mechanism). * The segment type of the primitive (`Datum`) is `CGAL::Kernel_traits< boost::property_traits< VertexPointPMap >::%value_type >::%Kernel::Segment_3`. * - * \cgalModelsBare{AABBPrimitive if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`, - * AABBPrimitiveWithSharedData if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`} + * \cgalModelsBare{`AABBPrimitive` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`, + * `AABBPrimitiveWithSharedData` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`} * * \tparam HalfedgeGraph is a model of the halfedge graph concept. * as key type and a \cgal Kernel `Point_3` as value type. diff --git a/AABB_tree/include/CGAL/AABB_primitive.h b/AABB_tree/include/CGAL/AABB_primitive.h index d602a349ee0..b31cf5a74de 100644 --- a/AABB_tree/include/CGAL/AABB_primitive.h +++ b/AABB_tree/include/CGAL/AABB_primitive.h @@ -53,8 +53,8 @@ public: * The two property maps which are template parameters of the class enable to get the datum and the reference point of * the primitive from the identifier. The last template parameter controls whether the primitive class holds a copy of the datum. * - * \cgalModelsBare{AABBPrimitive if `ExternalPropertyMaps` is `CGAL::Tag_false`, - * AABBPrimitiveWithSharedData if `ExternalPropertyMaps` is `CGAL::Tag_true`} + * \cgalModelsBare{`AABBPrimitive` if `ExternalPropertyMaps` is `CGAL::Tag_false`, + * `AABBPrimitiveWithSharedData` if `ExternalPropertyMaps` is `CGAL::Tag_true`} * * \tparam ObjectPropertyMap is a model of `ReadablePropertyMap` with `Id` as * `key_type`. It must be a model of `CopyConstructible`, `DefaultConstructible`, and `CopyAssignable`. diff --git a/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h b/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h index c68ff917daa..a56096bcb19 100644 --- a/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h +++ b/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h @@ -11,7 +11,7 @@ together with a few geometric predicates and constructions on these objects. \cgalRefines{DelaunayTriangulationTraits_3} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the concept `Kernel`} */ class AdvancingFrontSurfaceReconstructionTraits_3 { diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h index 48c92909b80..0fbc4ea6f17 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h @@ -28,7 +28,8 @@ algebraic operations within that structure. \sa `CGAL::Field_with_kth_root_tag` \sa `CGAL::Field_with_root_of_tag` -\cgalHasModel `CGAL::Algebraic_structure_traits` +\cgalHasModelsBegin CGAL::Algebraic_structure_traits +\cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h index 8609a9a9cbe..a53ac500cbf 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h @@ -9,16 +9,17 @@ for Cartesian kernels. \cgalRefines{Field,RealEmbeddable} -\cgalHasModel float -\cgalHasModel double -\cgalHasModel `CGAL::Gmpq` -\cgalHasModel `CGAL::Interval_nt` -\cgalHasModel `CGAL::Interval_nt_advanced` -\cgalHasModel `CGAL::Lazy_exact_nt` -\cgalHasModel `CGAL::Quotient` -\cgalHasModel `leda_rational` -\cgalHasModel `leda_bigfloat` -\cgalHasModel `leda_real` +\cgalHasModelsBegin float +\cgalHasModels double +\cgalHasModels CGAL::Gmpq +\cgalHasModels CGAL::Interval_nt +\cgalHasModels CGAL::Interval_nt_advanced +\cgalHasModels CGAL::Lazy_exact_nt +\cgalHasModels CGAL::Quotient +\cgalHasModels leda_rational +\cgalHasModels leda_bigfloat +\cgalHasModels leda_real +\cgalHasModelsEnd \sa `RingNumberType` \sa `Kernel` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h index eaa438e6c90..35d4b408a67 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h @@ -8,7 +8,8 @@ A model of `FractionTraits` is associated with a type `Type`. In case the associated type is a `Fraction`, a model of `FractionTraits` provides the relevant functionality for decomposing and re-composing as well as the numerator and denominator type. -\cgalHasModel `CGAL::Fraction_traits` +\cgalHasModelsBegin CGAL::Fraction_traits +\cgalHasModelsEnd \sa `FractionTraits_::Decompose` \sa `FractionTraits_::Compose` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h index 58d2190329a..f8f2f3f8749 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h @@ -6,9 +6,10 @@ A model of the concept `FromIntConstructible` is required to be constructible from int. -\cgalHasModel int -\cgalHasModel long -\cgalHasModel double +\cgalHasModelsBegin int +\cgalHasModels long +\cgalHasModels double +\cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h index 379390e11e7..1cd155d7ccf 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h @@ -7,7 +7,8 @@ A model of `RealEmbeddableTraits` is associated to a number type `Type` and reflects the properties of this type with respect to the concept `RealEmbeddable`. -\cgalHasModel `CGAL::Real_embeddable_traits` +\cgalHasModelsBegin CGAL::Real_embeddable_traits +\cgalHasModelsEnd */ class RealEmbeddableTraits { diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h index a2b6c5036f0..46203068258 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h @@ -10,19 +10,19 @@ for Homogeneous kernels. \cgalRefines{IntegralDomainWithoutDivision,RealEmbeddable} -\cgalHasModel \cpp built-in number types -\cgalHasModel `CGAL::Gmpq` -\cgalHasModel `CGAL::Gmpz` -\cgalHasModel `CGAL::Interval_nt` -\cgalHasModel `CGAL::Interval_nt_advanced` -\cgalHasModel `CGAL::Lazy_exact_nt` -\cgalHasModel `CGAL::MP_Float` -\cgalHasModel `CGAL::Gmpzf` -\cgalHasModel `CGAL::Quotient` -\cgalHasModel `leda_integer` -\cgalHasModel `leda_rational` -\cgalHasModel `leda_bigfloat` -\cgalHasModel `leda_real` +\cgalHasModelsBareBegin{\cpp built-in number types} CGAL::Gmpq +\cgalHasModels CGAL::Gmpz +\cgalHasModels CGAL::Interval_nt +\cgalHasModels CGAL::Interval_nt_advanced +\cgalHasModels CGAL::Lazy_exact_nt +\cgalHasModels CGAL::MP_Float +\cgalHasModels CGAL::Gmpzf +\cgalHasModels CGAL::Quotient +\cgalHasModels leda_integer +\cgalHasModels leda_rational +\cgalHasModels leda_bigfloat +\cgalHasModels leda_real +\cgalHasModelsEnd \sa `FieldNumberType` diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h index c9c2f475f8e..f9b702d436b 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h @@ -8,8 +8,9 @@ algebraic functionalities on univariate polynomials of general degree \f$ d\f$. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModel `CGAL::Algebraic_kernel_rs_gmpz_d_1` -\cgalHasModel `CGAL::Algebraic_kernel_rs_gmpq_d_1` +\cgalHasModelsBegin CGAL::Algebraic_kernel_rs_gmpz_d_1 +\cgalHasModels CGAL::Algebraic_kernel_rs_gmpq_d_1 +\cgalHasModelsEnd \sa `AlgebraicKernel_d_2` diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h index 57b30f90d2f..562a6aaaa19 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h @@ -9,7 +9,8 @@ The concept `AlphaShapeFace_2` describes the requirements for the base face of a RegularTriangulationFaceBase_2 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_2TriangulationFaceBase_2 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Alpha_shape_face_base_2` (templated with the appropriate triangulation face base class). +\cgalHasModelsBegin CGAL::Alpha_shape_face_base_2 (templated with the appropriate triangulation face base class) +\cgalHasModelsEnd */ class AlphaShapeFace_2 { diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h index a6f1c1fca18..28ad270b744 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h @@ -9,8 +9,7 @@ class of the underlying Delaunay triangulation of a basic alpha shape. \cgalRefines{DelaunayTriangulationTraits_2 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_2DelaunayTriangulationTraits_2 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} -\cgalHasModel All models of `Kernel`. -\cgalHasModel Projection traits such as `CGAL::Projection_traits_xy_3`. +\cgalHasModelsBare{All models of `Kernel`,Projection traits such as `CGAL::Projection_traits_xy_3`} \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h index 5015af963f6..5116683d78b 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h @@ -9,7 +9,7 @@ The concept `AlphaShapeVertex_2` describes the requirements for the base vertex RegularTriangulationVertexBase_2 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_2TriangulationVertexBase_2 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Alpha_shape_vertex_base_2` (templated with the appropriate triangulation vertex base class). +\cgalHasModelsBare{`CGAL::Alpha_shape_vertex_base_2` (templated with the appropriate triangulation vertex base class)} */ class AlphaShapeVertex_2 { public: diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h index 62d404c3c38..05be16ee559 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h @@ -9,8 +9,7 @@ of the underlying regular triangulation of a weighted alpha shape. \cgalRefines{RegularTriangulationTraits_2 if the underlying triangulation of the alpha shape is a regular triangulation.} -\cgalHasModel All models of `Kernel`. -\cgalHasModel Projection traits such as `CGAL::Projection_traits_xy_3`. +\cgalHasModelsBare{All models of `Kernel`,Projection traits such as `CGAL::Projection_traits_xy_3`} \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h index 570b419998e..de5c0aacd62 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h @@ -9,7 +9,7 @@ The concept `AlphaShapeCell_3` describes the requirements for the base cell of a RegularTriangulationCellBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSCellBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class). +\cgalHasModelsBare{`CGAL::Alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class)} \sa `CGAL::Alpha_status` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h index 6d9fbcbe430..4a5fe7a8bfd 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h @@ -10,7 +10,7 @@ of the underlying Delaunay triangulation of a basic alpha shape. \cgalRefines{DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_3DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of `Kernel`} \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h index 6e23176c2d9..65f49014180 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h @@ -9,7 +9,7 @@ The concept `AlphaShapeVertex_3` describes the requirements for the base vertex RegularTriangulationVertexBase_3 if the underlying triangulation of the alpha shape is a regular triangulation. Periodic_3TriangulationDSVertexBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class). +\cgalHasModelsBare{`CGAL::Alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class)} \sa `CGAL::Alpha_status` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h index 1fd4060952f..7707ed14ce1 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h @@ -9,7 +9,7 @@ The concept `FixedAlphaShapeCell_3` describes the requirements for the base cell RegularTriangulationCellBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSCellBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Fixed_alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class). +\cgalHasModelsBare{`CGAL::Fixed_alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class)} */ class FixedAlphaShapeCell_3 { public: diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h index d6b3aa7f35f..4c63e9618fa 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h @@ -10,7 +10,7 @@ of the underlying Delaunay triangulation of a basic alpha shape with a fixed val \cgalRefines{DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_3DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of `Kernel`} \sa CGAL::Exact_predicates_inexact_constructions_kernel (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h index 59d9593e5fc..7b152f16e2e 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h @@ -9,7 +9,7 @@ The concept `FixedAlphaShapeVertex_3` describes the requirements for the base ve RegularTriangulationVertexBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSVertexBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModel `CGAL::Fixed_alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class). +\cgalHasModelsBare{`CGAL::Fixed_alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class)} */ class FixedAlphaShapeVertex_3 { diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h index e84810fdc78..8b7694d5643 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h @@ -9,7 +9,7 @@ for the geometric traits class of the underlying regular triangulation of a weig \cgalRefines{RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic regular triangulation} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of `Kernel`} \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h index f0c11a972c7..10c8009e6c2 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h @@ -10,7 +10,7 @@ of the underlying regular triangulation of a weighted alpha shape. \cgalRefines{RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic regular triangulation} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of `Kernel`} \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h index 85c697f40a8..145349567d2 100644 --- a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h +++ b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h @@ -9,10 +9,11 @@ The concept `AlphaWrapOracle` defines the requirements for an Alpha Wrap Ora that answers a number of queries over the input of the algorithm. The oracle is the template parameter of the class `CGAL::Alpha_wraps_3_::Alpha_wrap_3`. -\cgalHasModel `CGAL::Alpha_wraps_3_::Point_set_oracle` -\cgalHasModel `CGAL::Alpha_wraps_3_::Segment_soup_oracle` -\cgalHasModel `CGAL::Alpha_wraps_3_::Triangle_mesh_oracle` -\cgalHasModel `CGAL::Alpha_wraps_3_::Triangle_soup_oracle` +\cgalHasModelsBegin CGAL::Alpha_wraps_3_::Point_set_oracle +\cgalHasModels CGAL::Alpha_wraps_3_::Segment_soup_oracle +\cgalHasModels CGAL::Alpha_wraps_3_::Triangle_mesh_oracle +\cgalHasModels CGAL::Alpha_wraps_3_::Triangle_soup_oracle +\cgalHasModelsEnd */ template diff --git a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h index 63428d4b889..916aa5aa3da 100644 --- a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h +++ b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h @@ -11,7 +11,7 @@ you require Kernel. Stitch_borders doesn't even have clear geometric traits requ The concept `AlphaWrapTraits_3` defines the requirements for the geometric traits class of an alpha wrap oracle. -\cgalHasModel Any 3D %kernel is a model of this traits concept. +\cgalHasModelsBare{Any 3D %kernel is a model of this traits concept} */ class AlphaWrapTraits_3 diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h index cca93a7c829..e494faa898c 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h @@ -27,7 +27,8 @@ We only describe the additional requirements with respect to the \cgalRefines{TriangulationDataStructure_2} -\cgalHasModel `CGAL::Triangulation_data_structure_2` +\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `ApolloniusGraphVertexBase_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h index a2ed0353ddd..4cfc7a99223 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h @@ -19,7 +19,8 @@ next and previous level graphs. `ApolloniusGraphHierarchyVertexBase_2` does not introduce any types in addition to those of `ApolloniusGraphVertexBase_2`. -\cgalHasModel `CGAL::Apollonius_graph_hierarchy_vertex_base_2 >` +\cgalHasModelsBegin CGAL::Apollonius_graph_hierarchy_vertex_base_2 > +\cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` \sa `CGAL::Apollonius_graph_hierarchy_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h index 5fa6db8c6e6..1517dd4fe17 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h @@ -12,8 +12,9 @@ it provides a type `Site_2`, which must be a model of the concept constructions for sites and several function object types for the predicates. -\cgalHasModel `CGAL::Apollonius_graph_traits_2` -\cgalHasModel `CGAL::Apollonius_graph_filtered_traits_2` +\cgalHasModelsBegin CGAL::Apollonius_graph_traits_2 +\cgalHasModels CGAL::Apollonius_graph_filtered_traits_2 +\cgalHasModelsEnd \sa `CGAL::Apollonius_graph_2` \sa `CGAL::Apollonius_graph_traits_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h index 201d7e9e91a..cac31092baf 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h @@ -12,7 +12,8 @@ sites. The container stores the hidden sites related to the vertex. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Apollonius_graph_vertex_base_2` +\cgalHasModelsBegin CGAL::Apollonius_graph_vertex_base_2 +\cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` \sa `CGAL::Apollonius_graph_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h index 956aad8144f..671d83a6967 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementApproximateTraits_2::Approximate_2 + * \cgalHasModelsBegin ArrangementApproximateTraits_2::Approximate_2 + * \cgalHasModelsEnd */ class Approximate_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h index 66e4e53e898..56ec39093c7 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementXMonotoneTraits_2::Are_mergeable_2 + * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Are_mergeable_2 + * \cgalHasModelsEnd */ class AreMergeable_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h index 01f854b6426..9031f72a9bd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModel ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_2 + * \cgalHasModelsBegin ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_ + * \cgalHasModelsEnd */ class CompareXNearBoundary_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h index 3a31719bb75..45fd98fa2d6 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableFunctor} * - * \cgalHasModel ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2 - * \cgalHasModel ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2 - * \cgalHasModel ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsBegin ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2 + * \cgalHasModels ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2 + * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsEnd */ class CompareXOnBoundaryOfCurveEnd_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h index 4339c3f369d..b02a736b31d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableFunctor} * - * \cgalHasModel ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2 - * \cgalHasModel ArrangementClosedTopTraits_2::Compare_x_on_boundary_2 - * \cgalHasModel ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsBegin ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2 + * \cgalHasModels ArrangementClosedTopTraits_2::Compare_x_on_boundary_2 + * \cgalHasModels ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsEnd */ class CompareXOnBoundary_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h index 413311319d6..fe5d8a4d505 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h @@ -4,7 +4,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Compare_x_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_x_2 + * \cgalHasModelsEnd */ class CompareX_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h index a485ec1a623..f571e844bdb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Compare_xy_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_xy_2 + * \cgalHasModelsEnd */ class CompareXy_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h index 5f50c695cea..eeb40906146 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Compare_y_at_x_left_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_left_2 + * \cgalHasModelsEnd */ class CompareYAtXLeft_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h index 670752239a7..1308a75c5bd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Compare_y_at_x_right_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_right_2 + * \cgalHasModelsEnd */ class CompareYAtXRight_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h index 53bfaa49591..e1e0d671441 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Compare_y_at_x_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_2 + * \cgalHasModelsEnd */ class CompareYAtX_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h index f4bc83bd1a9..df0c66fae01 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModel ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2 + * \cgalHasModelsBegin ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2 + * \cgalHasModelsEnd */ class CompareYNearBoundary_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h index 117023bc832..8f5c89d89fe 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h @@ -5,10 +5,11 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2 - * \cgalHasModel ArrangementClosedRightTraits_2::Compare_y_on_boundary_2 - * \cgalHasModel ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2 - * \cgalHasModel ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2 + * \cgalHasModelsBegin ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2 + * \cgalHasModels ArrangementClosedRightTraits_2::Compare_y_on_boundary_2 + * \cgalHasModels ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2 + * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2 + * \cgalHasModelsEnd */ class CompareYOnBoundary_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h index 72620babd22..d6a0c5b1208 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementConstructCurveTraits_2::Construct_curve_2 + * \cgalHasModelsBegin ArrangementConstructCurveTraits_2::Construct_curve_2 + * \cgalHasModelsEnd */ class ConstructCurve_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h index e5c4146c9fa..e94c601aa7a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Construct_max_vertex_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Construct_max_vertex_2 + * \cgalHasModelsEnd */ class ConstructMaxVertex_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h index 472c793d9f4..00a000f41ce 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Construct_min_vertex_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Construct_min_vertex_2 + * \cgalHasModelsEnd */ class ConstructMinVertex_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h index 6fc6381803a..d25d94e4371 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2 + * \cgalHasModelsBegin ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2 + * \cgalHasModelsEnd */ class ConstructXMonotoneCurve_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h index d923f9b27db..3994e674cfb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h @@ -6,7 +6,8 @@ namespace ArrTraits { * represents a general planar curve. * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - * \cgalHasModel ArrangementTraits_2::Curve_2 + * \cgalHasModelsBegin ArrangementTraits_2::Curve_2 + * \cgalHasModelsEnd */ class Curve_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h index 41cf7e2f6c6..71c6da87afc 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Equal_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Equal_2 + * \cgalHasModelsEnd */ class Equal_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h index 5e11e857548..7a6d7e30739 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementXMonotoneTraits_2::Intersect_2 + * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Intersect_2 + * \cgalHasModelsEnd */ class Intersect_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h index 47bba6ea744..f2850203499 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModel ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2 + * \cgalHasModelsBegin ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2 + * \cgalHasModelsEnd */ class IsOnXIdentification_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h index d9a69236ee8..e07b550923f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModel ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2 + * \cgalHasModelsBegin ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2 + * \cgalHasModelsEnd */ class IsOnYIdentification_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h index 1831b790c56..e9bbf29d0c8 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModel ArrangementBasicTraits_2::Is_vertical_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Is_vertical_2 + * \cgalHasModelsEnd */ class IsVertical_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h index db0df3c8cc8..46d0e1b5bae 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementTraits_2::Make_x_monotone_2 + * \cgalHasModelsBegin ArrangementTraits_2::Make_x_monotone_2 + * \cgalHasModelsEnd */ class MakeXMonotone_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h index 8e61d8c7500..17e8573bea2 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementXMonotoneTraits_2::Merge_2 + * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Merge_2 + * \cgalHasModelsEnd */ class Merge_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h index a37db7c40f6..4e6a66ede1b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementVerticalSideTraits_2::Parameter_space_in_x_2 - * \cgalHasModel ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2 - * \cgalHasModel ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2 + * \cgalHasModelsBegin ArrangementVerticalSideTraits_2::Parameter_space_in_x_2 + * \cgalHasModels ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2 + * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2 + * \cgalHasModelsEnd */ class ParameterSpaceInX_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h index 0844ee649a4..e443f0498da 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModel ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2 - * \cgalHasModel ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2 - * \cgalHasModel ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2 + * \cgalHasModelsBegin ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2 + * \cgalHasModels ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2 + * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2 + * \cgalHasModelsEnd */ class ParameterSpaceInY_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h index 78273b88947..182f0a059ba 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h @@ -7,7 +7,8 @@ namespace ArrTraits { * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModel ArrangementBasicTraits_2::Point_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::Point_2 + * \cgalHasModelsEnd */ class Point_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h index 45210b92d0c..ff6bcb382cb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h @@ -4,7 +4,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModel ArrangementXMonotoneTraits_2::Split_2 + * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Split_2 + * \cgalHasModelsEnd */ class Split_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h index 6b23acac29d..f74e74bf150 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h @@ -6,7 +6,8 @@ namespace ArrTraits { * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModel ArrangementBasicTraits_2::X_monotone_curve_2 + * \cgalHasModelsBegin ArrangementBasicTraits_2::X_monotone_curve_2 + * \cgalHasModelsEnd */ class XMonotoneCurve_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h index b92f249431b..b4720036574 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h @@ -8,14 +8,15 @@ point. \cgalRefines{ArrangementBasicTraits_2} -\cgalHasModel `CGAL::Arr_conic_traits_2` -\cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` -\cgalHasModel `CGAL::Arr_linear_traits_2` -\cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` -\cgalHasModel `CGAL::Arr_segment_traits_2` -\cgalHasModel `CGAL::Arr_polycurve_traits_2` -\cgalHasModel `CGAL::Arr_polyline_traits_2` -\cgalHasModel `CGAL::Arr_rational_function_traits_2` +\cgalHasModelsBegin CGAL::Arr_conic_traits_2 +\cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 +\cgalHasModels CGAL::Arr_linear_traits_2 +\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 +\cgalHasModels CGAL::Arr_segment_traits_2 +\cgalHasModels CGAL::Arr_polycurve_traits_2 +\cgalHasModels CGAL::Arr_polyline_traits_2 +\cgalHasModels CGAL::Arr_rational_function_traits_2 +\cgalHasModelsEnd \sa `ArrangementConstructXMonotoneCurveTraits_2`, `ArrangementXMonotoneTraits_2`, and diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h index 750182554c3..3e8c6073572 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h @@ -9,7 +9,8 @@ * represent the arrangement cells (i.e., vertices, edges, and facets) and the * incident relations between them. * - * \cgalHasModel `CGAL::Arr_spherical_topology_traits_2` + * \cgalHasModelsBegin CGAL::Arr_spherical_topology_traits_2 + * \cgalHasModelsEnd */ class ArrangementBasicTopologyTraits { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h index 4b8cbbbf7c2..e521ef28b06 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h @@ -27,21 +27,22 @@ * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModel `CGAL::Arr_segment_traits_2` - * \cgalHasModel `CGAL::Arr_non_caching_segment_basic_traits_2` - * \cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_polyline_traits_2` - * \cgalHasModel `CGAL::Arr_circle_segment_traits_2` - * \cgalHasModel `CGAL::Arr_line_arc_traits_2` - * \cgalHasModel `CGAL::Arr_circular_arc_traits_2` - * \cgalHasModel `CGAL::Arr_circular_line_arc_traits_2` - * \cgalHasModel `CGAL::Arr_conic_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` - * \cgalHasModel `CGAL::Arr_Bezier_curve_traits_2` - * \cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` - * \cgalHasModel `CGAL::Arr_curve_data_traits_2` - * \cgalHasModel `CGAL::Arr_consolidated_curve_data_traits_2` + * \cgalHasModelsBegin CGAL::Arr_segment_traits_2 + * \cgalHasModels CGAL::Arr_non_caching_segment_basic_traits_2 + * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 + * \cgalHasModels CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_polyline_traits_2 + * \cgalHasModels CGAL::Arr_circle_segment_traits_2 + * \cgalHasModels CGAL::Arr_line_arc_traits_2 + * \cgalHasModels CGAL::Arr_circular_arc_traits_2 + * \cgalHasModels CGAL::Arr_circular_line_arc_traits_2 + * \cgalHasModels CGAL::Arr_conic_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModels CGAL::Arr_Bezier_curve_traits_2 + * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 + * \cgalHasModels CGAL::Arr_curve_data_traits_2 + * \cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 + * \cgalHasModelsEnd */ class ArrangementBasicTraits_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h index afc3942cba8..176810a0793 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h @@ -7,13 +7,14 @@ * * \cgalRefines{ArrangementTraits_2} * - * \cgalHasModel `CGAL::Arr_conic_traits_2` - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` - * \cgalHasModel `CGAL::Arr_segment_traits_2` - * \cgalHasModel `CGAL::Arr_polyline_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` + * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 + * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModels CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 + * \cgalHasModels CGAL::Arr_segment_traits_2 + * \cgalHasModels CGAL::Arr_polyline_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementConstructXMonotoneCurveTraits_2`, and * `ArrangementTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h index 394f98f5a3b..99ca431cd46 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h @@ -7,13 +7,14 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModel `CGAL::Arr_conic_traits_2` - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` - * \cgalHasModel `CGAL::Arr_segment_traits_2` - * \cgalHasModel `CGAL::Arr_polyline_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` + * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 + * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModels CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 + * \cgalHasModels CGAL::Arr_segment_traits_2 + * \cgalHasModels CGAL::Arr_polyline_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementApproximateTraits_2`, * `ArrangementXMonotoneTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h index f685263e31e..81984c4699e 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h @@ -14,10 +14,11 @@ * `ArrangementDcelHalfedge`, `ArrangementDcelFace`, `ArrangementDcelOuterCcb`, * `ArrangementDcelInnerCcb`, and `ArrangementDcelIsolatedVertex` respectively.) * - * \cgalHasModel `CGAL::Arr_dcel_base` - * \cgalHasModel `CGAL::Arr_default_dcel` - * \cgalHasModel `CGAL::Arr_face_extended_dcel` - * \cgalHasModel `CGAL::Arr_extended_dcel` + * \cgalHasModelsBegin CGAL::Arr_dcel_base + * \cgalHasModels CGAL::Arr_default_dcel + * \cgalHasModels CGAL::Arr_face_extended_dcel + * \cgalHasModels CGAL::Arr_extended_dcel + * \cgalHasModelsEnd * * \sa `ArrangementDcelVertex` * \sa `ArrangementDcelHalfedge` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h index 88e4fff19f0..d4f263cf01f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h @@ -10,9 +10,10 @@ Instantiate a dcel class with many different possible types without ad-hoc limit \cgalRefines{ArrangementDcel} -\cgalHasModel `CGAL::Arr_default_dcel` -\cgalHasModel `CGAL::Arr_face_extended_dcel` -\cgalHasModel `CGAL::Arr_extended_dcel` +\cgalHasModelsBegin CGAL::Arr_default_dcel +\cgalHasModels CGAL::Arr_face_extended_dcel +\cgalHasModels CGAL::Arr_extended_dcel +\cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h index e659a3be297..60e28710d01 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h @@ -11,10 +11,11 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` - * \cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` + * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 + * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h index 09e87373c1e..53469ded7bd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h @@ -5,9 +5,10 @@ * functions that enable reading an arrangement from an input stream using a * specific format. * - * \cgalHasModel `CGAL::Arr_text_formatter` - * \cgalHasModel `CGAL::Arr_face_extended_text_formatter` - * \cgalHasModel `CGAL::Arr_extended_dcel_text_formatter` + * \cgalHasModelsBegin CGAL::Arr_text_formatter + * \cgalHasModels CGAL::Arr_face_extended_text_formatter + * \cgalHasModels CGAL::Arr_extended_dcel_text_formatter + * \cgalHasModelsEnd * */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h index cc66b479fbe..b014807650a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h @@ -11,14 +11,15 @@ * * \cgalRefines{ArrangementApproximateTraits_2,ArrangementConstructXMonotoneCurveTraits_2} * - * \cgalHasModel `CGAL::Arr_conic_traits_2` - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` - * \cgalHasModel `CGAL::Arr_segment_traits_2` - * \cgalHasModel `CGAL::Arr_polycurve_traits_2` - * \cgalHasModel `CGAL::Arr_polyline_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` + * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 + * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModels CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 + * \cgalHasModels CGAL::Arr_segment_traits_2 + * \cgalHasModels CGAL::Arr_polycurve_traits_2 + * \cgalHasModels CGAL::Arr_polyline_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementXMonotoneTraits_2` and * `ArrangementTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h index 8190767e71c..16f3ffa5195 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h @@ -39,11 +39,12 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` - * \cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` - * \cgalHasModel `CGAL::Arr_curve_data_traits_2` - * \cgalHasModel `CGAL::Arr_consolidated_curve_data_traits_2` + * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 + * \cgalHasModels CGAL::Arr_curve_data_traits_2 + * \cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementBasicTraits_2` * \sa `ArrangementXMonotoneTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h index 0418ee873b5..bee9cba7720 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h @@ -6,9 +6,10 @@ A model for the `ArrangementOutputFormatter` concept supports a set of functions that enable writing an arrangement to an output stream using a specific format. -\cgalHasModel `CGAL::Arr_text_formatter` -\cgalHasModel `CGAL::Arr_face_extended_text_formatter` -\cgalHasModel `CGAL::Arr_extended_dcel_text_formatter` +\cgalHasModelsBegin CGAL::Arr_text_formatter +\cgalHasModels CGAL::Arr_face_extended_text_formatter +\cgalHasModels CGAL::Arr_extended_dcel_text_formatter +\cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h index c2f6a0437f2..31e4bf30232 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h @@ -20,10 +20,11 @@ the old style without any overhead, the macro `CGAL_ARR_POINT_LOCATION_VERSION` can be defined to 1 before any \cgal header is included. -\cgalHasModel `CGAL::Arr_naive_point_location` -\cgalHasModel `CGAL::Arr_walk_along_line_point_location` -\cgalHasModel `CGAL::Arr_trapezoid_ric_point_location` -\cgalHasModel `CGAL::Arr_landmarks_point_location` +\cgalHasModelsBegin CGAL::Arr_naive_point_location +\cgalHasModels CGAL::Arr_walk_along_line_point_location +\cgalHasModels CGAL::Arr_trapezoid_ric_point_location +\cgalHasModels CGAL::Arr_landmarks_point_location +\cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` \sa `CGAL::Arr_walk_along_line_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h index 87ff1eb159c..fe9137b5696 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h @@ -11,7 +11,8 @@ * \cgalRefines{ArrangementBasicTraits_2,ArrangementIdentifiedVerticalTraits_2, * ArrangementContractedBottomTraits_2,ArrangementContractedTopTraits_2} * - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` + * \cgalHasModelsBegin CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementOpenBoundaryTraits_2` * \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h index 2ea883dee11..80660fcda14 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h @@ -20,9 +20,10 @@ * * At this point we do not expose all the requirements of this concept. * - * \cgalHasModel `CGAL::Arr_bounded_planar_topology_traits_2` - * \cgalHasModel `CGAL::Arr_unb_planar_topology_traits_2` - * \cgalHasModel `CGAL::Arr_spherical_topology_traits_2` + * \cgalHasModelsBegin CGAL::Arr_bounded_planar_topology_traits_2 + * \cgalHasModels CGAL::Arr_unb_planar_topology_traits_2 + * \cgalHasModels CGAL::Arr_spherical_topology_traits_2 + * \cgalHasModelsEnd * * \sa `Arrangement_on_surface_2` */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h index 05bac54d5a2..e9bca5d3dc9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h @@ -30,20 +30,21 @@ that accept such curves, such as `intsert()`. \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModel `CGAL::Arr_segment_traits_2` -\cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` -\cgalHasModel `CGAL::Arr_linear_traits_2` -\cgalHasModel `CGAL::Arr_polyline_traits_2` -\cgalHasModel `CGAL::Arr_circle_segment_traits_2` -\cgalHasModel `CGAL::Arr_line_arc_traits_2` -\cgalHasModel `CGAL::Arr_circular_arc_traits_2` -\cgalHasModel `CGAL::Arr_circular_line_arc_traits_2` -\cgalHasModel `CGAL::Arr_conic_traits_2` -\cgalHasModel `CGAL::Arr_rational_function_traits_2` -\cgalHasModel `CGAL::Arr_Bezier_curve_traits_2` -\cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` -\cgalHasModel `CGAL::Arr_curve_data_traits_2` -\cgalHasModel `CGAL::Arr_consolidated_curve_data_traits_2` +\cgalHasModelsBegin CGAL::Arr_segment_traits_2 +\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 +\cgalHasModels CGAL::Arr_linear_traits_2 +\cgalHasModels CGAL::Arr_polyline_traits_2 +\cgalHasModels CGAL::Arr_circle_segment_traits_2 +\cgalHasModels CGAL::Arr_line_arc_traits_2 +\cgalHasModels CGAL::Arr_circular_arc_traits_2 +\cgalHasModels CGAL::Arr_circular_line_arc_traits_2 +\cgalHasModels CGAL::Arr_conic_traits_2 +\cgalHasModels CGAL::Arr_rational_function_traits_2 +\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 +\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 +\cgalHasModels CGAL::Arr_curve_data_traits_2 +\cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 +\cgalHasModelsEnd \sa `ArrangementBasicTraits_2` \sa `ArrangementXMonotoneTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h index 4a1febdc2d2..eb1b893f460 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h @@ -28,10 +28,11 @@ is recommended. To enable the old style without any overhead, the macro `CGAL_ARR_POINT_LOCATION_VERSION` can be defined to 1 before any \cgal header is included. -\cgalHasModel `CGAL::Arr_naive_point_location` -\cgalHasModel `CGAL::Arr_walk_along_line_point_location` -\cgalHasModel `CGAL::Arr_trapezoid_ric_point_location` -\cgalHasModel `CGAL::Arr_landmarks_point_location` +\cgalHasModelsBegin CGAL::Arr_naive_point_location +\cgalHasModels CGAL::Arr_walk_along_line_point_location +\cgalHasModels CGAL::Arr_trapezoid_ric_point_location +\cgalHasModels CGAL::Arr_landmarks_point_location +\cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` \sa `CGAL::Arr_walk_along_line_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h index cc36ec97ea6..e12fda8a889 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h @@ -11,10 +11,11 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModel `CGAL::Arr_linear_traits_2` - * \cgalHasModel `CGAL::Arr_rational_function_traits_2` - * \cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` - * \cgalHasModel `CGAL::Arr_geodesic_arc_on_sphere_traits_2` + * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 + * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 + * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h index fd879fad9a0..4b31986adfb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h @@ -9,7 +9,8 @@ specific format. \cgalRefines{ArrangementInputFormatter} -\cgalHasModel `CGAL::Arr_with_history_text_formatter` +\cgalHasModelsBegin CGAL::Arr_with_history_text_formatter +\cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h index e766c2cfc26..8ff0dc5eda4 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h @@ -9,7 +9,8 @@ specific format. \cgalRefines{ArrangementOutputFormatter} -\cgalHasModel `CGAL::Arr_with_history_text_formatter` +\cgalHasModelsBegin CGAL::Arr_with_history_text_formatter +\cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h index 5eae4b190c2..99e34f2ae6d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h @@ -18,20 +18,21 @@ curve splitting. \cgalRefines{ArrangementBasicTraits_2} -\cgalHasModel `CGAL::Arr_segment_traits_2` -\cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` -\cgalHasModel `CGAL::Arr_linear_traits_2` -\cgalHasModel `CGAL::Arr_polyline_traits_2` -\cgalHasModel `CGAL::Arr_circle_segment_traits_2` -\cgalHasModel `CGAL::Arr_line_arc_traits_2` -\cgalHasModel `CGAL::Arr_circular_arc_traits_2` -\cgalHasModel `CGAL::Arr_circular_line_arc_traits_2` -\cgalHasModel `CGAL::Arr_conic_traits_2` -\cgalHasModel `CGAL::Arr_rational_function_traits_2` -\cgalHasModel `CGAL::Arr_Bezier_curve_traits_2` -\cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` -\cgalHasModel `CGAL::Arr_curve_data_traits_2` -\cgalHasModel `CGAL::Arr_consolidated_curve_data_traits_2` +\cgalHasModelsBegin CGAL::Arr_segment_traits_2 +\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 +\cgalHasModels CGAL::Arr_linear_traits_2 +\cgalHasModels CGAL::Arr_polyline_traits_2 +\cgalHasModels CGAL::Arr_circle_segment_traits_2 +\cgalHasModels CGAL::Arr_line_arc_traits_2 +\cgalHasModels CGAL::Arr_circular_arc_traits_2 +\cgalHasModels CGAL::Arr_circular_line_arc_traits_2 +\cgalHasModels CGAL::Arr_conic_traits_2 +\cgalHasModels CGAL::Arr_rational_function_traits_2 +\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 +\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 +\cgalHasModels CGAL::Arr_curve_data_traits_2 +\cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 +\cgalHasModelsEnd \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h index 9221705a709..2a90dfee44d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h @@ -11,8 +11,9 @@ Models for the concept are used by the global `overlay()` function to maintain the auxiliary data stored with the \dcel records of the resulting overlaid arrangement, based on the contents of the input records. -\cgalHasModel `CGAL::Arr_default_overlay_traits` -\cgalHasModel `CGAL::Arr_face_overlay_traits` +\cgalHasModelsBegin CGAL::Arr_default_overlay_traits +\cgalHasModels CGAL::Arr_face_overlay_traits +\cgalHasModelsEnd \sa `overlay` diff --git a/BGL/doc/BGL/Concepts/EdgeListGraph.h b/BGL/doc/BGL/Concepts/EdgeListGraph.h index 3b614c86c07..93b23b76748 100644 --- a/BGL/doc/BGL/Concepts/EdgeListGraph.h +++ b/BGL/doc/BGL/Concepts/EdgeListGraph.h @@ -11,7 +11,7 @@ and adds the requirement for traversal of all edges in a graph. \cgalRefines{Graph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/FaceGraph.h b/BGL/doc/BGL/Concepts/FaceGraph.h index b7ea012f4c9..a8b8bbe1893 100644 --- a/BGL/doc/BGL/Concepts/FaceGraph.h +++ b/BGL/doc/BGL/Concepts/FaceGraph.h @@ -20,7 +20,7 @@ A face descriptor must be `DefaultConstructible`, `Assignable`, `EqualityCompara \cgalRefines{HalfedgeGraph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/FaceListGraph.h b/BGL/doc/BGL/Concepts/FaceListGraph.h index 6e7936f5ad9..046015b67d2 100644 --- a/BGL/doc/BGL/Concepts/FaceListGraph.h +++ b/BGL/doc/BGL/Concepts/FaceListGraph.h @@ -16,7 +16,7 @@ face iterator must be the same as the face descriptor of the graph. \cgalRefines{FaceGraph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/HalfedgeGraph.h b/BGL/doc/BGL/Concepts/HalfedgeGraph.h index 8a31a1a787a..7be2d2220d7 100644 --- a/BGL/doc/BGL/Concepts/HalfedgeGraph.h +++ b/BGL/doc/BGL/Concepts/HalfedgeGraph.h @@ -38,7 +38,7 @@ An edge descriptor must be `DefaultConstructible`, `Assignable`, `EqualityCompar A model of `HalfedgeGraph` must have the interior property `vertex_point` attached to its vertices. -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/HalfedgeListGraph.h b/BGL/doc/BGL/Concepts/HalfedgeListGraph.h index 1019f3c336b..c5f8eeff689 100644 --- a/BGL/doc/BGL/Concepts/HalfedgeListGraph.h +++ b/BGL/doc/BGL/Concepts/HalfedgeListGraph.h @@ -16,7 +16,7 @@ halfedge iterator must be the same as the halfedge descriptor of the graph. \cgalRefines{HalfedgeGraph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/MutableFaceGraph.h b/BGL/doc/BGL/Concepts/MutableFaceGraph.h index 2ce0c981554..1f0f86c6a86 100644 --- a/BGL/doc/BGL/Concepts/MutableFaceGraph.h +++ b/BGL/doc/BGL/Concepts/MutableFaceGraph.h @@ -7,7 +7,7 @@ the requirement for operations to add faces and to modify face-halfedge relation \cgalRefines{FaceGraph,MutableHalfedgeGraph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h b/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h index 5ce56824a5a..86bd650fc86 100644 --- a/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h +++ b/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h @@ -8,7 +8,7 @@ update the incidence information between vertices and halfedges. \cgalRefines{HalfedgeGraph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/VertexListGraph.h b/BGL/doc/BGL/Concepts/VertexListGraph.h index aa88a4d1944..009fe00dac1 100644 --- a/BGL/doc/BGL/Concepts/VertexListGraph.h +++ b/BGL/doc/BGL/Concepts/VertexListGraph.h @@ -11,7 +11,7 @@ and adds the requirement for traversal of all vertices in a graph. \cgalRefines{Graph} -\cgalHasModel See \link PkgBGLTraits Boost Graph Traits Specializations \endlink +\cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h index 7f9ea3dfcbb..9fd9c19943b 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h @@ -8,10 +8,10 @@ namespace Barycentric_coordinates { A concept that describes the set of methods that should be defined for all coordinate models used to parameterize the class `Generalized_barycentric_coordinates_2`. -\cgalHasModel -- `Wachspress_2` -- `Mean_value_2` -- `Discrete_harmonic_2` +\cgalHasModelsBegin Wachspress_2 +\cgalHasModels Mean_value_2 +\cgalHasModels Discrete_harmonic_2 +\cgalHasModelsEnd \deprecated This part of the package is deprecated since the version 5.4 of \cgal. */ diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h index 1fe3c8fc2bd..bf07127b14d 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h @@ -9,12 +9,11 @@ A concept that describes the set of requirements of the template parameter `GeomTraits` used to parameterize all classes and functions with 2D barycentric coordinates from the namespace `CGAL::Barycentric_coordinates`. -\cgalHasModel -- All models of `Kernel` -- `CGAL::Projection_traits_3` -- `CGAL::Projection_traits_xy_3` -- `CGAL::Projection_traits_yz_3` -- `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{All models of `Kernel`} CGAL::Projection_traits_3 +\cgalHasModels CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd */ class BarycentricTraits_2 { diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h index 9e6e353958c..9ace050c0d8 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h @@ -13,7 +13,8 @@ elements, which share common edges and vertices. These finite elements are then used to approximate certain types of generalized barycentric coordinate functions. The domain is bounded by the polygon. -\cgalHasModel `Delaunay_domain_2` +\cgalHasModelsBegin Delaunay_domain_2 +\cgalHasModelsEnd */ class DiscretizedDomain_2 { diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h index c1f77e40a82..409316c5a4e 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h index 336b992999d..f4fcfa096e9 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h @@ -6,7 +6,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h index 5e8c9d034a4..719878346a5 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h @@ -6,7 +6,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h index 0d90fbacb2f..1e98facf71d 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Intersect_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Intersect_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h index 673b60c589b..2064a3ba079 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Merge_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Merge_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h index 108eb017796..91f8903728c 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModel `ArrangementDirectionalXMonotoneTraits_2::Split_2` +\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Split_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h index 62ce1fb841f..6b66a66997b 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h @@ -16,13 +16,14 @@ as its source and the other as its target. \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModel `CGAL::Arr_segment_traits_2` -\cgalHasModel `CGAL::Arr_non_caching_segment_traits_2` -\cgalHasModel `CGAL::Arr_circle_segment_traits_2` -\cgalHasModel `CGAL::Arr_conic_traits_2` -\cgalHasModel `CGAL::Arr_rational_function_traits_2` -\cgalHasModel `CGAL::Arr_Bezier_curve_traits_2` -\cgalHasModel `CGAL::Arr_algebraic_segment_traits_2` +\cgalHasModelsBegin CGAL::Arr_segment_traits_2 +\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 +\cgalHasModels CGAL::Arr_circle_segment_traits_2 +\cgalHasModels CGAL::Arr_conic_traits_2 +\cgalHasModels CGAL::Arr_rational_function_traits_2 +\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 +\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 +\cgalHasModelsEnd \sa `ArrangementXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h index ec5f5909ce3..9264a822bff 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h @@ -16,7 +16,8 @@ respectively \cgalRefines{ArrangementDcel} -\cgalHasModel `CGAL::Gps_default_dcel` +\cgalHasModelsBegin CGAL::Gps_default_dcel +\cgalHasModelsEnd \sa `GeneralPolygonSetDcelFace` \sa `GeneralPolygonSetDcelHalfedge` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h index e33f52f2219..029f24e7b3f 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h @@ -9,7 +9,8 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelFace} -\cgalHasModel `CGAL::Gps_face_base` +\cgalHasModelsBegin CGAL::Gps_face_base +\cgalHasModelsEnd \sa `ArrangementDcel` \sa `ArrangementDcelVertex` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h index 7334559a7ef..900f5237229 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h @@ -8,7 +8,8 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelHalfedge} -\cgalHasModel `CGAL::Gps_face_halfedge` +\cgalHasModelsBegin CGAL::Gps_face_halfedge +\cgalHasModelsEnd \sa `ArrangementDcel` \sa `ArrangementDcelVertex` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h index 99001c39f1c..5271a780744 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h @@ -13,9 +13,10 @@ types. \cgalRefines{ArrangementDirectionalXMonotoneTraits_2} -\cgalHasModel `CGAL::Gps_segment_traits_2` -\cgalHasModel `CGAL::Gps_circle_segment_traits_2` -\cgalHasModel `CGAL::Gps_traits_2` +\cgalHasModelsBegin CGAL::Gps_segment_traits_2 +\cgalHasModels CGAL::Gps_circle_segment_traits_2 +\cgalHasModels CGAL::Gps_traits_2 +\cgalHasModelsEnd \sa `ArrangementDirectionalXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h index 2a46c3470bd..d9103ae6839 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h @@ -16,7 +16,8 @@ accordingly. Only counterclockwise oriented polygons are valid operands of Boolean set-operations. General polygon that represent holes must be clockwise oriented. -\cgalHasModel `CGAL::General_polygon_2` +\cgalHasModelsBegin CGAL::General_polygon_2 +\cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h index 842290bb47f..c9d62f6cef6 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h @@ -9,7 +9,8 @@ A model of this concept represents a general polygon with holes. \cgalGeneralizes `GeneralPolygonWithHoles_2` -\cgalHasModel `GeneralPolygonSetTraits_2::Polygon_with_holes2` +\cgalHasModelsBegin GeneralPolygonSetTraits_2::Polygon_with_holes2 +\cgalHasModelsEnd \sa `GeneralPolygonWithHoles_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h index 99324d14227..a9999735b0e 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h @@ -9,8 +9,9 @@ A model of this concept represents a simple general polygon. \cgalGeneralizes `GeneralPolygon_2` -\cgalHasModel `GeneralPolygonSetTraits_2::Polygon_2` -\cgalHasModel `CGAL::Polygon_2` +\cgalHasModelsBegin GeneralPolygonSetTraits_2::Polygon_2 +\cgalHasModels CGAL::Polygon_2 +\cgalHasModelsEnd \sa `GeneralPolygon_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h index d026e62b587..05721090917 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h @@ -8,9 +8,10 @@ This concept defines the requirements for traits classes of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Approximate_min_ellipsoid_d_traits_2` -\cgalHasModel `CGAL::Approximate_min_ellipsoid_d_traits_3` -\cgalHasModel `CGAL::Approximate_min_ellipsoid_d_traits_d` +\cgalHasModelsBegin CGAL::Approximate_min_ellipsoid_d_traits_2 +\cgalHasModels CGAL::Approximate_min_ellipsoid_d_traits_3 +\cgalHasModels CGAL::Approximate_min_ellipsoid_d_traits_d +\cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h index e593f73cb76..71cb832881e 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h @@ -6,7 +6,8 @@ This concept defines the requirements for traits classes of `CGAL::Min_circle_2`. -\cgalHasModel `CGAL::Min_circle_2_traits_2` +\cgalHasModelsBegin CGAL::Min_circle_2_traits_2 +\cgalHasModelsEnd \sa `CGAL::Min_circle_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h index f4d480a00ba..d6cfac02a1f 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h @@ -6,7 +6,8 @@ This concept defines the requirements for traits classes of `CGAL::Min_ellipse_2`. -\cgalHasModel `CGAL::Min_ellipse_2_traits_2` +\cgalHasModelsBegin CGAL::Min_ellipse_2_traits_2 +\cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h index be4ba5f5a2d..17da54b7774 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h @@ -8,7 +8,8 @@ needed to compute minimum enclosing quadrilaterals of a planar point set using the functions `min_rectangle_2()`, `min_parallelogram_2()` and `min_strip_2()`. -\cgalHasModel `CGAL::Min_quadrilateral_default_traits_2` +\cgalHasModelsBegin CGAL::Min_quadrilateral_default_traits_2 +\cgalHasModelsEnd \sa `CGAL::min_rectangle_2()` \sa `CGAL::min_parallelogram_2()` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h index bbf1b33c2e9..ddd404f13c6 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h @@ -6,9 +6,10 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional min sphere and min annulus algorithms. -\cgalHasModel `CGAL::Min_sphere_annulus_d_traits_2` -\cgalHasModel `CGAL::Min_sphere_annulus_d_traits_3` -\cgalHasModel `CGAL::Min_sphere_annulus_d_traits_d` +\cgalHasModelsBegin CGAL::Min_sphere_annulus_d_traits_2 +\cgalHasModels CGAL::Min_sphere_annulus_d_traits_3 +\cgalHasModels CGAL::Min_sphere_annulus_d_traits_d +\cgalHasModelsEnd \sa `CGAL::Min_sphere_d` \sa `CGAL::Min_annulus_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h index 49b32647f3c..163cc679065 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h @@ -6,13 +6,13 @@ A model of concept `MinSphereOfSpheresTraits` must provide the following constants, types, predicates and operations. -\cgalHasModel `CGAL::Min_sphere_of_spheres_d_traits_2` -\cgalHasModel `CGAL::Min_sphere_of_spheres_d_traits_3` -\cgalHasModel `CGAL::Min_sphere_of_spheres_d_traits_d` - -\cgalHasModel `CGAL::Min_sphere_of_points_d_traits_2` -\cgalHasModel `CGAL::Min_sphere_of_points_d_traits_3` -\cgalHasModel `CGAL::Min_sphere_of_points_d_traits_d` +\cgalHasModelsBegin CGAL::Min_sphere_of_spheres_d_traits_2 +\cgalHasModels CGAL::Min_sphere_of_spheres_d_traits_3 +\cgalHasModels CGAL::Min_sphere_of_spheres_d_traits_d +\cgalHasModels CGAL::Min_sphere_of_points_d_traits_2 +\cgalHasModels CGAL::Min_sphere_of_points_d_traits_3 +\cgalHasModels CGAL::Min_sphere_of_points_d_traits_d +\cgalHasModelsEnd */ class MinSphereOfSpheresTraits { diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h index 9c0727d44bd..2c9c9ba44d5 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h @@ -7,7 +7,8 @@ The concept `RectangularPCenterTraits_2` defines types and operations needed to compute rectilinear \f$ p\f$-centers of a planar point set using the function `CGAL::rectangular_p_center_2()`. -\cgalHasModel `CGAL::Rectangular_p_center_default_traits_2` +\cgalHasModelsBegin CGAL::Rectangular_p_center_default_traits_2 +\cgalHasModelsEnd \sa `CGAL::rectangular_p_center_2()` diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h index 7d28f370fc8..594f4c94ebb 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h @@ -10,8 +10,9 @@ the dimension, the `id`-number, and the boundaries of the box. \cgalRefines{Assignable} -\cgalHasModel CGAL::Box_intersection_d::Box_d -\cgalHasModel CGAL::Box_intersection_d::Box_with_handle_d +\cgalHasModelsBegin CGAL::Box_intersection_d::Box_d +\cgalHasModels CGAL::Box_intersection_d::Box_with_handle_d +\cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink \sa \link PkgBoxIntersectionD_box_self_intersection_d `CGAL::box_self_intersection_d()` \endlink diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h index 03300e29d64..cf6dfcb546d 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h @@ -9,7 +9,8 @@ the boxes manipulated in these algorithms. \cgalRefines{Assignable,DefaultConstructible} -\cgalHasModel CGAL::Box_intersection_d::Box_traits_d +\cgalHasModelsBegin CGAL::Box_intersection_d::Box_traits_d +\cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink \sa \link PkgBoxIntersectionD_box_self_intersection_d `CGAL::box_self_intersection_d()` \endlink diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h index 322134ed592..f5a18c37220 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h @@ -11,7 +11,8 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel CGAL::Polynomial_for_circles_2_2 +\cgalHasModelsBegin CGAL::Polynomial_for_circles_2_2 +\cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h index a017fef7163..b01eedc5a49 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h @@ -9,7 +9,8 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel CGAL::Polynomial_1_2 +\cgalHasModelsBegin CGAL::Polynomial_1_2 +\cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h index 075d69941f9..d1771575964 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h @@ -7,7 +7,8 @@ Concept to represent the roots of a system of two equations of degree 2 in two variables `x` and `y` that are models of concept `AlgebraicKernelForCircles::PolynomialForCircles_2_2` -\cgalHasModel CGAL::Root_for_circles_2_2 +\cgalHasModelsBegin CGAL::Root_for_circles_2_2 +\cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h index 79dbf30fe5a..e0d50ab1b57 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h @@ -7,7 +7,8 @@ The `AlgebraicKernelForCircles` concept is meant to provide the curved kernel with all the algebraic functionalities required for the manipulation of circular arcs. -\cgalHasModel `CGAL::Algebraic_kernel_for_circles_2_2` +\cgalHasModelsBegin CGAL::Algebraic_kernel_for_circles_2_2 +\cgalHasModelsEnd \sa `CircularKernel` \sa `CGAL::Circular_kernel_2` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h index add345ad6ff..603867502f9 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h @@ -7,7 +7,8 @@ Concept for points on circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Circular_arc_point_2` +\cgalHasModelsBegin CGAL::Circular_arc_point_2 +\cgalHasModelsEnd */ class CircularKernel::CircularArcPoint_2 { public: diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h index 34f8cef50e2..bd5586d0035 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h @@ -7,7 +7,8 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Circular_arc_2` +\cgalHasModelsBegin CGAL::Circular_arc_2 +\cgalHasModelsEnd */ diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h index 0400dd4bade..7f82890c16a 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h @@ -9,7 +9,8 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Line_arc_2` +\cgalHasModelsBegin CGAL::Line_arc_2 +\cgalHasModelsEnd */ class CircularKernel::LineArc_2 { diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h index 681d46d9679..a151ed89191 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h @@ -5,8 +5,9 @@ \cgalRefines{Kernel} -\cgalHasModel `CGAL::Circular_kernel_2` -\cgalHasModel `CGAL::Exact_circular_kernel_2` +\cgalHasModelsBegin CGAL::Circular_kernel_2 +\cgalHasModels CGAL::Exact_circular_kernel_2 +\cgalHasModelsEnd \sa `Kernel` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h index 54db59349fc..0dbd299b9cd 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h @@ -11,7 +11,8 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel CGAL::Polynomial_for_spheres_2_3 +\cgalHasModelsBegin GAL::Polynomial_for_spheres_2_ +\cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h index 023c13ebc20..8cf947c04ba 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h @@ -9,7 +9,8 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel CGAL::Polynomial_1_3 +\cgalHasModelsBegin CGAL::Polynomial_1_3 +\cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h index df2b2ee627b..70866c01e37 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h @@ -8,7 +8,8 @@ capable of storing equations of lines. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel CGAL::Polynomials_for_lines_3 +\cgalHasModelsBegin CGAL::Polynomials_for_lines_3 +\cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h index 61ac0d14a8b..2754b94e091 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h @@ -7,7 +7,8 @@ Concept to represent the roots of a system of three equations of degree 2 in three variables `x`, `y` and `z` that are models of concept `AlgebraicKernelForSpheres::PolynomialForSpheres_2_3`. -\cgalHasModel CGAL::Root_for_spheres_2_3 +\cgalHasModelsBegin CGAL::Root_for_spheres_2_3 +\cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h index 58ab8c24ff0..e83eca8300d 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h @@ -7,7 +7,8 @@ The `AlgebraicKernelForSpheres` concept is meant to provide the curved kernel with all the algebraic functionalities required for the manipulation of spheres, circles, and circular arcs in 3D. -\cgalHasModel CGAL::Algebraic_kernel_for_spheres_2_3 +\cgalHasModelsBegin CGAL::Algebraic_kernel_for_spheres_2_3 +\cgalHasModelsEnd \sa `SphericalKernel` \sa `CGAL::Spherical_kernel_3` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h index 4a4494bc216..81128f2844e 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h @@ -7,7 +7,8 @@ Concept for points on spheres, circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Circular_arc_point_3` +\cgalHasModelsBegin CGAL::Circular_arc_point_3 +\cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h index ffefeb6aefb..5a8498f2824 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h @@ -7,7 +7,8 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Circular_arc_3` +\cgalHasModelsBegin CGAL::Circular_arc_3 +\cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h index 5ea1f9aed8e..07946ba0f14 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h @@ -9,7 +9,8 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Line_arc_3` +\cgalHasModelsBegin CGAL::Line_arc_3 +\cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h index 950115d7c73..3bafc8659d0 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h @@ -5,8 +5,9 @@ \cgalRefines{Kernel} -\cgalHasModel `CGAL::Spherical_kernel_3` -\cgalHasModel CGAL::Exact_spherical_kernel_3 +\cgalHasModelsBegin CGAL::Spherical_kernel_3 +\cgalHasModels CGAL::Exact_spherical_kernel_3 +\cgalHasModelsEnd \sa `Kernel` diff --git a/Circulator/doc/Circulator/Concepts/ConstHandle.h b/Circulator/doc/Circulator/Concepts/ConstHandle.h index 3552dc5cb29..9ff3bea6b33 100644 --- a/Circulator/doc/Circulator/Concepts/ConstHandle.h +++ b/Circulator/doc/Circulator/Concepts/ConstHandle.h @@ -7,7 +7,8 @@ A constant handle. Refer to the `Handle` concept for more details. \cgalRefines{Descriptor} -\cgalHasModel const T* (const pointers) +\cgalHasModelsBegin const T* (const pointers) +\cgalHasModelsEnd \sa `Handle` diff --git a/Circulator/doc/Circulator/Concepts/ConstRange.h b/Circulator/doc/Circulator/Concepts/ConstRange.h index b690c3d97d3..643dc47c83b 100644 --- a/Circulator/doc/Circulator/Concepts/ConstRange.h +++ b/Circulator/doc/Circulator/Concepts/ConstRange.h @@ -7,8 +7,7 @@ A constant iterator range. Refer to the `Range` concept for more details. \cgalRefinesBare{Boost's %Range concept} -\cgalHasModel STL containers -\cgalHasModel `boost::iterator_range` +\cgalHasModelsBare{STL containers,`boost::iterator_range`} \sa `Range` diff --git a/Circulator/doc/Circulator/Concepts/Handle.h b/Circulator/doc/Circulator/Concepts/Handle.h index 748ab737efb..a5fade1d46f 100644 --- a/Circulator/doc/Circulator/Concepts/Handle.h +++ b/Circulator/doc/Circulator/Concepts/Handle.h @@ -23,10 +23,11 @@ operator is concerned (this serves the same purpose as NULL for pointers). (Note that this is not a generally supported feature of iterators of standard containers.) -\cgalHasModel T* (pointer) -\cgalHasModel const T* (const pointers) -\cgalHasModel `Iterator` -\cgalHasModel `Circulator` +\cgalHasModelsBegin T* (pointer) +\cgalHasModels const T* (const pointers) +\cgalHasModels Iterator +\cgalHasModels Circulator +\cgalHasModelsEnd */ class Handle { public: diff --git a/Circulator/doc/Circulator/Concepts/Range.h b/Circulator/doc/Circulator/Concepts/Range.h index 2da31fa5940..ef6cfd56d58 100644 --- a/Circulator/doc/Circulator/Concepts/Range.h +++ b/Circulator/doc/Circulator/Concepts/Range.h @@ -31,7 +31,7 @@ difference with iterators which are typically passed by value. \cgalRefinesBare{ConstRange,Boost's %Range concept} -\cgalHasModel STL containers +\cgalHasModelsBare{STL containers} */ diff --git a/Classification/doc/Classification/Concepts/Classifier.h b/Classification/doc/Classification/Concepts/Classifier.h index ca1f3cefc97..9a350599794 100644 --- a/Classification/doc/Classification/Concepts/Classifier.h +++ b/Classification/doc/Classification/Concepts/Classifier.h @@ -12,9 +12,10 @@ Concept describing a classifier used by classification functions (see `CGAL::Classification::classify()`, `CGAL::Classification::classify_with_local_smoothing()` and `CGAL::Classification::classify_with_graphcut()`). -\cgalHasModel `CGAL::Classification::Sum_of_weighted_features_classifier` -\cgalHasModel `CGAL::Classification::ETHZ::Random_forest_classifier` -\cgalHasModel `CGAL::Classification::OpenCV::Random_forest_classifier` +\cgalHasModelsBegin CGAL::Classification::Sum_of_weighted_features_classifier +\cgalHasModels CGAL::Classification::ETHZ::Random_forest_classifier +\cgalHasModels CGAL::Classification::OpenCV::Random_forest_classifier +\cgalHasModelsEnd */ class Classifier diff --git a/Classification/doc/Classification/Concepts/NeighborQuery.h b/Classification/doc/Classification/Concepts/NeighborQuery.h index eeed7fa074c..99aeb76cb2f 100644 --- a/Classification/doc/Classification/Concepts/NeighborQuery.h +++ b/Classification/doc/Classification/Concepts/NeighborQuery.h @@ -10,10 +10,11 @@ namespace Classification Concept describing a neighbor query used for classification. -\cgalHasModel `CGAL::Classification::Point_set_neighborhood::K_neighbor_query` -\cgalHasModel `CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query` -\cgalHasModel `CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query` -\cgalHasModel `CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query` +\cgalHasModelsBegin CGAL::Classification::Point_set_neighborhood::K_neighbor_query +\cgalHasModels CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query +\cgalHasModels CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query +\cgalHasModels CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query +\cgalHasModelsEnd */ class NeighborQuery diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h index cce3235390e..ad331c7bc22 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h @@ -5,7 +5,7 @@ The concept `CellAttribute` represents a non void attribute associated with a cell of a generic map. It can keep a descriptor to one dart of its associated cell, and can contain any information. -\cgalHasModel \link CGAL::Cell_attribute `CGAL::Cell_attribute`\endlink +\cgalHasModelsBare{\link CGAL::Cell_attribute `CGAL::Cell_attribute`\endlink} \sa `GenericMap` \sa `GenericMapItems` diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h index 03f492d1b08..ecf28bda596 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h @@ -6,7 +6,7 @@ The concept `CombinatorialMap` defines a d-dimensional combinatorial map. \cgalRefines{GenericMap} -\cgalHasModel \link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink +\cgalHasModelsBare{\link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink} For a combinatorial map, the function \link GenericMap::next `next`\endlink is equal to \f$ \beta_1\f$, \link GenericMap::previous `previous`\endlink is equal to \f$ \beta_0\f$ and the function \link GenericMap::opposite `opposite`\endlink is equal to \f$ \beta_i\f$. */ diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h index ae828e3cdf0..87113f9aa21 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h @@ -8,8 +8,8 @@ The concept `GenericMap` defines a d-dimensional generic map. This concep A generic map has a set of darts D, and functions \f$ f_0\f$,\f$ \ldots\f$,\f$ f_{d}\f$ that link these darts between them. -\cgalHasModel \link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink -\cgalHasModel \link CGAL::Generalized_map `CGAL::Generalized_map`\endlink +\cgalHasModelsBare{\link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink\n + \link CGAL::Generalized_map `CGAL::Generalized_map`\endlink} \sa `CombinatorialMap` \sa `GeneralizedMap` diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h index afd744baab4..6fd24033a72 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h @@ -4,7 +4,7 @@ The concept `GenericMapItems` allows to customize a dD generic map by choosing the information associated with darts, by enabling and disabling some attributes, and by choosing to use indices or handles. For that, it defines an inner class template named \link GenericMapItems::Dart_wrapper `Dart_wrapper`\endlink, with one template parameter, `Map`, a model of the `GenericMap` concept. This inner class can define the two types `%Dart_info` and `%Attributes`. -\cgalHasModel \link CGAL::Generic_map_min_items `CGAL::Generic_map_min_items`\endlink +\cgalHasModelsBare{\link CGAL::Generic_map_min_items `CGAL::Generic_map_min_items`\endlink} \sa `GenericMap` diff --git a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h index 0bff4725d60..251e12f7fb9 100644 --- a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h @@ -9,12 +9,13 @@ primitives (objects and predicates) that the convex hull algorithms use. functions. The specific subset of these primitives required by each function is specified with each function. -\cgalHasModel `CGAL::Convex_hull_constructive_traits_2` -\cgalHasModel `CGAL::Convex_hull_traits_2` -\cgalHasModel `CGAL::Convex_hull_traits_adapter_2` -\cgalHasModel `CGAL::Projection_traits_xy_3` -\cgalHasModel `CGAL::Projection_traits_yz_3` -\cgalHasModel `CGAL::Projection_traits_xz_3` +\cgalHasModelsBegin CGAL::Convex_hull_constructive_traits_2 +\cgalHasModels CGAL::Convex_hull_traits_2 +\cgalHasModels CGAL::Convex_hull_traits_adapter_2 +\cgalHasModels CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd */ diff --git a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h index 7efcfcb9e93..711efc4d8aa 100644 --- a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h @@ -4,8 +4,9 @@ Requirements of the traits class of the function `CGAL::convex_hull_3()`. -\cgalHasModel `CGAL::Convex_hull_traits_3` -\cgalHasModel `CGAL::Extreme_points_traits_adapter_3` +\cgalHasModelsBegin CGAL::Convex_hull_traits_3 +\cgalHasModels CGAL::Extreme_points_traits_adapter_3 +\cgalHasModelsEnd */ class ConvexHullTraits_3 { diff --git a/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h b/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h index d69567d6102..6f3bad1286e 100644 --- a/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h @@ -6,8 +6,8 @@ Requirements of the traits class used by the function `CGAL::is_strongly_convex_3()`, which is used for postcondition checking by `CGAL::convex_hull_3()`. -\cgalHasModel `CGAL::Convex_hull_traits_3` -\cgalHasModel All models of `Kernel` +\cgalHasModelsBareBegin{All models of `Kernel`} CGAL::Convex_hull_traits_3 +\cgalHasModelsEnd \sa `ConvexHullTraits_3` \sa `CGAL::is_strongly_convex_3()` diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h index abd9c2928ec..78e06df722d 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h @@ -7,9 +7,10 @@ Requirements of the traits class to be used with the class `CGAL::Convex_hull_d`. -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` -\cgalHasModel `CGAL::Convex_hull_d_traits_3` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModels CGAL::Convex_hull_d_traits_3 +\cgalHasModelsEnd */ class ConvexHullTraits_d { diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h index e798f331db4..23352fbe2e6 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h @@ -7,8 +7,9 @@ Requirements of the second traits class to be used with the class `CGAL::Delaunay_d`. -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsEnd */ class DelaunayLiftedTraits_d { diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h index f2465c575fe..b8e91a96aa9 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h @@ -7,8 +7,9 @@ Requirements of the first traits class to be used with the class `CGAL::Delaunay_d`. -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsEnd */ diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index 7486ae587d7..97f12d55731 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -136,18 +136,19 @@ ALIASES = "cgal=%CGAL" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ - "cgalModelsHeader=Is Model Of" \ + "cgalModelsHeader=Is model of" \ "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ - "cgalModelsBare{2}=
@cgalModelsHeader
@c \1
\2
" \ + "cgalModelsBare{2}=
@cgalModelsHeader
\1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ - "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relationships\"" \ - "cgalHasModelsHeader=Has Models" \ + "cgalHasModelsHeader=Has models" \ "cgalHasModelsBegin=
@cgalHasModelsHeader
`" \ "cgalHasModels=`
`" \ "cgalHasModelsEnd=`
" \ - "cgalHasModelsBare{1}=
@cgalHasModels
\1
" \ + "cgalHasModelsBare{1}=
@cgalHasModelsHeader
\1
" \ + "cgalHasModelsBare{2}=
@cgalHasModelsHeader
\1
\2
" \ + "cgalHasModelsBareBegin{1}=
@cgalHasModelsHeader
\1
`" \ "cgalDebugBegin=\htmlonly
Debugging Support
\endhtmlonly \n" \ "cgalDebugEnd=\htmlonly
\endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 3813f3748da..3a25e3c92be 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -145,18 +145,19 @@ ALIASES = "cgal=%CGAL" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ - "cgalModelsHeader=Is Model Of" \ + "cgalModelsHeader=Is model of" \ "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ - "cgalModelsBare{2}=
@cgalModelsHeader
@c \1
\2
" \ + "cgalModelsBare{2}=
@cgalModelsHeader
\1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ - "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relationships\"" \ - "cgalHasModelsHeader=Has Models" \ + "cgalHasModelsHeader=Has models" \ "cgalHasModelsBegin=
@cgalHasModelsHeader
`" \ "cgalHasModels=`
`" \ "cgalHasModelsEnd=`
" \ "cgalHasModelsBare{1}=
@cgalHasModelsHeader
\1
" \ + "cgalHasModelsBare{2}=
@cgalHasModelsHeader
\1
\2
" \ + "cgalHasModelsBareBegin{1}=
@cgalHasModelsHeader
\1
`" \ "cgalDebugBegin=\htmlonly[block]
Debugging Support
\endhtmlonly ^^" \ "cgalDebugEnd=\htmlonly[block]
\endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ diff --git a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h index 47b1f729035..66b3c1f3477 100644 --- a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h +++ b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h @@ -16,10 +16,11 @@ Note however, that these operations usually involve the projection of \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModel `CGAL::Env_triangle_traits_3` -\cgalHasModel `CGAL::Env_sphere_traits_3` -\cgalHasModel `CGAL::Env_plane_traits_3` -\cgalHasModel `CGAL::Env_surface_data_traits_3` +\cgalHasModelsBegin CGAL::Env_triangle_traits_3 +\cgalHasModels CGAL::Env_sphere_traits_3 +\cgalHasModels CGAL::Env_plane_traits_3 +\cgalHasModels CGAL::Env_surface_data_traits_3 +\cgalHasModelsEnd */ diff --git a/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h b/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h index 91c430a9d91..f43d4b8944d 100644 --- a/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h +++ b/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h @@ -6,7 +6,7 @@ The concept `GeneralizedMap` defines a d-dimensional generalized map. \cgalRefines{GenericMap} -\cgalHasModel \link CGAL::Generalized_map `CGAL::Generalized_map`\endlink +\cgalHasModelsBare{\link CGAL::Generalized_map `CGAL::Generalized_map`\endlink} For a generalized map, the function \link GenericMap::next `next`\endlink is equal to \f$ \alpha_1\circ\alpha_0\f$, \link GenericMap::previous `previous`\endlink is equal to \f$ \alpha_0\circ\alpha_1\f$ and the function \link GenericMap::opposite `opposite`\endlink is equal to \f$ \alpha_i\circ\alpha_0\f$. */ diff --git a/Generator/doc/Generator/Concepts/CombinationElement.h b/Generator/doc/Generator/Concepts/CombinationElement.h index fc9712bb25c..8e4747e0839 100644 --- a/Generator/doc/Generator/Concepts/CombinationElement.h +++ b/Generator/doc/Generator/Concepts/CombinationElement.h @@ -4,9 +4,9 @@ A CombinationElement can be used as template parameter for the class `Combination_enumerator`. -\cgalHasModel Any integer type (`char`, `short`, `int`, `long`, etc.) -\cgalHasModel Pointers -\cgalHasModel Random access iterators +\cgalHasModelsBare{Any integer type (`char`, `short`, `int`, `long`, etc.)\n + Pointers\n + Random access iterators} \sa `CGAL::Combination_enumerator` diff --git a/Generator/doc/Generator/Concepts/PointGenerator.h b/Generator/doc/Generator/Concepts/PointGenerator.h index a17946b0cd6..2f96e53167d 100644 --- a/Generator/doc/Generator/Concepts/PointGenerator.h +++ b/Generator/doc/Generator/Concepts/PointGenerator.h @@ -5,20 +5,21 @@ The concept `PointGenerator` defines the requirements for a point generator, which can be used in places where input iterators are called for. -\cgalHasModel `CGAL::Random_points_in_ball_d` -\cgalHasModel `CGAL::Random_points_in_disc_2` -\cgalHasModel `CGAL::Random_points_in_square_2` -\cgalHasModel `CGAL::Random_points_in_triangle_2` -\cgalHasModel `CGAL::Random_points_on_circle_2` -\cgalHasModel `CGAL::Random_points_on_segment_2` -\cgalHasModel `CGAL::Random_points_on_square_2` -\cgalHasModel `CGAL::Random_points_in_cube_3` -\cgalHasModel `CGAL::Random_points_in_cube_d` -\cgalHasModel `CGAL::Random_points_in_sphere_3` -\cgalHasModel `CGAL::Random_points_in_triangle_3` -\cgalHasModel `CGAL::Random_points_in_tetrahedron_3` -\cgalHasModel `CGAL::Random_points_on_sphere_3` -\cgalHasModel `CGAL::Random_points_on_sphere_d` +\cgalHasModelsBegin CGAL::Random_points_in_ball_d +\cgalHasModels CGAL::Random_points_in_disc_2 +\cgalHasModels CGAL::Random_points_in_square_2 +\cgalHasModels CGAL::Random_points_in_triangle_2 +\cgalHasModels CGAL::Random_points_on_circle_2 +\cgalHasModels CGAL::Random_points_on_segment_2 +\cgalHasModels CGAL::Random_points_on_square_2 +\cgalHasModels CGAL::Random_points_in_cube_3 +\cgalHasModels CGAL::Random_points_in_cube_d +\cgalHasModels CGAL::Random_points_in_sphere_3 +\cgalHasModels CGAL::Random_points_in_triangle_3 +\cgalHasModels CGAL::Random_points_in_tetrahedron_3 +\cgalHasModels CGAL::Random_points_on_sphere_3 +\cgalHasModels CGAL::Random_points_on_sphere_d +\cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h b/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h index 3dbf4632cb9..424119d49b9 100644 --- a/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h @@ -5,7 +5,7 @@ The concept `RandomConvexHullTraits_2` describes the requirements for the traits class used by the function `random_convex_hull_in_disc_2()`. -\cgalHasModel \cgal kernels. +\cgalHasModelsBare{All models of the concept `Kernel`} \cgalHeading{Operations} diff --git a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h index f796452dbeb..630b93345d1 100644 --- a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h @@ -5,7 +5,8 @@ The concept `RandomConvexSetTraits_2` describes the requirements of the traits class for the function `random_convex_set_2()`. -\cgalHasModel `CGAL::Random_convex_set_traits_2` +\cgalHasModelsBegin CGAL::Random_convex_set_traits_2 +\cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h b/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h index c0c512b6296..be8badeb641 100644 --- a/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h @@ -5,7 +5,7 @@ The concept `RandomPolygonTraits_2` describes the requirements for the traits class used by the function `random_polygon_2()`. -\cgalHasModel \cgal kernels. +\cgalHasModelsBare{All models of the concept `Kernel`} \cgalHeading{Operations} diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h index 8fcb7edd26e..227ae11cc40 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h @@ -67,9 +67,10 @@ allocators internally. A default argument is mandatory for from the `` header file can be used as default allocator. -\cgalHasModel CGAL::HalfedgeDS_default -\cgalHasModel CGAL::HalfedgeDS_list -\cgalHasModel CGAL::HalfedgeDS_vector +\cgalHasModelsBegin CGAL::HalfedgeDS_default +\cgalHasModels CGAL::HalfedgeDS_list +\cgalHasModels CGAL::HalfedgeDS_vector +\cgalHasModelsEnd \sa `HalfedgeDSItems` \sa `CGAL::Polyhedron_3` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h index 5a405bb7770..cacaac7459a 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h @@ -23,8 +23,9 @@ can be bypassed by the user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} -\cgalHasModel `CGAL::HalfedgeDS_face_base` -\cgalHasModel `CGAL::HalfedgeDS_face_min_base` +\cgalHasModelsBegin CGAL::HalfedgeDS_face_base +\cgalHasModels CGAL::HalfedgeDS_face_min_base +\cgalHasModelsEnd \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h index f4d3652e4e2..5dae57935e8 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h @@ -33,8 +33,9 @@ more protection is provided for the `set_opposite()` member function. The base class `Base_base` provides access to it. (The protection could be bypassed also by an user, but not by accident.) -\cgalHasModel ::CGAL::HalfedgeDS_halfedge_base -\cgalHasModel ::CGAL::HalfedgeDS_halfedge_min_base +\cgalHasModelsBegin ::CGAL::HalfedgeDS_halfedge_base +\cgalHasModels ::CGAL::HalfedgeDS_halfedge_min_base +\cgalHasModelsEnd \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h index 16d45020f90..51a99908bc0 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h @@ -16,9 +16,10 @@ and `Face` respectively. The requirements on these types are described on the manual pages of the concepts `HalfedgeDSVertex`, `HalfedgeDSHalfedge`, and `HalfedgeDSFace` respectively. -\cgalHasModel CGAL::HalfedgeDS_min_items -\cgalHasModel CGAL::HalfedgeDS_items_2 -\cgalHasModel CGAL::Polyhedron_items_3 +\cgalHasModelsBegin CGAL::HalfedgeDS_min_items +\cgalHasModels CGAL::HalfedgeDS_items_2 +\cgalHasModels CGAL::Polyhedron_items_3 +\cgalHasModelsEnd \sa `HalfedgeDS` \sa `HalfedgeDSVertex` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h index 172b6b933f1..38f5afab43c 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h @@ -23,8 +23,9 @@ could be bypassed by an user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} -\cgalHasModel `CGAL::HalfedgeDS_vertex_base` -\cgalHasModel `CGAL::HalfedgeDS_vertex_min_base` +\cgalHasModelsBegin CGAL::HalfedgeDS_vertex_base +\cgalHasModels CGAL::HalfedgeDS_vertex_min_base +\cgalHasModelsEnd \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h b/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h index c7f87971225..cf4b6f8d9d7 100644 --- a/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h +++ b/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h @@ -7,7 +7,7 @@ The concept `HeatMethodTraits_3` describes the types, predicates, and constructions required by the traits class parameter of `CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3`. -\cgalHasModel All the \cgal kernels +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} */ diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h index 5d2d5a39e3e..3299b6f89e3 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h @@ -16,8 +16,9 @@ constructions on these objects. This concept refines `DelaunayTriangulationTraits_2` because the class `CGAL::Hyperbolic_Delaunay_triangulation_2` internally relies on the class `CGAL::Delaunay_triangulation_2`. -\cgalHasModel `CGAL::Hyperbolic_Delaunay_triangulation_traits_2` -\cgalHasModel `CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2` +\cgalHasModelsBegin CGAL::Hyperbolic_Delaunay_triangulation_traits_2 +\cgalHasModels CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2 +\cgalHasModelsEnd */ diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h index 368630cc55b..9f57d33da11 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h @@ -41,7 +41,8 @@ This concept provides an interface for the functionality needed in faces to comp Delaunay triangulations in the hyperbolic plane. The function `tds_data()` is used internally by the triangulation class during the insertion of points in the triangulation. -\cgalHasModel `CGAL::Hyperbolic_triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Hyperbolic_triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `HyperbolicFaceData` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h index baa5e8e86b7..f6de632e04c 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h @@ -15,8 +15,9 @@ inscribed into a given convex polygon. precondition checking only. Therefore, they need not to be specified, in case that precondition checking is disabled. -\cgalHasModel `CGAL::Extremal_polygon_area_traits_2` -\cgalHasModel `CGAL::Extremal_polygon_perimeter_traits_2` +\cgalHasModelsBegin CGAL::Extremal_polygon_area_traits_2 +\cgalHasModels CGAL::Extremal_polygon_perimeter_traits_2 +\cgalHasModelsEnd \sa `CGAL::maximum_area_inscribed_k_gon_2()` \sa `CGAL::maximum_perimeter_inscribed_k_gon_2()` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h index 2875e0a1aba..d3e1374d771 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h @@ -10,8 +10,9 @@ This concept provides the types of the geometric primitives used in this class and some function object types for the required predicates on those primitives. -\cgalHasModel `CGAL::Cartesian` -\cgalHasModel `CGAL::Homogeneous` +\cgalHasModelsBegin CGAL::Cartesian +\cgalHasModels CGAL::Homogeneous +\cgalHasModelsEnd \sa `CGAL::Largest_empty_iso_rectangle_2` diff --git a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h index 8ce13fd4e1d..4cb824c031b 100644 --- a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h @@ -7,7 +7,8 @@ traits class that defines the primitives used by the algorithm. The concept `GradientFittingTraits` defines this common set of requirements. -\cgalHasModel `CGAL::Interpolation_gradient_fitting_traits_2` +\cgalHasModelsBegin CGAL::Interpolation_gradient_fitting_traits_2 +\cgalHasModelsEnd \sa `InterpolationTraits` \sa `CGAL::Interpolation_traits_2` diff --git a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h index 03be7b11a8d..a07eb526d3c 100644 --- a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h @@ -7,8 +7,9 @@ Most interpolation functions are parameterized by a traits class that defines the primitives used in the interpolation algorithms. The concept `InterpolationTraits` defines this common set of requirements. -\cgalHasModel `CGAL::Interpolation_traits_2` -\cgalHasModel `CGAL::Interpolation_gradient_fitting_traits_2` +\cgalHasModelsBegin CGAL::Interpolation_traits_2 +\cgalHasModels CGAL::Interpolation_gradient_fitting_traits_2 +\cgalHasModelsEnd \sa `GradientFittingTraits` \sa `CGAL::sibson_c1_interpolation()` diff --git a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h index 254de6b64cd..1bc267a684e 100644 --- a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h +++ b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h @@ -9,8 +9,9 @@ The concept does not specify, whether the interval is open or closed. It is up to the implementer of a model for this concept to define that. -\cgalHasModel `CGAL::Interval_skip_list_interval` -\cgalHasModel `CGAL::Level_interval` +\cgalHasModelsBegin CGAL::Interval_skip_list_interval +\cgalHasModels CGAL::Level_interval +\cgalHasModelsEnd \sa `Interval_skip_list` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h index 041a8eb9feb..9276d91c6b3 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h @@ -13,8 +13,9 @@ the class Only constructors (from 3 scalars and copy constructors) and access methods to coordinates `x()`, `y()`, `z()` are needed. -\cgalHasModel `CGAL::Cartesian` -\cgalHasModel `CGAL::Simple_cartesian` +\cgalHasModelsBegin CGAL::Cartesian +\cgalHasModels CGAL::Simple_cartesian +\cgalHasModelsEnd \sa `LocalKernel` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h index ba13fc2daad..75629fb37f1 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h @@ -29,8 +29,9 @@ Only constructors (from 3 scalars and copy constructors) and access methods to coordinates `x()`, `y()`, `z()` are needed for the point and vector types. -\cgalHasModel `CGAL::Cartesian` -\cgalHasModel `CGAL::Simple_cartesian` +\cgalHasModelsBegin CGAL::Cartesian +\cgalHasModels CGAL::Simple_cartesian +\cgalHasModelsEnd \sa `DataKernel` \sa `SvdTraits` diff --git a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h index d7fa271e560..a732c7891a3 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h +++ b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h @@ -8,7 +8,8 @@ namespace Kernel { \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Circle_2` + \cgalHasModelsBegin CGAL::Circle_2 + \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` \sa `Kernel::ComputeSquaredRadius_2` @@ -38,7 +39,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Circle_3` + \cgalHasModelsBegin CGAL::Circle_3 + \cgalHasModelsEnd \sa `Kernel::ComputeApproximateArea_3` \sa `Kernel::ComputeApproximateSquaredLength_3` @@ -67,7 +69,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Direction_2` + \cgalHasModels CGAL::Direction_2 + \cgalHasModelsEnd \sa `Kernel::CompareAngleWithXAxis_2` \sa `Kernel::ComputeDx_2` @@ -91,7 +94,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Direction_3` + \cgalHasModels CGAL::Direction_3 + \cgalHasModelsEnd \sa `Kernel::ConstructDirection_3` \sa `Kernel::ConstructOppositeDirection_3` @@ -111,7 +115,8 @@ A type representing isocuboids in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Iso_cuboid_3` +\cgalHasModelsBegin CGAL::Iso_cuboid_3 +\cgalHasModelsEnd \sa `Kernel::BoundedSide_3` \sa `Kernel::ComputeVolume_3` @@ -136,7 +141,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Iso_rectangle_2` + \cgalHasModels CGAL::Iso_rectangle_2 + \cgalHasModelsEnd \sa `Kernel::ConstructIsoRectangle_2` \sa `Kernel::ComputeXmin_2` @@ -168,7 +174,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Line_2` + \cgalHasModels CGAL::Line_2 + \cgalHasModelsEnd \sa `Kernel::CompareXAtY_2` \sa `Kernel::ComputeSquaredDistance_2` @@ -204,7 +211,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Line_3` + \cgalHasModels CGAL::Line_3 + \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` \sa `Kernel::ConstructDirection_3` @@ -235,7 +243,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Object` + \cgalHasModels CGAL::Object + \cgalHasModelsEnd \sa `Kernel::Assign_2` \sa `Kernel::ConstructObject_2` @@ -256,7 +265,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Object` + \cgalHasModels CGAL::Object + \cgalHasModelsEnd \sa `Kernel::Assign_3` \sa `Kernel::ConstructObject_3` @@ -275,7 +285,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Plane_3` + \cgalHasModels CGAL::Plane_3 + \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` \sa `Kernel::ConstructBaseVector_3` @@ -312,7 +323,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Point_2` + \cgalHasModels CGAL::Point_2 + \cgalHasModelsEnd \sa `Kernel::Angle_2` \sa `Kernel::AreOrderedAlongLine_2` @@ -371,7 +383,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Point_3` + \cgalHasModels CGAL::Point_3 + \cgalHasModelsEnd \sa `Kernel::Angle_3` \sa `Kernel::AreOrderedAlongLine_3` @@ -432,7 +445,8 @@ A type representing rays in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Ray_2` +\cgalHasModelsBegin CGAL::Ray_2 +\cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` \sa `Kernel::ComputeSquaredDistance_2` @@ -464,7 +478,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Ray_3` + \cgalHasModelsBegin CGAL::Ray_3 + \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` \sa `Kernel::ConstructDirection_3` @@ -492,7 +507,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Segment_2` + \cgalHasModelsBegin CGAL::Segment_2 + \cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` \sa `Kernel::ComputeSquaredDistance_2` @@ -526,7 +542,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Segment_3` + \cgalHasModelsBegin CGAL::Segment_3 + \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` \sa `Kernel::ComputeSquaredLength_3` @@ -556,7 +573,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Sphere_3` + \cgalHasModelsBegin CGAL::Sphere_3 + \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` \sa `Kernel::ComputeSquaredRadius_3` @@ -586,7 +604,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Tetrahedron_3` + \cgalHasModelsBegin CGAL::Tetrahedron_3 + \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` \sa `Kernel::ComputeVolume_3` @@ -617,7 +636,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Triangle_2` + \cgalHasModelsBegin CGAL::Triangle_2 + \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` \sa `Kernel::ComputeArea_2` @@ -650,7 +670,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Triangle_3` + \cgalHasModelsBegin CGAL::Triangle_3 + \cgalHasModelsEnd \sa `Kernel::ComputeSquaredArea_3` \sa `Kernel::ConstructCentroid_3` @@ -675,7 +696,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModel `CGAL::Vector_2` + \cgalHasModelsBegin CGAL::Vector_2 + \cgalHasModelsEnd \sa `Kernel::ComputeDeterminant_2` \sa `Kernel::ComputeScalarProduct_2` @@ -708,7 +730,8 @@ A type representing vectors in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Vector_3` +\cgalHasModelsBegin CGAL::Vector_3 +\cgalHasModelsEnd \sa `Kernel::CompareDihedralAngle_3` \sa `Kernel::ComputeDeterminant_3` @@ -744,7 +767,8 @@ A type representing weighted points in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Weighted_point_2` +\cgalHasModelsBegin CGAL::Weighted_point_2 +\cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_2` \sa `Kernel::ComputeWeight_2` @@ -771,7 +795,8 @@ A type representing weighted points in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Weighted_point_3` +\cgalHasModelsBegin CGAL::Weighted_point_3 +\cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_3` \sa `Kernel::ComputeWeight_3` diff --git a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h index 3ff7dcfc133..ad4a0782765 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h +++ b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h @@ -20,14 +20,15 @@ `Construct_`. If the result type is a number type, the name is prefixed by `Compute_`. When the result type is not determined, no prefix is used. - \cgalHasModel `CGAL::Cartesian` - \cgalHasModel `CGAL::Homogeneous` - \cgalHasModel `CGAL::Simple_cartesian` - \cgalHasModel `CGAL::Simple_homogeneous` - \cgalHasModel `CGAL::Filtered_kernel` - \cgalHasModel `CGAL::Exact_predicates_exact_constructions_kernel` - \cgalHasModel `CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt` - \cgalHasModel `CGAL::Exact_predicates_inexact_constructions_kernel` + \cgalHasModelsBegin galHasModel `CGAL::Cartesian + \cgalHasModels CGAL::Homogeneous + \cgalHasModels CGAL::Simple_cartesian + \cgalHasModels CGAL::Simple_homogeneous + \cgalHasModels CGAL::Filtered_kernel + \cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel + \cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt + \cgalHasModels CGAL::Exact_predicates_inexact_constructions_kernel + \cgalHasModelsEnd \sa `Kernel_d` \sa `CGAL::Ambient_dimension` diff --git a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h index 57cfbc7d058..63e05367baf 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h @@ -8,8 +8,9 @@ general kernel concept. It adds 2 functors, the meaning of which would be unclear in kernels of fixed dimension. \cgalRefines{Kernel_d} -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsEnd */ class KernelWithLifting_d { public: diff --git a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h index 6b1378e66ae..a56284feab8 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h @@ -18,10 +18,11 @@ predicates. The former replace constructors of the kernel classes and constructive procedures in the kernel. There are also function objects replacing operators, especially for equality testing. -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModels CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModelsEnd */ class Kernel_d { public: diff --git a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h index 932880c6f89..f8a25811d42 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h @@ -13,8 +13,9 @@ correct. For example, if the linear system solver declares a linear system \f$ A x = b\f$ unsolvable it also returns a vector \f$ c\f$ such that \f$ c^T A = 0\f$ and \f$ c^T b \neq 0\f$. -\cgalHasModel `CGAL::Linear_algebraHd` -\cgalHasModel `CGAL::Linear_algebraCd` +\cgalHasModelsBegin CGAL::Linear_algebraHd +\cgalHasModels CGAL::Linear_algebraCd +\cgalHasModelsEnd */ diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h index 4e7e19343b9..6f97471a99c 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h @@ -7,7 +7,7 @@ The concept `CellAttributeWithPoint` is a refinement of the `CellAttribute` conc \cgalRefines{CellAttribute} -\cgalHasModel \link CGAL::Cell_attribute_with_point `CGAL::Cell_attribute_with_point`\endlink +\cgalHasModelsBare{\link CGAL::Cell_attribute_with_point `CGAL::Cell_attribute_with_point`\endlink} \sa `LinearCellComplexItems` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h index c64aa00f4ff..740405fc5b3 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h @@ -7,8 +7,8 @@ The concept `LinearCellComplex` represents a linear cell complex in dimension `d \cgalRefines{GenericMap} -\cgalHasModel \link CGAL::Linear_cell_complex_for_combinatorial_map `CGAL::Linear_cell_complex_for_combinatorial_map`\endlink -\cgalHasModel \link CGAL::Linear_cell_complex_for_generalized_map `CGAL::Linear_cell_complex_for_generalized_map`\endlink +\cgalHasModelsBare{\link CGAL::Linear_cell_complex_for_combinatorial_map `CGAL::Linear_cell_complex_for_combinatorial_map`\endlink\n + \link CGAL::Linear_cell_complex_for_generalized_map `CGAL::Linear_cell_complex_for_generalized_map`\endlink} \sa `LinearCellComplexItems` \sa `LinearCellComplexTraits` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h index caf8d260895..25df3bed183 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h @@ -9,7 +9,8 @@ The concept `LinearCellComplexItems` refines the concept of `GenericMapItems` by The first type in `Attributes` tuple must be a model of the `CellAttributeWithPoint` concept. -\cgalHasModel `CGAL::Linear_cell_complex_min_items` +\cgalHasModelsBegin CGAL::Linear_cell_complex_min_items +\cgalHasModelsEnd \sa `LinearCellComplex` \sa `CellAttributeWithPoint` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h index ef4c0f72cf0..cb7de2d8382 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h @@ -5,7 +5,7 @@ Required types and functors for the `LinearCellComplexTraits` concept. This geometric traits concept is used in the \link CGAL::Linear_cell_complex_for_combinatorial_map `Linear_cell_complex_for_combinatorial_map`\endlink and \link CGAL::Linear_cell_complex_for_generalized_map `Linear_cell_complex_for_generalized_map`\endlink classes. -\cgalHasModel \link CGAL::Linear_cell_complex_traits `CGAL::Linear_cell_complex_traits`\endlink +\cgalHasModelsBare{\link CGAL::Linear_cell_complex_traits `CGAL::Linear_cell_complex_traits`\endlink} \sa `CGAL::Linear_cell_complex_for_combinatorial_map` \sa `CGAL::Linear_cell_complex_for_generalized_map` diff --git a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h index 287afa30758..37512a501ec 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h +++ b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h @@ -8,7 +8,8 @@ A class `BasicMatrix` has to provide the following types and operations in order to be a model for `BasicMatrix`. -\cgalHasModel `CGAL::Dynamic_matrix` +\cgalHasModelsBegin CGAL::Dynamic_matrix +\cgalHasModelsEnd \sa `MonotoneMatrixSearchTraits` \sa `SortedMatrixSearchTraits` diff --git a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h index 483a45b68a0..3f44b807ffd 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h @@ -21,7 +21,8 @@ add most of the functionality described above to arbitrary matrix classes. -\cgalHasModel `CGAL::Dynamic_matrix` +\cgalHasModelsBegin CGAL::Dynamic_matrix +\cgalHasModelsEnd \sa `CGAL::monotone_matrix_search()` diff --git a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h index ad49f24d349..e96a49bfdbe 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h @@ -8,7 +8,8 @@ needed to compute the smallest entry in a set of sorted matrices that fulfills a certain feasibility criterion using the function `CGAL::sorted_matrix_search`. -\cgalHasModel `CGAL::Sorted_matrix_search_traits_adaptor` +\cgalHasModelsBegin CGAL::Sorted_matrix_search_traits_adaptor +\cgalHasModelsEnd \sa `CGAL::sorted_matrix_search()` \sa `BasicMatrix` diff --git a/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h b/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h index 04cebff70d0..745c85b0d9f 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h @@ -17,8 +17,8 @@ points on constrained edges. \cgalRefines{DelaunayTriangulationTraits_2} -\cgalHasModel Any model of `Kernel` concept. In particular, all \cgal kernels -\cgalHasModel `Projection_traits_xy_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 +\cgalHasModelsEnd */ diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h index 4c9bd5eec8b..abe11ca79a8 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h @@ -13,7 +13,8 @@ meshing domain or not. \cgalRefines{ConstrainedTriangulationFaceBase_2} -\cgalHasModel `CGAL::Delaunay_mesh_face_base_2` +\cgalHasModelsBegin CGAL::Delaunay_mesh_face_base_2 +\cgalHasModelsEnd */ diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h index 042980a9684..25d8388d962 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h @@ -12,8 +12,8 @@ object `Construct_circumcenter_2`. \cgalRefines{ConformingDelaunayTriangulationTraits_2} -\cgalHasModel Any model of the `Kernel` concept. In particular, all \cgal kernels -\cgalHasModel `CGAL::Projection_traits_xy_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 +\cgalHasModelsEnd */ diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h index 9385dae29ae..34188802119 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h @@ -13,7 +13,8 @@ the mesh density everywhere while modifying the mesh. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Delaunay_mesh_vertex_base_2` +\cgalHasModelsBegin CGAL::Delaunay_mesh_vertex_base_2 +\cgalHasModelsEnd */ diff --git a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h index c7ff08ec100..929119fb29a 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h @@ -37,8 +37,9 @@ comparable as the meshing algorithm will order bad triangles by quality, to split those with smallest quality first. The predicate `Is_bad` computes the quality of the triangle as a by-product. -\cgalHasModel `CGAL::Delaunay_mesh_criteria_2` -\cgalHasModel `CGAL::Delaunay_mesh_size_criteria_2` +\cgalHasModelsBegin CGAL::Delaunay_mesh_criteria_2 +\cgalHasModels CGAL::Delaunay_mesh_size_criteria_2 +\cgalHasModelsEnd */ diff --git a/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h index 8d6b076a3ef..0ca302d56fb 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h @@ -16,7 +16,7 @@ function from \f$ \mathbb{R}^3\f$ to \f$ \mathbb{R}\f$), the do-intersect predic is computed by evaluations of the function values at both end points of the segment. -\cgalHasModel Any \cgal Kernel. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `ImplicitSurfaceTraits_3` \sa `IntersectionGeometricTraits_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h index a1b35060f85..d5637c9b8e1 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h @@ -9,7 +9,7 @@ forming its boundary. The concept `IntersectionGeometricTraits_3` mainly provides the detection and construction of intersections between segments and triangles. -\cgalHasModel All models of the `Kernel` concept. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `BisectionGeometricTraits_3` \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h index 028d9e70d9f..7ad4c56ad1c 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h @@ -43,8 +43,9 @@ each cell (see below). \cgalRefines{SimplicialMeshCellBase_3,RegularTriangulationCellBaseWithWeightedCircumcenter_3,CopyConstructible} -\cgalHasModel `CGAL::Compact_mesh_cell_base_3` -\cgalHasModel `CGAL::Mesh_cell_base_3` +\cgalHasModelsBegin CGAL::Compact_mesh_cell_base_3 +\cgalHasModels CGAL::Mesh_cell_base_3 +\cgalHasModelsEnd \sa `CGAL::make_mesh_3()` \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h index d3b0b83f0a6..4691571e9f1 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h @@ -9,7 +9,8 @@ that concern either mesh tetrahedra or surface facets. The concept `MeshCellCriteria_3` describes the types that handle the refinement criteria for mesh tetrahedra. -\cgalHasModel `CGAL::Mesh_cell_criteria_3` +\cgalHasModelsBegin CGAL::Mesh_cell_criteria_3 +\cgalHasModelsEnd \sa `MeshEdgeCriteria_3` \sa `MeshFacetCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h index c53644cb36f..e1570416dd7 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h @@ -14,7 +14,8 @@ that describes the requirements, in terms of sizing, for the discretization of t \cgalRefines{MeshCriteria_3} -\cgalHasModel `CGAL::Mesh_criteria_3` +\cgalHasModelsBegin CGAL::Mesh_criteria_3 +\cgalHasModelsEnd \sa `MeshEdgeCriteria_3` \sa `MeshFacetCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h index ea4a1f33ea3..189afcbffcb 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h @@ -12,7 +12,8 @@ while the refinement criteria for surface facets are described by the concept `MeshFacetCriteria_3`. The concept `MeshCriteria_3` encapsulates these concepts. -\cgalHasModel `CGAL::Mesh_criteria_3` +\cgalHasModelsBegin CGAL::Mesh_criteria_3 +\cgalHasModelsEnd \sa `MeshFacetCriteria_3` \sa `MeshCellCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h index 644a3a46046..fbb2f2cc8ee 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h @@ -5,7 +5,8 @@ The concept `MeshDomainField_3` describes a scalar field which could be queried at any point of the space. -\cgalHasModel `CGAL::Mesh_constant_domain_field_3` +\cgalHasModelsBegin CGAL::Mesh_constant_domain_field_3 +\cgalHasModelsEnd \sa `MeshDomain_3` \sa `MeshDomainWithFeatures_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h index 18e97b9a275..80df66b599a 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h @@ -17,8 +17,9 @@ between two ordered points on the same curve. \cgalRefines{MeshDomain_3} -\cgalHasModel `CGAL::Mesh_domain_with_polyline_features_3` -\cgalHasModel `CGAL::Polyhedral_mesh_domain_with_features_3` +\cgalHasModelsBegin CGAL::Mesh_domain_with_polyline_features_3 +\cgalHasModels CGAL::Polyhedral_mesh_domain_with_features_3 +\cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h index 240f9b0f1fb..56c6ed59ad1 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h @@ -29,8 +29,9 @@ A segment, ray or line is said to intersect properly the domain boundary if it includes points which are strictly inside and strictly outside the domain (resp. the subdomain). -\cgalHasModel `CGAL::Polyhedral_mesh_domain_3` -\cgalHasModel `CGAL::Labeled_mesh_domain_3` +\cgalHasModelsBegin CGAL::Polyhedral_mesh_domain_3 +\cgalHasModels CGAL::Labeled_mesh_domain_3 +\cgalHasModelsEnd \sa `MeshVertexBase_3` \sa `MeshCellBase_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h index 4c044751069..41b3bab4451 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h @@ -7,7 +7,8 @@ the 1-dimensional features of the domain. It provides an upper bound for the distance between two protecting ball centers that are consecutive on a 1-feature. -\cgalHasModel `CGAL::Mesh_edge_criteria_3` +\cgalHasModelsBegin CGAL::Mesh_edge_criteria_3 +\cgalHasModelsEnd \sa `MeshCellCriteria_3` \sa `MeshFacetCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h index 325dedeff05..f8bad1f29cc 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h @@ -9,7 +9,8 @@ that concern either mesh tetrahedra or surface facets. The concept `MeshFacetCriteria_3` describes the types that handle the refinement criteria for surface facets. -\cgalHasModel `CGAL::Mesh_facet_criteria_3` +\cgalHasModelsBegin CGAL::Mesh_facet_criteria_3 +\cgalHasModelsEnd \sa `MeshCellCriteria_3` \sa `MeshEdgeCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h index bfe6e4b8d98..ce8469eb8aa 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h @@ -6,7 +6,7 @@ The concept `MeshPolyline_3` implements a container of points designed to repres Types and functions provided in this concept are such as standard template library containers are natural models of this concept. -\cgalHasModel `std::vector` for any Kernel of \cgal is a natural model of this concept. +\cgalHasModelsBare{`std::vector` for any Kernel of \cgal is a natural model of this concept.} \sa `CGAL::Mesh_domain_with_polyline_features_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h index 99b7a9d8270..3e1a8cf734d 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h @@ -9,7 +9,7 @@ a mesh generation process. \cgalRefines{RegularTriangulationTraits_3} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} In addition to the requirements described for the traits class RegularTriangulationTraits_3, the geometric traits class of a diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h index 4739741b01c..f4f2ff9d9b8 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h @@ -22,7 +22,8 @@ each cell (see below). \cgalRefines{SimplicialMeshVertexBase_3,RegularTriangulationVertexBase_3,SurfaceMeshVertexBase_3} -\cgalHasModel `CGAL::Mesh_vertex_base_3` +\cgalHasModelsBegin CGAL::Mesh_vertex_base_3 +\cgalHasModelsEnd \sa `CGAL::make_mesh_3()` \sa `CGAL::refine_mesh_3()` diff --git a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h index 03f9ff4880a..1d3a376d3de 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h @@ -5,7 +5,8 @@ The concept `TriangleAccessor_3` represents an accessor to a triangulated polyhedral surface, intersection free and without boundaries. -\cgalHasModel `CGAL::Triangle_accessor_3,K>` +\cgalHasModelsBegin CGAL::Triangle_accessor_3,K> +\cgalHasModelsEnd \sa `CGAL::Polyhedral_mesh_domain_3` \sa `CGAL::make_mesh_3()` diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h index 20b4cf23fb7..0f81aaa6a90 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h @@ -6,11 +6,12 @@ A model of the `PolygonConvexDecomposition_2` concept is capable of decomposing an input polygon \f$ P\f$ into a set of convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \f$ \cup_{i=1}^{k}{P_k} = P\f$. -\cgalHasModel `CGAL::Small_side_angle_bisector_decomposition_2` -\cgalHasModel `CGAL::Optimal_convex_decomposition_2` -\cgalHasModel `CGAL::Hertel_Mehlhorn_convex_decomposition_2` -\cgalHasModel `CGAL::Greene_convex_decomposition_2` -\cgalHasModel `CGAL::Polygon_nop_decomposition_2` +\cgalHasModelsBegin CGAL::Small_side_angle_bisector_decomposition_2 +\cgalHasModels CGAL::Optimal_convex_decomposition_2 +\cgalHasModels CGAL::Hertel_Mehlhorn_convex_decomposition_2 +\cgalHasModels CGAL::Greene_convex_decomposition_2 +\cgalHasModels CGAL::Polygon_nop_decomposition_2 +\cgalHasModelsEnd */ diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h index 7c27e91a6c8..64b8d099507 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h @@ -9,8 +9,9 @@ convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \cgalRefines{PolygonConvexDecomposition_2} -\cgalHasModel `CGAL::Polygon_vertical_decomposition_2` -\cgalHasModel `CGAL::Polygon_triangulation_decomposition_2` +\cgalHasModelsBegin CGAL::Polygon_vertical_decomposition_2 +\cgalHasModels CGAL::Polygon_triangulation_decomposition_2 +\cgalHasModelsEnd */ diff --git a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h index c315deb05fd..1bf64f2a9c9 100644 --- a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h +++ b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h @@ -9,7 +9,8 @@ function object. It maps objects of its domain type `Key` to the integral image type `std::size_t`. The image values have to be unique for all keys in the domain type `Key`. -\cgalHasModel `CGAL::Handle_hash_function` +\cgalHasModelsBegin CGAL::Handle_hash_function +\cgalHasModelsEnd \sa `CGAL::Unique_hash_map` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h index 022ed5c526b..0e0467a9f39 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h @@ -8,7 +8,8 @@ In case this associated type is a model of `Modularizable`, this is indicated by Boolean tag `ModularTraits::Is_modularizable`. The mapping into the `Residue_type` is provided by the functor `ModularTraits::Modular_image`. -\cgalHasModel CGAL::Modular_traits +\cgalHasModelsBegin CGAL::Modular_traits +\cgalHasModelsEnd \sa `CGAL::Residue` \sa `Modularizable` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h index 0001b5b400b..8db45a2f428 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h @@ -18,18 +18,20 @@ of denominator, are not `Modularizable`. This is due to the fact that the denominator may be zero modulo the prime, which can not be represented. -\cgalHasModel `int` -\cgalHasModel `long` -\cgalHasModel `CORE::BigInt` -\cgalHasModel `CGAL::Gmpz` -\cgalHasModel `leda_integer` -\cgalHasModel `mpz_class` +\cgalHasModelsBegin int +\cgalHasModels long +\cgalHasModels CORE::BigInt +\cgalHasModels CGAL::Gmpz +\cgalHasModels leda_integer +\cgalHasModels mpz_class +\cgalHasModelsEnd The following types are `Modularizable` iff their template arguments are. -\cgalHasModel `CGAL::Lazy_exact_nt` -\cgalHasModel `CGAL::Sqrt_extension` -\cgalHasModel `CGAL::Polynomial` +\cgalHasModelsBegin CGAL::Lazy_exact_nt +\cgalHasModels CGAL::Sqrt_extension +\cgalHasModels CGAL::Polynomial +\cgalHasModelsEnd \sa `CGAL::Residue` \sa `CGAL::Modular_traits` diff --git a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h index 8d5e82f7fed..7161d6725e7 100644 --- a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h +++ b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h @@ -38,9 +38,10 @@ functionality for changing between standard affine and extended geometry. At the same time it provides extensible geometric primitives on the extended geometric objects. -\cgalHasModel `CGAL::Extended_cartesian` -\cgalHasModel `CGAL::Extended_homogeneous` -\cgalHasModel `CGAL::Filtered_extended_homogeneous` +\cgalHasModelsBegin CGAL::Extended_cartesian +\cgalHasModels CGAL::Extended_homogeneous +\cgalHasModels CGAL::Filtered_extended_homogeneous +\cgalHasModelsEnd */ diff --git a/Number_types/doc/Number_types/Concepts/RootOf_2.h b/Number_types/doc/Number_types/Concepts/RootOf_2.h index a772693794d..c29f30b3ab2 100644 --- a/Number_types/doc/Number_types/Concepts/RootOf_2.h +++ b/Number_types/doc/Number_types/Concepts/RootOf_2.h @@ -30,8 +30,8 @@ special construction for extensions of degree 2: \cgalRefines{DefaultConstructible,CopyConstructible,FromIntConstructible, ImplicitInteroperable with `RT`,ImplicitInteroperable with `FT`} -\cgalHasModel `double` (not exact) -\cgalHasModel `CGAL::Sqrt_extension` +\cgalHasModelsBareBegin{`double` (not exact)} CGAL::Sqrt_extension +\cgalHasModelsEnd \sa `CGAL::make_root_of_2` \sa `CGAL::make_sqrt` diff --git a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h index dceb2345f0c..fad3d71782a 100644 --- a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h +++ b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h @@ -8,7 +8,8 @@ a 3x3 matrix type. \cgalRefines{Kernel} -\cgalHasModel `CGAL::Oriented_bounding_box_traits_3` +\cgalHasModelsBegin CGAL::Oriented_bounding_box_traits_3 +\cgalHasModelsEnd */ class OrientedBoundingBoxTraits_3 diff --git a/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h b/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h index fe99dd293c4..39b2c65b4e1 100644 --- a/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h +++ b/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h @@ -8,8 +8,8 @@ for the traits class of `CGAL::Optimal_transportation_reconstruction_2`. \cgalRefines{DelaunayTriangulationTraits_2} -\cgalHasModel Any model of the `Kernel` concept -\cgalHasModel `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended) +\cgalHasModelsBare{All models of the \cgal concept `Kernel`, + `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended)} \sa `CGAL::Optimal_transportation_reconstruction_2` diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h index eac6e2e914d..8b6e0e06631 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h @@ -5,9 +5,10 @@ The concept `OrthtreeTraits` defines the requirements for the template parameter of the `CGAL::Orthtree` class. - \cgalHasModel `CGAL::Orthtree_traits_2` - \cgalHasModel `CGAL::Orthtree_traits_3` - \cgalHasModel `CGAL::Orthtree_traits_d` + \cgalHasModelsBegin galHasModel `CGAL::Orthtree_traits_2 + \cgalHasModels CGAL::Orthtree_traits_3 + \cgalHasModels CGAL::Orthtree_traits_d + \cgalHasModelsEnd */ class OrthtreeTraits { diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h index d763be714e5..c03e9deb207 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h @@ -9,10 +9,11 @@ A traversal is used to iterate on a tree with a user-selected order (e.g. preorder, postorder). - \cgalHasModel `CGAL::Orthtrees::Preorder_traversal` - \cgalHasModel `CGAL::Orthtrees::Postorder_traversal` - \cgalHasModel `CGAL::Orthtrees::Leaves_traversal` - \cgalHasModel `CGAL::Orthtrees::Level_traversal` + \cgalHasModelsBegin galHasModel `CGAL::Orthtrees::Preorder_traversal + \cgalHasModels CGAL::Orthtrees::Postorder_traversal + \cgalHasModels CGAL::Orthtrees::Leaves_traversal + \cgalHasModels CGAL::Orthtrees::Level_traversal + \cgalHasModelsEnd */ class OrthtreeTraversal { diff --git a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h index c1919ce2444..ff7c9417c08 100644 --- a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h @@ -6,7 +6,8 @@ Requirements of a traits class used by `convex_partition_is_valid_2` for testing the validity of a convex partition of a polygon. -\cgalHasModel `CGAL::Partition_traits_2` +\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` \sa `CGAL::greene_approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h index d677751f991..0c0d7e3fc97 100644 --- a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h @@ -6,8 +6,9 @@ Requirements of a traits class to be used with the function `is_y_monotone_2()` that tests whether a sequence of 2D points defines a \f$ y\f$-monotone polygon or not. -\cgalHasModel `CGAL::Partition_traits_2` -\cgalHasModel `CGAL::Kernel_traits_2` +\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModels CGAL::Kernel_traits_2 +\cgalHasModelsEnd \sa `CGAL::Is_y_monotone_2` \sa `CGAL::y_monotone_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h index 3f1e4722dc2..85676075bb4 100644 --- a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h @@ -8,7 +8,8 @@ an optimal convex partition of a polygon. \cgalRefines{PartitionTraits_2} -\cgalHasModel `CGAL::Partition_traits_2` +\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsEnd \sa `CGAL::convex_partition_is_valid_2()` \sa `CGAL::Partition_is_valid_traits_2` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h index 31f7e3c0136..b91ad810935 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h @@ -14,7 +14,8 @@ function `CGAL::is_convex_2()` and the concept `YMonotonePartitionTraits_2` for the additional requirements for testing for convexity and \f$ y\f$-monotonicity, respectively. -\cgalHasModel `CGAL::Partition_is_valid_traits_2` +\cgalHasModelsBegin CGAL::Partition_is_valid_traits_2 +\cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` \sa `CGAL::greene_approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h index c4c3827f664..2ad93228b1b 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h @@ -8,7 +8,8 @@ common to all traits classes. The concept `PartitionTraits_2` defines this common set of requirements. -\cgalHasModel `CGAL::Partition_traits_2` +\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` \sa `CGAL::greene_approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h index b0e5ff298d1..ab72c01a9f0 100644 --- a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h +++ b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h @@ -6,8 +6,9 @@ Function object that determines if a sequence of points represents a valid partition polygon or not, where "valid" can assume any of several meanings (e.g., convex or \f$ y\f$-monotone). -\cgalHasModel `CGAL::Is_convex_2` -\cgalHasModel `CGAL::Is_y_monotone_2` +\cgalHasModelsBegin CGAL::Is_convex_2 +\cgalHasModels CGAL::Is_y_monotone_2 +\cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` \sa `CGAL::convex_partition_is_valid_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h index a7500c62d6b..6212b11620a 100644 --- a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h @@ -6,7 +6,8 @@ Requirements of a traits class that is used by `y_monotone_partition_is_valid_2` for testing the validity of a \f$ y\f$-monotone partition of a polygon. -\cgalHasModel `CGAL::Partition_traits_2` +\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsEnd \sa `CGAL::partition_is_valid_2()` \sa `CGAL::y_monotone_partition_2()` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h index 402a3eca806..bda0b95ab29 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h @@ -27,7 +27,8 @@ dual functions are called. The additional predicate type `::Periodic_2DelaunayTriangulationTraits_2::Compare_distance_2` is required if calls to `nearest_vertex(..)` are issued. -\cgalHasModel `CGAL::Periodic_2_Delaunay_triangulation_traits_2` +\cgalHasModelsBegin CGAL::Periodic_2_Delaunay_triangulation_traits_2 +\cgalHasModelsEnd \sa `DelaunayTriangulationTraits_2` */ diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h index c3d9e3b3c7b..56d28d5a217 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h @@ -7,7 +7,8 @@ The concept `Periodic_2Offset_2` describes a two-/dimensional integer vector with some specialized access functions and operations. -\cgalHasModel `CGAL::Periodic_2_offset_2` +\cgalHasModelsBegin CGAL::Periodic_2_offset_2 +\cgalHasModelsEnd \sa `Periodic_2TriangulationTraits_2` \sa `Periodic_2DelaunayTriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h index 7d7771d981e..96769827f33 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h @@ -13,7 +13,8 @@ vertex \f$ i\f$. \cgalRefines{TriangulationFaceBase_2} -\cgalHasModel `CGAL::Periodic_2_triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Periodic_2_triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `TriangulationFaceBase_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h index 71bfd55b268..58dad3ed62d 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h @@ -24,7 +24,8 @@ In addition to the requirements described for the traits class Periodic triangulation must fulfill the following requirements: -\cgalHasModel `CGAL::Periodic_2_triangulation_traits_2` +\cgalHasModelsBegin CGAL::Periodic_2_triangulation_traits_2 +\cgalHasModelsEnd \sa `TriangulationTraits_2` \sa `CGAL::Periodic_2_triangulation_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h index 26c88f7b157..33d799fec24 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h @@ -16,7 +16,8 @@ The storage of the offset is only needed when a triangulation is copied. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel` CGAL::Periodic_2_triangulation_vertex_base_2` +\cgalHasModelsBegin CGAL::Periodic_2_triangulation_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `TriangulationVertexBase_2` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h index 51a0f2dff73..2794a7f365a 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h @@ -22,8 +22,8 @@ Wrapping any model of `Periodic_3MeshDomain_3` with the class `CGAL::Mesh_domain_with_polyline_features_3` gives a model of `Periodic_3MeshDomainWithFeatures_3`. -\cgalHasModel `CGAL::Mesh_domain_with_polyline_features_3< - CGAL::Labeled_mesh_domain_3 >` +\cgalHasModelsBegin CGAL::Mesh_domain_with_polyline_features_3 > +\cgalHasModelsEnd \sa `CGAL::Periodic_3_function_wrapper` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h index d646476f139..63170e01edb 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h @@ -20,7 +20,8 @@ The class `CGAL::Labeled_mesh_domain_3` paired with a periodic labeling fun is a model of this concept. It is possible to create artificially periodic functions through the class `CGAL::Periodic_3_function_wrapper`. -\cgalHasModel `CGAL::Labeled_mesh_domain_3` +\cgalHasModelsBegin CGAL::Labeled_mesh_domain_3 +\cgalHasModelsEnd \sa `CGAL::Labeled_mesh_domain_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h index 9ca96674cc7..1d72f228180 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h @@ -15,7 +15,8 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,DelaunayTriangulationTraits_3} -\cgalHasModel `CGAL::Periodic_3_Delaunay_triangulation_traits_3` +\cgalHasModelsBegin CGAL::Periodic_3_Delaunay_triangulation_traits_3 +\cgalHasModelsEnd In addition to the requirements described by the concepts `Periodic_3TriangulationTraits_3` and `DelaunayTriangulationTraits_3`, diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h index 1896b2291dc..b5a467b4cd8 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h @@ -6,7 +6,8 @@ The concept `Periodic_3Offset_3` describes a three-dimensional integer vector with some specialized access functions and operations. -\cgalHasModel `CGAL::Periodic_3_offset_3` +\cgalHasModelsBegin CGAL::Periodic_3_offset_3 +\cgalHasModelsEnd \sa `Periodic_3TriangulationTraits_3` \sa `Periodic_3DelaunayTriangulationTraits_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h index 803505e302e..29c9fae1dc6 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h @@ -5,10 +5,9 @@ \cgalRefines{RegularTriangulationCellBase_3,Periodic_3TriangulationDSCellBase_3} -\cgalHasModel `CGAL::Regular_triangulation_cell_base_3 >` -\cgalHasModel `CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 >` +\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_3 > +\cgalHasModels CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 > +\cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the traits class used in `CGAL::Periodic_3_regular_triangulation_3`. diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h index 762aceede94..8f5ce76dab5 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h @@ -5,8 +5,8 @@ \cgalRefines{RegularTriangulationVertexBase_3,Periodic_3TriangulationDSVertexBase_3} -\cgalHasModel `CGAL::Regular_triangulation_vertex_base_3 >` +\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_3 > +\cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the traits class used in `CGAL::Periodic_3_regular_triangulation_3`. diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h index c84d4e8885c..c128b08f82e 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h @@ -15,7 +15,8 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,RegularTriangulationTraits_3} -\cgalHasModel `CGAL::Periodic_3_regular_triangulation_traits_3` +\cgalHasModelsBegin CGAL::Periodic_3_regular_triangulation_traits_3 +\cgalHasModelsEnd In addition to the requirements described for the traits class RegularTriangulationTraits_3, the geometric traits class of a diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h index 048264c8c7b..9f575b84869 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h @@ -18,7 +18,8 @@ does not contain any information. \cgalRefines{TriangulationDSCellBase_3} -\cgalHasModel `CGAL::Periodic_3_triangulation_ds_cell_base_3` +\cgalHasModelsBegin CGAL::Periodic_3_triangulation_ds_cell_base_3 +\cgalHasModelsEnd \sa `TriangulationDataStructure_3` \sa `TriangulationDSCellBase_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h index cc3de413a70..14b032fc1bc 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h @@ -12,7 +12,8 @@ a vertex provides access to one of its incident cells through a handle. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModel `CGAL::Periodic_3_triangulation_ds_vertex_base_3` +\cgalHasModelsBegin CGAL::Periodic_3_triangulation_ds_vertex_base_3 +\cgalHasModelsEnd \sa `TriangulationDataStructure_3` \sa `TriangulationDSVertexBase_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h index f786b27ea94..ace2ebb8199 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h @@ -14,7 +14,8 @@ functor the version without offsets. \cgalRefines{TriangulationTraits_3} -\cgalHasModel `CGAL::Periodic_3_triangulation_traits_3` +\cgalHasModelsBegin CGAL::Periodic_3_triangulation_traits_3 +\cgalHasModelsEnd \sa `Periodic_3DelaunayTriangulationTraits_3` \sa `Periodic_3RegularTriangulationTraits_3` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h index 6628fffd89f..7532e1b0797 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h @@ -12,7 +12,8 @@ to `Periodic_4HyperbolicTriangulationTraits_2` that needs to be fulfilled by any class used to instantiate the first template parameter of the class `CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_2`. -\cgalHasModel `CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2` +\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2 +\cgalHasModelsEnd */ diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h index 959e3c3a25e..9766710af1e 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h @@ -20,7 +20,8 @@ corresponding vertex produces the canonical representative of the face in the hy Hyperbolic translations are represented by a nested type which is provided by the concept `Periodic_4HyperbolicDelaunayTriangulationTraits_2`. -\cgalHasModel `CGAL::Periodic_4_hyperbolic_triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `Periodic_4HyperbolicTriangulationVertexBase_2` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h index 3221dc57a11..eb8bfe0b89d 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h @@ -14,7 +14,8 @@ translation during the insertion process. A boolean flag indicates whether the face stores a translation or not. The value of the flag is automatically set when storing or removing a translation. -\cgalHasModel `CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2` +\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `Periodic_4HyperbolicTriangulationFaceBase_2` diff --git a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h index 97517ca4a3d..f17b26f951a 100644 --- a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h +++ b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h @@ -8,8 +8,9 @@ * represents the outer boundary and the general polygons that represent * the holes. * - * \cgalHasModel `CGAL::General_polygon_with_holes_2` - * \cgalHasModel `CGAL::Polygon_with_holes_2` + * \cgalHasModelsBegin CGAL::General_polygon_with_holes_2 + * \cgalHasModels CGAL::Polygon_with_holes_2 + * \cgalHasModelsEnd */ class GeneralPolygonWithHoles_2 { diff --git a/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h b/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h index 674a57e4374..068194985bc 100644 --- a/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h +++ b/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h @@ -14,10 +14,10 @@ and refer to the description of the kernel concept for details. \cgalRefines{DefaultConstructible,CopyConstructable} -\cgalHasModel The kernels supplied by \cgal are models of `PolygonTraits_2`. -\cgalHasModel `CGAL::Projection_traits_xy_3` -\cgalHasModel `CGAL::Projection_traits_yz_3` -\cgalHasModel `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{The kernels supplied by \cgal are models of `PolygonTraits_2`} CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd \sa `CGAL::Polygon_2` diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index a46ff1fe7a2..facce5d714b 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -6,7 +6,8 @@ /// the creation of new faces and new edges. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModel `CGAL::Polygon_mesh_processing::Corefinement::Default_visitor`. +/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Corefinement::Default_visitor +/// \cgalHasModelsEnd class PMPCorefinementVisitor{ public: diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h index 61575e3ff89..ec983951220 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h @@ -7,7 +7,7 @@ /// `sample_triangle_mesh()`, `approximate_Hausdorff_distance()` and `max_distance_to_triangle_mesh()` /// /// \cgalRefines{AABBGeomTraits,SpatialSortingTraits_3} -/// \cgalHasModel Any 3D Kernel is a model of this concept. +/// \cgalHasModelsBare{Any 3D Kernel is a model of this concept} class PMPDistanceTraits{ public: diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h index 9ef06093cb2..11af2abad0f 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h @@ -9,7 +9,8 @@ /// If that fails, it uses an algorithm with cubic running time (*cubic phase*). /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModel `CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor`. +/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor +/// \cgalHasModelsEnd class PMPHolefillingVisitor{ public: diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h index a4efc83d703..d0597a5c90e 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h @@ -7,7 +7,8 @@ /// during the orientation process. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModel `CGAL::Polygon_mesh_processing::Default_orientation_visitor`. +/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Default_orientation_visitor +/// \cgalHasModelsEnd class PMPPolygonSoupOrientationVisitor{ public: diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h index f3fdef28beb..a8c885e7b13 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h @@ -6,7 +6,8 @@ /// the creation of new faces. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModel `CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor`. +/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor +/// \cgalHasModelsEnd class PMPTriangulateFaceVisitor { diff --git a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h index 62c23598c49..c4b306a73a2 100644 --- a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h +++ b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h @@ -13,8 +13,9 @@ polyhedral surface renames faces to facets. \cgalRefines{HalfedgeDSItems} -\cgalHasModel `CGAL::Polyhedron_items_3` -\cgalHasModel `CGAL::Polyhedron_min_items_3` +\cgalHasModelsBegin CGAL::Polyhedron_items_3 +\cgalHasModels CGAL::Polyhedron_min_items_3 +\cgalHasModelsEnd \sa `CGAL::Polyhedron_3` \sa `HalfedgeDSItems` diff --git a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h index 6849eb7f175..5dc824c7d55 100644 --- a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h +++ b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h @@ -10,9 +10,9 @@ and can be used directly as template argument. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModel `CGAL::Polyhedron_traits_3` -\cgalHasModel `CGAL::Polyhedron_traits_with_normals_3` -\cgalHasModel All models of the `Kernel` concept, e.g., `CGAL::Simple_cartesian` +\cgalHasModelsBareBegin{All models of the `Kernel` concept, e.g. `CGAL::Simple_cartesian`} CGAL::Polyhedron_traits_3 +\cgalHasModels CGAL::Polyhedron_traits_with_normals_3 +\cgalHasModelsEnd \sa `CGAL::Polyhedron_3` diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h index 4722bcaa72c..525753e4c75 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h @@ -12,9 +12,10 @@ preserve the overall polyline set shape as much as possible \cgalRefines{CopyConstructible,Assignable} -\cgalHasModel `CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost` -\cgalHasModel `CGAL::Polyline_simplification_2::Scaled_squared_distance_cost` -\cgalHasModel `CGAL::Polyline_simplification_2::Squared_distance_cost` +\cgalHasModelsBegin CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost +\cgalHasModels CGAL::Polyline_simplification_2::Scaled_squared_distance_cost +\cgalHasModels CGAL::Polyline_simplification_2::Squared_distance_cost +\cgalHasModelsEnd */ diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h index 62e84c66f48..bb5b1d98948 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h @@ -5,9 +5,10 @@ Models of this concept are passed to the polyline simplification algorithm to indicate when to stop the process. -\cgalHasModel `CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold` -\cgalHasModel `CGAL::Polyline_simplification_2::Stop_below_count_threshold` -\cgalHasModel `CGAL::Polyline_simplification_2::Stop_above_cost_threshold` +\cgalHasModelsBegin CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold +\cgalHasModels CGAL::Polyline_simplification_2::Stop_below_count_threshold +\cgalHasModels CGAL::Polyline_simplification_2::Stop_above_cost_threshold +\cgalHasModelsEnd */ class PolylineSimplificationStopPredicate diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h index c51684ad8d6..20aff75a93b 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h @@ -8,7 +8,8 @@ whether a vertex can be removed, and the cost of the removal. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Polyline_simplification_2::Vertex_base_2` +\cgalHasModelsBegin CGAL::Polyline_simplification_2::Vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationFaceBase_2` \sa `CGAL::Constrained_triangulation_plus_2` diff --git a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h index d5552d6b328..7ce0406f064 100644 --- a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h +++ b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h @@ -31,7 +31,8 @@ is possible to select a certain variable. \sa `Polynomial_d` -\cgalHasModel `CGAL::Polynomial_traits_d` +\cgalHasModelsBegin CGAL::Polynomial_traits_d +\cgalHasModelsEnd */ diff --git a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h index ed86c99c683..6a5a0c84a05 100644 --- a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h +++ b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h @@ -32,7 +32,8 @@ coefficient is a `Field` the polynomial is model of `EuclideanRing`. \sa `AlgebraicStructureTraits` \sa `PolynomialTraits_d` -\cgalHasModel `CGAL::Polynomial` +\cgalHasModelsBegin CGAL::Polynomial +\cgalHasModelsEnd */ diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h index a792e16ee38..64c1383c051 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h @@ -7,10 +7,11 @@ The concept `AllFurthestNeighborsTraits_2` defines types and operations needed to compute all furthest neighbors for the vertices of a convex polygon using the function `all_furthest_neighbors_2()`. -\cgalHasModel `CGAL::Cartesian` -\cgalHasModel `CGAL::Homogeneous` -\cgalHasModel `CGAL::Simple_cartesian` -\cgalHasModel `CGAL::Simple_homogeneous` +\cgalHasModelsBegin CGAL::Cartesian +\cgalHasModels CGAL::Homogeneous +\cgalHasModels CGAL::Simple_cartesian +\cgalHasModels CGAL::Simple_homogeneous +\cgalHasModelsEnd \sa `CGAL::all_furthest_neighbors_2()` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h index cfece60d3a4..34286f63b4b 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h @@ -6,9 +6,10 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional optimisation algorithms. -\cgalHasModel `CGAL::Polytope_distance_d_traits_2` -\cgalHasModel `CGAL::Polytope_distance_d_traits_3` -\cgalHasModel `CGAL::Polytope_distance_d_traits_d` +\cgalHasModelsBegin CGAL::Polytope_distance_d_traits_2 +\cgalHasModels CGAL::Polytope_distance_d_traits_3 +\cgalHasModels CGAL::Polytope_distance_d_traits_d +\cgalHasModelsEnd \sa `CGAL::Polytope_distance_d` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h index 6f882dd1280..5794f471658 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h @@ -12,7 +12,8 @@ Whatever the coordinates of the points are, it is required for the width-algorithm to have access to the homogeneous representation of points. -\cgalHasModel CGAL::Width_default_traits_3 +\cgalHasModelsBegin CGAL::Width_default_traits_3 +\cgalHasModelsEnd \sa `CGAL::Width_3` diff --git a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h index 6cc3639cff5..1882b05c73e 100644 --- a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h @@ -35,9 +35,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModel `CGAL::Quadratic_program` -\cgalHasModel `CGAL::Quadratic_program_from_mps` -\cgalHasModel `CGAL::Linear_program_from_iterators` +\cgalHasModelsBegin CGAL::Quadratic_program +\cgalHasModels CGAL::Quadratic_program_from_mps +\cgalHasModels CGAL::Linear_program_from_iterators +\cgalHasModelsEnd and the other concepts diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h index e3a75a9aaf7..0e4c2928cec 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h @@ -29,17 +29,19 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModel `CGAL::Quadratic_program` -\cgalHasModel `CGAL::Quadratic_program_from_mps` -\cgalHasModel `CGAL::Nonnegative_linear_program_from_iterators` +\cgalHasModelsBegin CGAL::Quadratic_program +\cgalHasModels CGAL::Quadratic_program_from_mps +\cgalHasModels CGAL::Nonnegative_linear_program_from_iterators +\cgalHasModelsEnd The value types of all iterator types (nested iterator types, respectively, for `A_iterator`) must be convertible to some common `IntegralDomain` `ET`. -\cgalHasModel `CGAL::Quadratic_program` -\cgalHasModel `CGAL::Quadratic_program_from_mps` -\cgalHasModel `CGAL::Nonnegative_linear_program_from_iterators` +\cgalHasModelsBegin CGAL::Quadratic_program +\cgalHasModels CGAL::Quadratic_program_from_mps +\cgalHasModels CGAL::Nonnegative_linear_program_from_iterators +\cgalHasModelsEnd \sa `QuadraticProgram` \sa `LinearProgram` diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h index 585eb911b0a..f531f27550c 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h @@ -33,9 +33,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModel `CGAL::Quadratic_program` -\cgalHasModel `CGAL::Quadratic_program_from_mps` -\cgalHasModel `CGAL::Nonnegative_quadratic_program_from_iterators` +\cgalHasModelsBegin CGAL::Quadratic_program +\cgalHasModels CGAL::Quadratic_program_from_mps +\cgalHasModels CGAL::Nonnegative_quadratic_program_from_iterators +\cgalHasModelsEnd The value types of all iterator types (nested iterator types, respectively, for `A_iterator` and `D_iterator`) must be diff --git a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h index 6070e27ceb9..e2531015388 100644 --- a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h @@ -34,9 +34,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModel `CGAL::Quadratic_program` -\cgalHasModel `CGAL::Quadratic_program_from_mps` -\cgalHasModel `CGAL::Quadratic_program_from_iterators` +\cgalHasModelsBegin CGAL::Quadratic_program +\cgalHasModels CGAL::Quadratic_program_from_mps +\cgalHasModels CGAL::Quadratic_program_from_iterators +\cgalHasModelsEnd The value types of all iterator types (nested iterator types, respectively, for `A_iterator` and `D_iterator`) must be diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h index d76e8032e54..1359f35074e 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h @@ -48,7 +48,8 @@ of the input complex. \cgalRefines{MeshComplex_3InTriangulation_3} -\cgalHasModel `CGAL::Mesh_complex_3_in_triangulation_3` +\cgalHasModelsBegin CGAL::Mesh_complex_3_in_triangulation_3 +\cgalHasModelsEnd \sa `MeshComplex_3InTriangulation_3` \sa `MeshDomainWithFeatures_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h index c3b1696a58d..fa640570e27 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h @@ -42,7 +42,8 @@ the current approximation of each subdomain and each boundary surface patch. The data structure encodes the final mesh at the end of the meshing process. -\cgalHasModel `CGAL::Mesh_complex_3_in_triangulation_3` +\cgalHasModelsBegin CGAL::Mesh_complex_3_in_triangulation_3 +\cgalHasModelsEnd \sa `MeshDomain_3` \sa `MeshComplexWithFeatures_3InTriangulation_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h index ff424c1281d..50ac974f979 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h @@ -18,10 +18,11 @@ of the triangulation that are surface facets. \cgalRefines{TriangulationCellBase_3,CopyConstructible} -\cgalHasModel `CGAL::Compact_mesh_cell_base_3` -\cgalHasModel `CGAL::Mesh_cell_base_3` -\cgalHasModel `CGAL::Simplicial_mesh_cell_base_3` -\cgalHasModel `CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3` +\cgalHasModelsBegin CGAL::Compact_mesh_cell_base_3 +\cgalHasModels CGAL::Mesh_cell_base_3 +\cgalHasModels CGAL::Simplicial_mesh_cell_base_3 +\cgalHasModels CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3 +\cgalHasModelsEnd */ diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h index ad034bbb982..938ce50e7e2 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h @@ -16,9 +16,10 @@ and to an index characteristic of this face. \cgalRefines{TriangulationVertexBase_3} -\cgalHasModel `CGAL::Mesh_vertex_base_3` -\cgalHasModel `CGAL::Simplicial_mesh_vertex_base_3` -\cgalHasModel `CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3` +\cgalHasModelsBegin CGAL::Mesh_vertex_base_3 +\cgalHasModels CGAL::Simplicial_mesh_vertex_base_3 +\cgalHasModels CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3 +\cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h index 8235e55f4f0..4c700b18520 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h @@ -6,8 +6,9 @@ The concept `Descriptor` allows to describe a unique object in an abstract model \cgalRefines{DefaultConstructible,CopyConstructible,Assignable,EqualityComparable} -\cgalHasModel `Index` -\cgalHasModel `Handle` +\cgalHasModelsBegin Index +\cgalHasModels Handle +\cgalHasModelsEnd */ class Descriptor {}; diff --git a/STL_Extension/doc/STL_Extension/Concepts/Hashable.h b/STL_Extension/doc/STL_Extension/Concepts/Hashable.h index 3c7f0b5cf71..ab5c0429a90 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Hashable.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Hashable.h @@ -6,10 +6,8 @@ A type `Key` is a model of the concept `Hashable` if the specializations `boost::hash` and `std::hash` exist. -\cgalHasModel All handles and indices of \cgal data structures. -\cgalHasModel All handles of OpenMesh, by including the specializations -of the `graph_traits` header files provided by \cgal. -They can be disables by defining the macro `CGAL_DISABLE_HASH_OPENMESH`. +\cgalHasModelsBare{All handles and indices of \cgal data structures, + All handles of OpenMesh\, by including the specializations of the `graph_traits` header files provided by \cgal. They can be disables by defining the macro `CGAL_DISABLE_HASH_OPENMESH`.} \sa `CGAL::Unique_hash_map` \sa `std::unordered_set` diff --git a/STL_Extension/doc/STL_Extension/Concepts/Index.h b/STL_Extension/doc/STL_Extension/Concepts/Index.h index 544e714fa8a..c94791cd287 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Index.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Index.h @@ -6,8 +6,9 @@ The concept `Index` is a refinement of `Descriptor` which must be convertible fr \cgalRefines{Descriptor} -\cgalHasModel int -\cgalHasModel size_t +\cgalHasModelsBegin int +\cgalHasModels size_t +\cgalHasModelsEnd \cgalHeading{Notation} diff --git a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h index 3a285603271..00f421a6c67 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h +++ b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h @@ -12,19 +12,20 @@ The concept `ProjectionObject` is modeled after the STL concept `UnaryFunction`, but takes also care of (const) references. -\cgalHasModel CGAL::Identity -\cgalHasModel CGAL::Dereference -\cgalHasModel CGAL::Get_address -\cgalHasModel CGAL::Cast_function_object -\cgalHasModel CGAL::Project_vertex -\cgalHasModel CGAL::Project_facet -\cgalHasModel CGAL::Project_point -\cgalHasModel CGAL::Project_normal -\cgalHasModel CGAL::Project_plane -\cgalHasModel CGAL::Project_next -\cgalHasModel CGAL::Project_prev -\cgalHasModel CGAL::Project_next_opposite -\cgalHasModel CGAL::Project_opposite_prev +\cgalHasModelsBegin CGAL::Identity +\cgalHasModels CGAL::Dereference +\cgalHasModels CGAL::Get_address +\cgalHasModels CGAL::Cast_function_object +\cgalHasModels CGAL::Project_vertex +\cgalHasModels CGAL::Project_facet +\cgalHasModels CGAL::Project_point +\cgalHasModels CGAL::Project_normal +\cgalHasModels CGAL::Project_plane +\cgalHasModels CGAL::Project_next +\cgalHasModels CGAL::Project_prev +\cgalHasModels CGAL::Project_next_opposite +\cgalHasModels CGAL::Project_opposite_prev +\cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h index e11d85a35a1..02e8a321150 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h +++ b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h @@ -21,7 +21,8 @@ We call `S` the surjective function such that `S(object)` is the \"thing\" that is locked when one tries to lock `object`. In the previous example, `S(point)` is the voxel containing `point`. -\cgalHasModel `CGAL::Spatial_lock_grid_3` +\cgalHasModelsBegin CGAL::Spatial_lock_grid_3 +\cgalHasModelsEnd */ class SurjectiveLockDataStructure { diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h index e083e399ac7..35367ad681f 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h @@ -11,8 +11,9 @@ namespace Scale_space_reconstruction_3 { * A mesher is a functor that can be applied to a range of * points and that returns a set of facets. * - * \cgalHasModel CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher - * \cgalHasModel CGAL::Scale_space_reconstruction_3::Advancing_front_mesher + * \cgalHasModelsBegin CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher + * \cgalHasModels CGAL::Scale_space_reconstruction_3::Advancing_front_mesher + * \cgalHasModelsEnd * */ class Mesher diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h index 0cfdd7b5499..326cc4ff2df 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h @@ -15,8 +15,9 @@ namespace Scale_space_reconstruction_3 { * \note the functor can be applied several times by the scale space * reconstruction algorithm. * - * \cgalHasModel CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother - * \cgalHasModel CGAL::Scale_space_reconstruction_3::Jet_smoother + * \cgalHasModelsBegin CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother + * \cgalHasModels CGAL::Scale_space_reconstruction_3::Jet_smoother + * \cgalHasModelsEnd */ class Smoother { diff --git a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h index 71373681e98..f61385ec589 100644 --- a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h +++ b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h @@ -9,12 +9,13 @@ the keys and intervals, and provide comparison functions that 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` +\cgalHasModelsBegin CGAL::Range_segment_tree_set_traits_2 +\cgalHasModels CGAL::Range_segment_tree_set_traits_3 +\cgalHasModels CGAL::Range_tree_map_traits_2 +\cgalHasModels CGAL::Range_tree_map_traits_3 +\cgalHasModels CGAL::Segment_tree_map_traits_2 +\cgalHasModels CGAL::Segment_tree_map_traits_3 +\cgalHasModelsEnd \cgalHeading{Example} diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h index 566beb42485..f5be21ae15e 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h @@ -33,7 +33,8 @@ We only describe the additional requirements with respect to the \cgalRefines{ApolloniusGraphDataStructure_2} -\cgalHasModel `CGAL::Triangulation_data_structure_2` +\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `ApolloniusGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h index 4b96dab0907..ee8181103a4 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h @@ -9,7 +9,8 @@ requirements for the face base class of the \cgalRefines{TriangulationFaceBase_2} -\cgalHasModel `CGAL::Segment_Delaunay_graph_face_base_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_face_base_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h index 7ab5a65a26b..d53cbd55ccf 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h @@ -26,7 +26,8 @@ The `SegmentDelaunayGraphHierarchyVertexBase_2` concept does not introduce any constructors in addition to those of the `SegmentDelaunayGraphVertexBase_2` concept. -\cgalHasModel CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 > +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 > +\cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` \sa `SegmentDelaunayGraphVertexBase_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h index 5370b1b3026..99d6bf2ca9e 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h @@ -8,7 +8,8 @@ requirements for the sites of a segment Delaunay graph. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Segment_Delaunay_graph_site_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_site_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` \sa `CGAL::Segment_Delaunay_graph_site_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h index 3f391babafa..d79098a554c 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h @@ -11,7 +11,8 @@ by storing handles to points instead of points. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Segment_Delaunay_graph_storage_site_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_storage_site_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` \sa `CGAL::Segment_Delaunay_graph_site_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h index 78e8bda7d6e..e4866423c15 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h @@ -15,7 +15,8 @@ See section \ref Segment_Delaunay_graph_2StronglyIntersecting for more informati \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Segment_Delaunay_graph_storage_traits_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_storage_traits_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` */ diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h index e68b4212b19..78e56ed2f6c 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h @@ -14,10 +14,11 @@ the concept `SegmentDelaunayGraphSite_2`. It also provides constructions for sites and several function object types for the predicates. -\cgalHasModel `CGAL::Segment_Delaunay_graph_traits_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_traits_without_intersections_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_filtered_traits_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_traits_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_traits_without_intersections_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_filtered_traits_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` \sa `CGAL::Segment_Delaunay_graph_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h index 778a709b5a6..48097737f24 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h @@ -11,7 +11,8 @@ requirements for the vertex base class of the site of the segment Delaunay graph and provides access to one of its incident faces through a `Face_handle`. -\cgalHasModel `CGAL::Segment_Delaunay_graph_vertex_base_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_vertex_base_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` \sa `SegmentDelaunayGraphSite_2` diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h index 4a4a626b8eb..4a8ec7f78fc 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h @@ -36,10 +36,11 @@ with respect to the \cgalRefines{SegmentDelaunayGraphTraits_2} -\cgalHasModel `CGAL::Segment_Delaunay_graph_Linf_traits_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2` +\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_Linf_traits_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2 +\cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` \sa `CGAL::Segment_Delaunay_graph_Linf_2` diff --git a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h index 4f0424d9664..cb1e7eed119 100644 --- a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h +++ b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h @@ -7,7 +7,7 @@ \cgalRefines{DefaultConstructible,PolygonTraits_2} - \cgalHasModel Any CGAL kernel, e.g., CGAL::Exact_predicates_exact_constructions_kernel. + \cgalHasModelsBare{Any CGAL kernel, e.g., CGAL::Exact_predicates_exact_constructions_kernel.} */ diff --git a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h index 5441f324e94..e581f066cb6 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h +++ b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h @@ -12,8 +12,8 @@ input data has to be provided in form of a random access iterator. Point and normal property maps have to be provided to extract the points and the normals from the input. -\cgalHasModel -- `CGAL::Shape_detection::Efficient_RANSAC_traits` +\cgalHasModelsBegin CGAL::Shape_detection::Efficient_RANSAC_traits +\cgalHasModelsEnd */ class EfficientRANSACTraits{ diff --git a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h index 5495e5d0c9a..88df769ec09 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h +++ b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h @@ -5,11 +5,11 @@ A concept that describes the set of methods used by the `CGAL::Shape_detection::Region_growing` to access neighbors of an item. -\cgalHasModel -- `CGAL::Shape_detection::Point_set::K_neighbor_query` -- `CGAL::Shape_detection::Point_set::Sphere_neighbor_query` -- `CGAL::Shape_detection::Polygon_mesh::Polyline_graph` -- `CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query` +\cgalHasModelsBegin CGAL::Shape_detection::Point_set::K_neighbor_query +\cgalHasModels CGAL::Shape_detection::Point_set::Sphere_neighbor_query +\cgalHasModels CGAL::Shape_detection::Polygon_mesh::Polyline_graph +\cgalHasModels CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query +\cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h index f1366dc8aba..af3212c6759 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h +++ b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h @@ -7,14 +7,14 @@ to maintain a region. A region is represented by a set items, which are included in this region. -\cgalHasModel -- `CGAL::Shape_detection::Point_set::Least_squares_line_fit_region` -- `CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region` -- `CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region` -- `CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region` -- `CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region` -- `CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region` -- `CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region` +\cgalHasModelsBegin CGAL::Shape_detection::Point_set::Least_squares_line_fit_region +\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region +\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region +\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region +\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region +\cgalHasModels CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region +\cgalHasModels CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region +\cgalHasModelsEnd */ class RegionType { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h index f0e4a54c1a1..9ed67563fdc 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h @@ -10,10 +10,10 @@ a model of this concept, the user sets such directions and provides a way to ori contour edges towards these directions. All contour regularization functions in this package are parameterized by this concept. -\cgalHasModel -- `Contours::Longest_direction_2` -- `Contours::Multiple_directions_2` -- `Contours::User_defined_directions_2` +\cgalHasModelsBegin Contours::Longest_direction_2 +\cgalHasModels Contours::Multiple_directions_2 +\cgalHasModels Contours::User_defined_directions_2 +\cgalHasModelsEnd */ class ContourDirections { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h index 4d8074eee9d..20dbf1801e1 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h @@ -9,8 +9,8 @@ A concept that describes the set of methods used by the class `QP_regularization` to access neighbors of a geometric object being regularized. -\cgalHasModel -- `Segments::Delaunay_neighbor_query_2` +\cgalHasModelsBegin Segments::Delaunay_neighbor_query_2 +\cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h index eb3a764af8e..ab3bbb08b7b 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h @@ -9,9 +9,9 @@ A concept that describes the set of methods used by the class `QP_regularization` to access various data required for setting up the the global regularization problem. -\cgalHasModel -- `Segments::Angle_regularization_2` -- `Segments::Offset_regularization_2` +\cgalHasModelsBegin Segments::Angle_regularization_2 +\cgalHasModels Segments::Offset_regularization_2 +\cgalHasModelsEnd */ class RegularizationType { diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h index 6551020f4f0..180cbeeb64d 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h @@ -10,7 +10,8 @@ polyhedral mesh approximating a skin surface \cgalRefines{RegularTriangulationTraits_3} -\cgalHasModel `CGAL::Skin_surface_traits_3` +\cgalHasModelsBegin CGAL::Skin_surface_traits_3 +\cgalHasModelsEnd \sa `CGAL::Skin_surface_3` \sa `CGAL::Skin_surface_traits_3` diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h index a4dad53d72e..237a5d3049d 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h @@ -9,8 +9,9 @@ The concept requires a constructor from an iterator range of weighted points and a shrink factor. By default the input balls are grown in such that the skin surface wraps around the input balls. -\cgalHasModel `CGAL::Skin_surface_3` -\cgalHasModel `CGAL::Union_of_balls_3` +\cgalHasModelsBegin CGAL::Skin_surface_3 +\cgalHasModels CGAL::Union_of_balls_3 +\cgalHasModelsEnd */ diff --git a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h index 0138ce98d6b..163d17faa16 100644 --- a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h +++ b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h @@ -11,7 +11,8 @@ some function object types for the required predicates on those primitives. \cgalRefines{ArrangementTraits_2} -\cgalHasModel `CGAL::Snap_rounding_traits_2` +\cgalHasModelsBegin CGAL::Snap_rounding_traits_2 +\cgalHasModelsEnd */ class SnapRoundingTraits_2 { @@ -171,7 +172,7 @@ namespace SRTraits_2{ \cgalConcept Represents an iso rectangle \cgalRefines{DefaultConstructible,CopyConstructible,Assignable} - \cgalHasModel \link SnapRoundingTraits_2::Iso_rectangle_2 `Snap_rounding_traits_2::Iso_rectangle_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Iso_rectangle_2 `Snap_rounding_traits_2::Iso_rectangle_2` \endlink} */ class IsoRectangle_2 {}; @@ -180,7 +181,7 @@ class IsoRectangle_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Construct_vertex_2 `Snap_rounding_traits_2::Construct_vertex_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_vertex_2 `Snap_rounding_traits_2::Construct_vertex_2` \endlink} */ class ConstructVertex_2 { @@ -197,7 +198,7 @@ class ConstructVertex_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Construct_segment_2 `Snap_rounding_traits_2::Construct_segment_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_segment_2 `Snap_rounding_traits_2::Construct_segment_2` \endlink} */ class ConstructSegment_2 { @@ -214,7 +215,7 @@ class ConstructSegment_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableQuaternaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Construct_iso_rectangle_2 `Snap_rounding_traits_2::Construct_iso_rectangle_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_iso_rectangle_2 `Snap_rounding_traits_2::Construct_iso_rectangle_2` \endlink} */ class ConstructIsoRectangle_2 { @@ -235,7 +236,7 @@ class ConstructIsoRectangle_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Compare_x_2 `Snap_rounding_traits_2::Compare_x_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Compare_x_2 `Snap_rounding_traits_2::Compare_x_2` \endlink} */ class CompareX_2 { @@ -251,7 +252,7 @@ class CompareX_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Compare_y_2 `Snap_rounding_traits_2::Compare_y_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Compare_y_2 `Snap_rounding_traits_2::Compare_y_2` \endlink} */ class CompareY_2 { @@ -268,7 +269,7 @@ class CompareY_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableQuaternaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Snap_2 `Snap_rounding_traits_2::Snap_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Snap_2 `Snap_rounding_traits_2::Snap_2` \endlink} */ class Snap_2 { @@ -287,7 +288,7 @@ class Snap_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Integer_grid_point_2 `Snap_rounding_traits_2::Integer_grid_point_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Integer_grid_point_2 `Snap_rounding_traits_2::Integer_grid_point_2` \endlink} */ class IntegerGridPoint_2 @@ -308,7 +309,7 @@ class IntegerGridPoint_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableTernaryFunction} - \cgalHasModel \link SnapRoundingTraits_2::Minkowski_sum_with_pixel_2 `Snap_rounding_traits_2::Minkowski_sum_with_pixel_2` \endlink + \cgalHasModelsBare{\link SnapRoundingTraits_2::Minkowski_sum_with_pixel_2 `Snap_rounding_traits_2::Minkowski_sum_with_pixel_2` \endlink} */ class MinkowskiSumWithPixel_2 { diff --git a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h index 7b00e83e119..41594f6cbfe 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h @@ -19,7 +19,8 @@ follows: \tparam FT Number type \tparam dim Dimension of the matrices and vectors -\cgalHasModel `CGAL::Eigen_diagonalize_traits` +\cgalHasModelsBegin CGAL::Eigen_diagonalize_traits +\cgalHasModelsEnd */ template class DiagonalizeTraits diff --git a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h index 8504337f1fc..015153dd324 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h @@ -7,7 +7,8 @@ class MixedIntegerProgramTraits `MixedIntegerProgramVariable` is a concept of a variable in a Mixed Integer Programming (MIP) problem. -\cgalHasModel `CGAL::Variable` +\cgalHasModelsBegin CGAL::Variable +\cgalHasModelsEnd */ template class MixedIntegerProgramVariable @@ -112,7 +113,8 @@ public: `MixedIntegerProgramLinearConstraint` is a concept of a linear constraint in a Mixed Integer Programming (MIP) problem. -\cgalHasModel `CGAL::Linear_constraint` +\cgalHasModelsBegin CGAL::Linear_constraint +\cgalHasModelsEnd */ template class MixedIntegerProgramLinearConstraint @@ -209,7 +211,8 @@ public: `MixedIntegerProgramLinearObjective` is a concept of the linear objective function in a Mixed Integer Programming (MIP) problem. -\cgalHasModel `CGAL::Linear_objective` +\cgalHasModelsBegin CGAL::Linear_objective +\cgalHasModelsEnd */ template class MixedIntegerProgramLinearObjective @@ -277,9 +280,10 @@ Mixed Integer Programming (MIP) problems. A model of this concept stores the int variables, linear objective, and linear constraints (if any) and provides a method to solve the problem. -\cgalHasModel `CGAL::Mixed_integer_program_traits` -\cgalHasModel `CGAL::GLPK_mixed_integer_program_traits` -\cgalHasModel `CGAL::SCIP_mixed_integer_program_traits` +\cgalHasModelsBegin CGAL::Mixed_integer_program_traits +\cgalHasModels CGAL::GLPK_mixed_integer_program_traits +\cgalHasModels CGAL::SCIP_mixed_integer_program_traits +\cgalHasModelsEnd */ template class MixedIntegerProgramTraits diff --git a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h index 36c16f629ea..07781ed7265 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h @@ -7,7 +7,8 @@ Concept describing the set of requirements for solving the normal equation \f$ A \sa `SparseLinearAlgebraTraits_d` -\cgalHasModel `CGAL::Eigen_solver_traits` +\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsEnd */ class NormalEquationSparseLinearAlgebraTraits_d { diff --git a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h index 189f0da26b7..f929f231c7b 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h @@ -24,8 +24,8 @@ where \f$ l_i \in \mathbb{R} \cup \{-\infty\} \f$ for all \f$ i \f$, where \f$ u_i \in \mathbb{R} \cup \{+\infty\} \f$ for all \f$ i \f$. -\cgalHasModel -`CGAL::OSQP_quadratic_program_traits` +\cgalHasModelsBegin CGAL::OSQP_quadratic_program_traits +\cgalHasModelsEnd */ class QuadraticProgramTraits { diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h index e0555447812..7c04f914bd4 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h @@ -4,7 +4,8 @@ The concept `SparseLinearAlgebraTraits_d` is used to solve sparse linear systems A\f$ \times \f$ X = B. -\cgalHasModel `CGAL::Eigen_solver_traits` +\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsEnd */ class SparseLinearAlgebraTraits_d { @@ -62,7 +63,8 @@ by a sparse matrix. \cgalRefines{DefaultConstructible} -\cgalHasModel `CGAL::Eigen_vector` +\cgalHasModelsBegin CGAL::Eigen_vector +\cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` \sa `SparseLinearAlgebraTraits_d::Matrix` @@ -129,8 +131,9 @@ NT& operator[](Index row); \cgalRefines{Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Eigen_sparse_matrix` -\cgalHasModel `CGAL::Eigen_sparse_symmetric_matrix` +\cgalHasModelsBegin CGAL::Eigen_sparse_matrix +\cgalHasModels CGAL::Eigen_sparse_symmetric_matrix +\cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` \sa `SparseLinearAlgebraTraits_d::Vector` diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h index 0313402d356..34df486f1e6 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h @@ -8,7 +8,8 @@ method to solve the system for different right-hand vectors. \cgalRefines{SparseLinearAlgebraTraits_d} -\cgalHasModel `CGAL::Eigen_solver_traits` +\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsEnd */ class SparseLinearAlgebraWithFactorTraits_d { public: diff --git a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h index 939b29a4959..2c843090296 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h @@ -5,7 +5,8 @@ The concept `SvdTraits` describes the linear algebra types and algorithms needed to solve in the least square sense a linear system with a singular value decomposition - \cgalHasModel `CGAL::Eigen_svd` +\cgalHasModelsBegin galHasModel `CGAL::Eigen_svd +\cgalHasModelsEnd */ class SvdTraits { @@ -51,7 +52,8 @@ public: \cgalConcept Concept of vector type used by the concept `SvdTraits`. -\cgalHasModel `CGAL::Eigen_vector` +\cgalHasModelsBegin CGAL::Eigen_vector +\cgalHasModelsEnd */ class SvdTraits::Vector { @@ -88,7 +90,8 @@ Concept of matrix type used by the concept `SvdTraits`. \cgalRefines{DefaultConstructible,Assignable} -\cgalHasModel `CGAL::Eigen_matrix` +\cgalHasModelsBegin CGAL::Eigen_matrix +\cgalHasModelsEnd */ class SvdTraits::Matrix { diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h index a8aa2640a2c..4e0837b36be 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h @@ -4,8 +4,9 @@ The concept `FuzzyQueryItem` describes the requirements for fuzzy `d`-dimensional spatial objects. -\cgalHasModel `CGAL::Fuzzy_sphere` +\cgalHasModelsBegin CGAL::Fuzzy_sphere \cgalHasModel `CGAL::Fuzzy_iso_box` +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h index fd72ee75e07..7a8506131f6 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h @@ -8,8 +8,9 @@ To optimize distance computations transformed distances are used, e.g., for a Euclidean distance the transformed distance is the squared Euclidean distance. -\cgalHasModel `CGAL::Manhattan_distance_iso_box_point` -\cgalHasModel `CGAL::Euclidean_distance_sphere_point` +\cgalHasModelsBegin CGAL::Manhattan_distance_iso_box_point +\cgalHasModels CGAL::Euclidean_distance_sphere_point +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h index d2a398589d8..b2f826e4074 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h @@ -8,8 +8,9 @@ E.g., for an Euclidean distance the transformed distance is the squared Euclidea \cgalRefines{GeneralDistance} -\cgalHasModel `CGAL::Euclidean_distance` -\cgalHasModel `CGAL::Weighted_Minkowski_distance` +\cgalHasModelsBegin CGAL::Euclidean_distance +\cgalHasModels CGAL::Weighted_Minkowski_distance +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h index 5e7e310f0a5..feb9af6f79e 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h @@ -8,12 +8,13 @@ range search queries in a model of `SpatialTree`. \cgalRefines{SearchTraits} -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` -\cgalHasModel `CGAL::Search_traits_2` -\cgalHasModel `CGAL::Search_traits_3` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModels CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModels CGAL::Search_traits_2 +\cgalHasModels CGAL::Search_traits_3 +\cgalHasModelsEnd \sa `SearchTraits` \sa `CGAL::Search_traits_adapter` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h index df585ebf4fc..96857238a64 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h @@ -5,7 +5,7 @@ The concept `SearchGeomTraits_2` defines the requirements for the template parameter of the search traits classes. -\cgalHasModel Any \cgal Kernel +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} */ class SearchGeomTraits_2 { diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h index 243277705d8..85191a1b096 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h @@ -5,7 +5,7 @@ The concept `SearchGeomTraits_3` defines the requirements for the template parameter of the search traits classes. -\cgalHasModel All models of the concept `Kernel` +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h index 65240b519ce..6bfe70109e0 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h @@ -5,14 +5,15 @@ The concept `SearchTraits` defines the requirements for the template parameter of the search classes. -\cgalHasModel `CGAL::Cartesian_d` -\cgalHasModel `CGAL::Homogeneous_d` -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` -\cgalHasModel `CGAL::Search_traits_2` -\cgalHasModel `CGAL::Search_traits_3` -\cgalHasModel `CGAL::Search_traits_d` -\cgalHasModel `CGAL::Search_traits` +\cgalHasModelsBegin CGAL::Cartesian_d +\cgalHasModels CGAL::Homogeneous_d +\cgalHasModels CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModels CGAL::Search_traits_2 +\cgalHasModels CGAL::Search_traits_3 +\cgalHasModels CGAL::Search_traits_d +\cgalHasModels CGAL::Search_traits +\cgalHasModelsEnd \sa `RangeSearchTraits` \sa `CGAL::Search_traits_adapter` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h index 271d102b067..ecdc521ce9f 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h @@ -11,7 +11,8 @@ space is said to be on the negative side of the separator and the other part of space is said to be on the positive side of the separator. -\cgalHasModel `CGAL::Plane_separator` +\cgalHasModelsBegin CGAL::Plane_separator +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h index 6ff8b6d31b0..58d396cec22 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h @@ -5,7 +5,8 @@ The concept `SpatialTree` defines the requirements for a tree supporting both neighbor searching and approximate range searching. -\cgalHasModel `CGAL::Kd_tree` +\cgalHasModelsBegin CGAL::Kd_tree +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h index ee553429837..88a18887640 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h @@ -7,13 +7,14 @@ The concept `Splitter` defines the requirements for a function object class implementing a splitting rule. \cgalAdvancedEnd -\cgalHasModel `CGAL::Fair` -\cgalHasModel `CGAL::Median_of_rectangle` -\cgalHasModel `CGAL::Median_of_max_spread` -\cgalHasModel `CGAL::Midpoint_of_rectangle` -\cgalHasModel `CGAL::Midpoint_of_max_spread` -\cgalHasModel `CGAL::Sliding_fair` -\cgalHasModel `CGAL::Sliding_midpoint` +\cgalHasModelsBegin CGAL::Fair +\cgalHasModels CGAL::Median_of_rectangle +\cgalHasModels CGAL::Median_of_max_spread +\cgalHasModels CGAL::Midpoint_of_rectangle +\cgalHasModels CGAL::Midpoint_of_max_spread +\cgalHasModels CGAL::Sliding_fair +\cgalHasModels CGAL::Sliding_midpoint +\cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h index e2bb9ee8881..8a48e705bd0 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h @@ -9,8 +9,8 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_2` defines the complete set of primitives required in these functions and functors. -\cgalHasModel Any \cgal kernel. -\cgalHasModel `CGAL::Spatial_sort_traits_adapter_2` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Spatial_sort_traits_adapter_2 +\cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h index 7fad8da4666..2cef4c17269 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h @@ -9,8 +9,8 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_3` defines the complete set of primitives required in these functions and functors. -\cgalHasModel Any \cgal kernel. -\cgalHasModel `CGAL::Spatial_sort_traits_adapter_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Spatial_sort_traits_adapter_3 +\cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h index c91e76a99cd..a0c4dfd031d 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h @@ -9,8 +9,8 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_d` defines the complete set of primitives required in these functions and functors. -\cgalHasModel Any \cgal `d`-dimensional kernel. -\cgalHasModel `CGAL::Spatial_sort_traits_adapter_d` +\cgalHasModelsBareBegin{Any \cgal `d`-dimensional kernel.} CGAL::Spatial_sort_traits_adapter_d +\cgalHasModelsEnd */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h index d0c364262cb..15aa1efc7da 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h @@ -7,7 +7,8 @@ The concept `PolygonOffsetBuilderTraits_2` describes the requirements for the geometric traits class required by the algorithm class `CGAL::Polygon_offset_builder_2`. -\cgalHasModel `CGAL::Polygon_offset_builder_traits_2` +\cgalHasModelsBegin CGAL::Polygon_offset_builder_traits_2 +\cgalHasModelsEnd \sa `CGAL::Polygon_offset_builder_2` */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h index f971c1c880c..a19486171c4 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h @@ -7,7 +7,8 @@ The concept `StraightSkeletonBuilderTraits_2` describes the requirements for the geometric traits class required by the algorithm class `CGAL::Straight_skeleton_builder_2`. -\cgalHasModel `CGAL::Straight_skeleton_builder_traits_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_builder_traits_2 +\cgalHasModelsEnd */ class StraightSkeletonBuilderTraits_2 { public: diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h index 4860b9ab6b8..316fbc4b0e0 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h @@ -5,7 +5,8 @@ The concept `StraightSkeletonBuilder_2_Visitor` describes the requirements of the visitor class required by the algorithm class `CGAL::Straight_skeleton_builder_2` in its third template parameter. -\cgalHasModel `CGAL::Dummy_straight_skeleton_builder_2_visitor` +\cgalHasModelsBegin CGAL::Dummy_straight_skeleton_builder_2_visitor +\cgalHasModelsEnd \sa `CGAL::Straight_skeleton_builder_2` */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h index 311987667fb..16bf5a396b5 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h @@ -8,7 +8,8 @@ The concept `StraightSkeletonFace_2` describes the requirements for the face typ `StraightSkeleton_2` concept. It is a refinement of the `HalfedgeDSFace` concept with support for storage of the incident halfedge. -\cgalHasModel `CGAL::Straight_skeleton_face_base_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_face_base_2 +\cgalHasModelsEnd \sa `StraightSkeletonVertex_2` \sa `StraightSkeletonHalfedge_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h index 6225e4f613f..22caa9419c0 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h @@ -12,7 +12,8 @@ The only geometric embedding used by the Straight Skeleton Data Structure are th in the contour and skeleton vertices. However, for any halfedge, there is a 2D segment implicitly given by its `source` and `target` vertices. -\cgalHasModel `CGAL::Straight_skeleton_halfedge_base_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_halfedge_base_2 +\cgalHasModelsEnd \sa `StraightSkeleton_2` \sa `StraightSkeletonHalfedge_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h index 55f5c799095..a95688dc6e7 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h @@ -6,7 +6,8 @@ The concept `StraightSkeletonItemsConverter_2` describes the requirements for it as the third template argument to the class `Straight_skeleton_converter_2`. It converts the `HDS` items from one type of straight skeleton to another. -\cgalHasModel `CGAL::Straight_skeleton_items_converter_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_items_converter_2 +\cgalHasModelsEnd \sa `CGAL::Straight_skeleton_converter_2` */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h index 7a26285dccf..a53a002940e 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h @@ -9,7 +9,8 @@ The concept `StraightSkeletonVertex_2` describes the requirements for the vertex with support for storage of the incident halfedge. The `StraightSkeletonVertex_2` concept requires the geometric embedding to be a 2D point. -\cgalHasModel `CGAL::Straight_skeleton_vertex_base_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_vertex_base_2 +\cgalHasModelsEnd \sa `StraightSkeletonHalfedge_2` \sa `StraightSkeletonFace_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h index 18a85973c5b..52dcfe61484 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h @@ -9,7 +9,8 @@ used to represent a straight skeleton. It refines the concept `HalfedgeDS` and adds additional requirements on the nested types `Vertex`, `Halfedge`, and `Face` of the halfedge data structure. -\cgalHasModel `CGAL::Straight_skeleton_2` +\cgalHasModelsBegin CGAL::Straight_skeleton_2 +\cgalHasModelsEnd \attention This concept explicitly protects all the modifying operations of the base `HalfedgeDS` concept. Only the algorithm diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h index ec96722d926..6f001fda04e 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h @@ -9,8 +9,9 @@ the second template parameter of the class provides the operation that integrates a new point from a given point with a predefined step, and according to a specified vector. -\cgalHasModel `CGAL::Euler_integrator_2` -\cgalHasModel `CGAL::Runge_kutta_integrator_2` +\cgalHasModelsBegin CGAL::Euler_integrator_2 +\cgalHasModels CGAL::Runge_kutta_integrator_2 +\cgalHasModelsEnd */ diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h index a55c74b6ac2..e1394b70945 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h @@ -9,7 +9,7 @@ the template parameter of the class This concept provides the types handled by the `CGAL::Stream_lines_2` class. -\cgalHasModel The kernels of \cgal are models for this traits class. +\cgalHasModelsBare{The kernels of \cgal are models for this traits class.} */ class StreamLinesTraits_2 { diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h index 9b44da48a2f..b42a88dba95 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h @@ -9,8 +9,9 @@ the first template parameter of the class provides the types of the geometric primitives used in the placement of streamlines and some functions for answering different queries. -\cgalHasModel `CGAL::Regular_grid_2` -\cgalHasModel `CGAL::Triangular_field_2` +\cgalHasModelsBegin CGAL::Regular_grid_2 +\cgalHasModels CGAL::Triangular_field_2 +\cgalHasModelsEnd */ diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h index c5a06d95618..2a0e662a0e8 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h @@ -11,7 +11,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModel `CGAL::DooSabin_mask_3` +\cgalHasModelsBegin CGAL::DooSabin_mask_3 +\cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h index bb28f171b02..22c59d45ad2 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h @@ -11,7 +11,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModel `CGAL::CatmullClark_mask_3` +\cgalHasModelsBegin CGAL::CatmullClark_mask_3 +\cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h index 6050b444ad3..2faff045bd6 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h @@ -10,7 +10,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModel `CGAL::Loop_mask_3` +\cgalHasModelsBegin CGAL::Loop_mask_3 +\cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` */ diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h index ee5fc38d907..ed311db671a 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h @@ -9,7 +9,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModel `CGAL::Sqrt3_mask_3` +\cgalHasModelsBegin CGAL::Sqrt3_mask_3 +\cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h index f84b271c289..68364e07863 100644 --- a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h +++ b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h @@ -6,8 +6,9 @@ The concept `ErrorMetricProxy` defines the notion of proxy, computes the fitting error from a face to a proxy, and fits a proxy from a range of faces. -\cgalHasModel `CGAL::Surface_mesh_approximation::L21_metric_plane_proxy` -\cgalHasModel `CGAL::Surface_mesh_approximation::L2_metric_plane_proxy` +\cgalHasModelsBegin CGAL::Surface_mesh_approximation::L21_metric_plane_proxy +\cgalHasModels CGAL::Surface_mesh_approximation::L2_metric_plane_proxy +\cgalHasModelsEnd */ class ErrorMetricProxy { diff --git a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h index a8dbb00b46b..65137707986 100644 --- a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h +++ b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h @@ -9,8 +9,9 @@ to implement models of this concept. \cgalRefines{DefaultConstructible} -\cgalHasModel `CGAL::Deformation_Eigen_closest_rotation_traits_3` -\cgalHasModel `CGAL::Deformation_Eigen_polar_closest_rotation_traits_3` +\cgalHasModelsBegin CGAL::Deformation_Eigen_closest_rotation_traits_3 +\cgalHasModels CGAL::Deformation_Eigen_polar_closest_rotation_traits_3 +\cgalHasModelsEnd */ class DeformationClosestRotationTraits_3{ diff --git a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h index 32a71b17f71..67002d031ae 100644 --- a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h +++ b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h @@ -12,16 +12,17 @@ the border of a given mesh. Construction and destruction are undefined. -\cgalHasModel `CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3` -\cgalHasModel `CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3` +\cgalHasModelsBegin CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3 +\cgalHasModels CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3 +\cgalHasModelsEnd \sa `CGAL::Surface_mesh_parameterization::Orbifold_Tutte_parameterizer_3` */ diff --git a/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h b/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h index 93450589cfc..2e0a58fa0a2 100644 --- a/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h +++ b/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h @@ -5,7 +5,7 @@ The concept `SegmentationGeomTraits` describes the set of requirements of the geometric traits needed by the segmentation functions. -\cgalHasModel All the \cgal Kernels +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \cgalRefines{AABBGeomTraits} diff --git a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h index 652c3457496..51d4ae712eb 100644 --- a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h +++ b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h @@ -8,7 +8,8 @@ predicates, and constructions required by the traits class parameter of `CGAL::Surface_mesh_shortest_path`. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModel `CGAL::Surface_mesh_shortest_path_traits` +\cgalHasModelsBegin CGAL::Surface_mesh_shortest_path_traits +\cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h index 24a05f636c2..f31143efcc6 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h @@ -12,9 +12,10 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModel `CGAL::Surface_mesh_simplification::Edge_length_cost` -\cgalHasModel `CGAL::Surface_mesh_simplification::LindstromTurk_cost` -\cgalHasModel `CGAL::Surface_mesh_simplification::GarlandHeckbert_policies` +\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Edge_length_cost +\cgalHasModels CGAL::Surface_mesh_simplification::LindstromTurk_cost +\cgalHasModels CGAL::Surface_mesh_simplification::GarlandHeckbert_policies +\cgalHasModelsEnd */ class GetCost diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h index e576472cb34..bb66ff08d05 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h @@ -14,11 +14,12 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModel `CGAL::Surface_mesh_simplification::Midpoint_placement` -\cgalHasModel `CGAL::Surface_mesh_simplification::LindstromTurk_placement` -\cgalHasModel `CGAL::Surface_mesh_simplification::GarlandHeckbert_policies` -\cgalHasModel `CGAL::Surface_mesh_simplification::Bounded_normal_change_placement` -\cgalHasModel `CGAL::Surface_mesh_simplification::Constrained_placement` +\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Midpoint_placement +\cgalHasModels CGAL::Surface_mesh_simplification::LindstromTurk_placement +\cgalHasModels CGAL::Surface_mesh_simplification::GarlandHeckbert_policies +\cgalHasModels CGAL::Surface_mesh_simplification::Bounded_normal_change_placement +\cgalHasModels CGAL::Surface_mesh_simplification::Constrained_placement +\cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h index 324c87f45ee..b6654407400 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h @@ -14,8 +14,9 @@ be absent). The value `boost::none` indicates that the edge should not be collap \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModel `CGAL::Surface_mesh_simplification::Bounded_normal_change_filter` -\cgalHasModel `CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter` +\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Bounded_normal_change_filter +\cgalHasModels CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter +\cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h index ad5f22d4ccb..df8fc845f5b 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h @@ -4,11 +4,12 @@ The concept `StopPredicate` describes the requirements for the predicate which indicates if the simplification process must finish. -\cgalHasModel `CGAL::Surface_mesh_simplification::Edge_count_stop_predicate` -\cgalHasModel `CGAL::Surface_mesh_simplification::Face_count_stop_predicate` -\cgalHasModel `CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate` -\cgalHasModel `CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate` -\cgalHasModel `CGAL::Surface_mesh_simplification::Edge_length_stop_predicate` +\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Edge_count_stop_predicate +\cgalHasModels CGAL::Surface_mesh_simplification::Face_count_stop_predicate +\cgalHasModels CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate +\cgalHasModels CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate +\cgalHasModels CGAL::Surface_mesh_simplification::Edge_length_stop_predicate +\cgalHasModelsEnd */ class StopPredicate { diff --git a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h index 824b21454e5..b7466a2ecd4 100644 --- a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h +++ b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h @@ -5,7 +5,7 @@ * * Traits class concept defining the requirements of the class `CGAL::Mean_curvature_flow_skeletonization`. * - * \cgalHasModel Any \cgal `Kernel` with `double` as `%Kernel::%FT` + * \cgalHasModelsBare{Any \cgal `Kernel` with `double` as `%Kernel::%FT`} * * */ diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h index 01c344d316c..6f6355c9390 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h @@ -9,8 +9,8 @@ \cgalRefines{GenericMap} - \cgalHasModel \link CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map`\endlink - \cgalHasModel \link CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map`\endlink + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map`\endlink\n + \link CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map`\endlink} */ class PolygonalSchema diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h index 8ee52354e37..0bf077baf42 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h @@ -6,7 +6,7 @@ \cgalRefines{GenericMapItems} - \cgalHasModel \link CGAL::Surface_mesh_topology::Polygonal_schema_min_items `CGAL::Surface_mesh_topology::Polygonal_schema_min_items`\endlink + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_min_items `CGAL::Surface_mesh_topology::Polygonal_schema_min_items`\endlink} */ class PolygonalSchemaItems diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h index 0062dd18e48..4650a313f02 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h @@ -5,8 +5,8 @@ The concept `WeightFunctor` defines a functor to calculate the weight of an edge. - \cgalHasModel \link CGAL::Surface_mesh_topology::Unit_weight_functor `CGAL::Surface_mesh_topology::Unit_weight_functor`\endlink - \cgalHasModel \link CGAL::Surface_mesh_topology::Euclidean_length_weight_functor `CGAL::Surface_mesh_topology::Euclidean_length_weight_functor`\endlink + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Unit_weight_functor `CGAL::Surface_mesh_topology::Unit_weight_functor`\endlink, + \link CGAL::Surface_mesh_topology::Euclidean_length_weight_functor `CGAL::Surface_mesh_topology::Euclidean_length_weight_functor`\endlink} */ class WeightFunctor { public: diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h index a713151a311..319bf352f0c 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h @@ -7,8 +7,8 @@ The concept `ImplicitFunction` describes a function object whose `operator()` computes the values of a function \f$ f : \mathbb{R}^3 \longrightarrow \mathbb{R}\f$. -\cgalHasModel CGAL::Gray_level_image_3 -\cgalHasModel any pointer to a function of type `FT (*)(Point)` +\cgalHasModelsBareBegin{any pointer to a function of type `FT (*)(Point)`} CGAL::Gray_level_image_3 +\cgalHasModelsEnd \sa `CGAL::Implicit_surface_3` \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h index fed39a225af..28814f2648e 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h @@ -15,7 +15,7 @@ the concept `ImplicitSurfaceTraits_3` provides the types, predicates and constru that are passed to the generated model of `SurfaceMeshTraits_3`. -\cgalHasModel Any \cgal Kernel. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `CGAL::Implicit_surface_3` \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h index f418f71e47b..1b16bc506f1 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h @@ -37,8 +37,9 @@ of the restriction to the surface of a three dimensional triangulation. In the following we call surface center of a facet, the center of its biggest Delaunay surface ball. -\cgalHasModel `CGAL::Surface_mesh_cell_base_3` -\cgalHasModel `CGAL::Surface_mesh_default_triangulation_3::Cell` +\cgalHasModelsBegin CGAL::Surface_mesh_cell_base_3 +\cgalHasModels CGAL::Surface_mesh_default_triangulation_3::Cell +\cgalHasModelsEnd \sa `SurfaceMeshTriangulation_3` \sa `SurfaceMeshComplex_2InTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h index 1f8cb4f169f..ec9eba19372 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h @@ -30,7 +30,8 @@ A model of this concept is a type to be plugged as first template parameter in the function template `CGAL::make_surface_mesh()`. -\cgalHasModel `CGAL::Surface_mesh_complex_2_in_triangulation_3` +\cgalHasModelsBegin CGAL::Surface_mesh_complex_2_in_triangulation_3 +\cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h index 28b866387ea..7380607aca0 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h @@ -33,7 +33,8 @@ is just a lexicographical comparison. The meshing algorithm handles facets with lowest quality first. The qualities are computed by a function `is_bad(const Facet& f, const Quality& q)`. -\cgalHasModel `CGAL::Surface_mesh_default_criteria_3` +\cgalHasModelsBegin CGAL::Surface_mesh_default_criteria_3 +\cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h index 15d0256b2bc..dd728781a7f 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h @@ -11,7 +11,8 @@ and to compute some intersection points if any exists. The concept `SurfaceMeshTraits_3` also includes a funcctor able to provide a small set of initial points on the surface. -\cgalHasModel `CGAL::Surface_mesh_traits_generator_3::type` +\cgalHasModelsBegin CGAL::Surface_mesh_traits_generator_3::type +\cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h index 7d502a9bf41..7af1aba64ca 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h @@ -17,7 +17,7 @@ the requirements for the triangulation type plugged in the class `CGAL::Surface_mesh_complex_2_in_triangulation_3`. -\cgalHasModel Any 3D Delaunay triangulation class of \cgal +\cgalHasModelsBare{Any 3D Delaunay triangulation class of \cgal} \sa `CGAL::Triangulation_3` \sa `CGAL::Delaunay_triangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h index 5e1f3b3098d..086b7759ac9 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h @@ -31,8 +31,9 @@ integers, which, when they are valid, store respectively the number of complex facets incident to the vertex and the number of connected components of the adjacency graph of those facets. -\cgalHasModel `CGAL::Surface_mesh_vertex_base_3` -\cgalHasModel `CGAL::Surface_mesh_default_triangulation_3::Vertex` +\cgalHasModelsBegin CGAL::Surface_mesh_vertex_base_3 +\cgalHasModels CGAL::Surface_mesh_default_triangulation_3::Vertex +\cgalHasModelsEnd \sa `SurfaceMeshComplex_2InTriangulation_3` \sa `CGAL::Surface_mesh_complex_2_in_triangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h index 6e0694fda56..0e5cca74dfe 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h @@ -8,7 +8,8 @@ The surface types are required to be copy constructible and assignable. -\cgalHasModel `CGAL::Implicit_surface_3` +\cgalHasModelsBegin CGAL::Implicit_surface_3 +\cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` \sa `SurfaceMeshTraits_3` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h index d3bc61921c5..e10d068c1b1 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h @@ -48,7 +48,8 @@ that the `CGAL::Triangulation_data_structure_2` actually uses as a base class for the class `CGAL::Triangulation_data_structure_2::Face`. -\cgalHasModel `CGAL::Triangulation_ds_face_base_2` +\cgalHasModelsBegin CGAL::Triangulation_ds_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` \sa `CGAL::Triangulation_data_structure_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h index 8402f4f4442..e47b7cfbf3f 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h @@ -44,7 +44,8 @@ that the `CGAL::Triangulation_data_structure_2` actually uses as a base class for the class of `CGAL::Triangulation_data_structure_2::Vertex`. -\cgalHasModel `CGAL::Triangulation_ds_vertex_base_2` +\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` \sa `CGAL::Triangulation_data_structure_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h index b2c1b5a0886..a5daedcbc28 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h @@ -64,7 +64,8 @@ the rank of this item in the output order. When dimension \f$ <\f$ 2, the same information is output for faces of maximal dimension instead of faces. -\cgalHasModel `CGAL::Triangulation_data_structure_2` +\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2::Face` \sa `TriangulationDataStructure_2::Vertex` @@ -726,7 +727,8 @@ In order to obtain new vertices or destruct unused vertices, the user must call the `create_vertex()` and `delete_vertex()` methods of the triangulation data structure. -\cgalHasModel `CGAL::Triangulation_ds_vertex_base_2` +\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` \sa `TriangulationDataStructure_2::Face` @@ -847,7 +849,8 @@ The methods `create_face()` and have to be used to define new faces and to delete no longer used faces. -\cgalHasModel `CGAL::Triangulation_ds_face_base_2` +\cgalHasModelsBegin CGAL::Triangulation_ds_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` \sa `TriangulationDataStructure_2` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h index 4ce03689c74..59f5b45bbe2 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h @@ -33,7 +33,8 @@ cell classes. The rebound base classes so obtained are the classes which are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. -\cgalHasModel `CGAL::Triangulation_ds_cell_base_3` +\cgalHasModelsBegin CGAL::Triangulation_ds_cell_base_3 +\cgalHasModelsEnd \sa `TriangulationDSVertexBase_3` \sa `CGAL::Triangulation_data_structure_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h index eef2cf0d3d4..9ef2cd34bbc 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h @@ -28,7 +28,8 @@ cell classes. The rebound base classes so obtained are the classes which are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. -\cgalHasModel `CGAL::Triangulation_ds_vertex_base_3` +\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_3 +\cgalHasModelsEnd \sa `TriangulationDSCellBase_3` \sa `CGAL::Triangulation_data_structure_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h index 081f9f98513..a2c6d41e933 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h @@ -65,7 +65,8 @@ neighbors of each cell, where the index corresponds to the preceding list of cells. When dimension < 3, the same information is stored for faces of maximal dimension instead of cells. -\cgalHasModel `CGAL::Triangulation_data_structure_3` +\cgalHasModelsBegin CGAL::Triangulation_data_structure_3 +\cgalHasModelsEnd \sa `TriangulationDataStructure_3::Vertex` \sa `TriangulationDataStructure_3::Cell` diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h index 01d05c5c873..aa3f4d68dc1 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h @@ -6,7 +6,8 @@ Cell base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. -\cgalHasModel `CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3` +\cgalHasModelsBegin CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3 +\cgalHasModelsEnd */ class RemeshingCellBase_3 diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h index d275fbc03a7..ad71f044d99 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h @@ -10,7 +10,7 @@ of the class `Remeshing_triangulation_3`. It defines the geometric objects (points, segments, triangles, and tetrahedra) forming the triangulation together with a few geometric predicates and constructions on these objects. -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `CGAL::Triangulation_3` */ diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h index 0e9b0e86003..2b1b5bc8fc3 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h @@ -6,7 +6,8 @@ Vertex base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. -\cgalHasModel `Tetrahedral_remeshing::Remeshing_vertex_base_3` +\cgalHasModelsBegin Tetrahedral_remeshing::Remeshing_vertex_base_3 +\cgalHasModelsEnd */ class RemeshingVertexBase_3 diff --git a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h index 670217bb50d..14395b71b93 100644 --- a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h @@ -9,8 +9,9 @@ a Delaunay triangulation. It corresponds to the first template parameter of the \cgalRefines{TriangulationTraits} -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` +\cgalHasModelsBegin CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModelsEnd \sa `TriangulationTraits` */ diff --git a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h index 00ec18a9e8c..35b31839b7a 100644 --- a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h @@ -9,8 +9,9 @@ a regular triangulation. It corresponds to the first template parameter of the c \cgalRefines{TriangulationTraits} -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` +\cgalHasModelsBegin CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModelsEnd \sa `TriangulationTraits` */ diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h index 24188ada103..d92afbd427e 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h @@ -15,7 +15,8 @@ The dimension of a face is implicitly set when `TriangulationDSFace::set_index` is called two times to set the first two vertices (`i = 0` and `i = 1`), then the dimension is 1. -\cgalHasModel `CGAL::Triangulation_face` +\cgalHasModelsBegin CGAL::Triangulation_face +\cgalHasModelsEnd \sa `TriangulationDSFullCell` \sa `TriangulationDSVertex` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h index a29eef83396..3e32c2423a2 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h @@ -36,8 +36,9 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::FullCell} -\cgalHasModel `CGAL::Triangulation_ds_full_cell` -\cgalHasModel `CGAL::Triangulation_full_cell` +\cgalHasModelsBegin CGAL::Triangulation_ds_full_cell +\cgalHasModels CGAL::Triangulation_full_cell +\cgalHasModelsEnd \sa `TriangulationDSVertex` \sa `TriangulationDSFace` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h index 30b22c4994b..c23aaabe1ea 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h @@ -36,8 +36,9 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::Vertex} -\cgalHasModel `CGAL::Triangulation_ds_vertex` -\cgalHasModel `CGAL::Triangulation_vertex` +\cgalHasModelsBegin CGAL::Triangulation_ds_vertex +\cgalHasModels CGAL::Triangulation_vertex +\cgalHasModelsEnd \sa `TriangulationDSFullCell` \sa `TriangulationDSFace` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h index 3e3228db4c9..c17ded6feb1 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h @@ -69,7 +69,8 @@ The classes `Vertex` and `Full_cell` have to provide the relevant I/O operators (possibly empty). -\cgalHasModel `CGAL::Triangulation_data_structure` +\cgalHasModelsBegin CGAL::Triangulation_data_structure +\cgalHasModelsEnd \sa `TriangulationDataStructure::Vertex` \sa `TriangulationDataStructure::FullCell` @@ -660,8 +661,9 @@ It sets requirements of combinatorial nature only, as geometry is not concerned here. In particular, we only require that the vertex holds a handle to a full cell incident to it in the triangulation. -\cgalHasModel `CGAL::Triangulation_ds_vertex` -\cgalHasModel `CGAL::Triangulation_vertex` +\cgalHasModelsBegin CGAL::Triangulation_ds_vertex +\cgalHasModels CGAL::Triangulation_vertex +\cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` \sa `TriangulationDataStructure::Face` @@ -767,8 +769,9 @@ full cell as well as handles to the adjacent full cells. Two full cells are said to be adjacent when they share a facet. Adjacent full cells are called hereafter neighbors. -\cgalHasModel `CGAL::Triangulation_ds_full_cell` -\cgalHasModel `CGAL::Triangulation_full_cell` +\cgalHasModelsBegin CGAL::Triangulation_ds_full_cell +\cgalHasModels CGAL::Triangulation_full_cell +\cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` \sa `TriangulationDataStructure::Face` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h index 74750c4117a..eba0214810a 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h @@ -10,7 +10,8 @@ represent a full cell. \cgalRefines{TriangulationDSFullCell We only list below the additional specific requirements of `TriangulationFullCell`} -\cgalHasModel `CGAL::Triangulation_full_cell` +\cgalHasModelsBegin CGAL::Triangulation_full_cell +\cgalHasModelsEnd \sa `CGAL::Triangulation_full_cell` \sa `TriangulationVertex` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h index 87018c11c3c..3d004b52c28 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h @@ -14,8 +14,9 @@ traits must refine `SpatialSortingTraits_d`. The insertion is then optimized using spatial sorting. This is not required if the points are inserted one by one. -\cgalHasModel `CGAL::Epick_d` -\cgalHasModel `CGAL::Epeck_d` +\cgalHasModelsBegin CGAL::Epick_d +\cgalHasModels CGAL::Epeck_d +\cgalHasModelsEnd \sa `DelaunayTriangulationTraits` */ diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h index 0ea82971793..956acd269f1 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h @@ -12,7 +12,8 @@ We only list below the additional specific requirements of ::TriangulationVertex Compared to ::TriangulationDSVertex, the main difference is the addition of an association of the vertex with a geometric point. -\cgalHasModel `CGAL::Triangulation_vertex` +\cgalHasModelsBegin CGAL::Triangulation_vertex +\cgalHasModelsEnd \cgalHeading{Input/Output} diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h index f0483d539cc..bf4b52d43c4 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h @@ -17,10 +17,10 @@ The concept `ConstrainedDelaunayTriangulationTraits_2` refines both the concept \cgalRefines{DelaunayTriangulationTraits_2,ConstrainedTriangulationTraits_2} -\cgalHasModel All \cgal Kernels -\cgalHasModel `CGAL::Projection_traits_xy_3` -\cgalHasModel `CGAL::Projection_traits_yz_3` -\cgalHasModel `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd \sa `TriangulationTraits_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h index 1d49d678c47..a5a98882faa 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h @@ -19,7 +19,8 @@ constraints. Defines the same types as the `TriangulationFaceBase_2` concept -\cgalHasModel `CGAL::Constrained_triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Constrained_triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationFaceBase_2` \sa `CGAL::Constrained_triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h index 6f7a9e5ea85..0af95612856 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h @@ -19,11 +19,11 @@ to compute the squared distance between a point and a line \cgalRefines{TriangulationTraits_2} -\cgalHasModel All \cgal Kernels -\cgalHasModel `CGAL::Projection_traits_3` -\cgalHasModel `CGAL::Projection_traits_xy_3` -\cgalHasModel `CGAL::Projection_traits_yz_3` -\cgalHasModel `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_3 +\cgalHasModels CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd \sa `TriangulationTraits_2` \sa `ConstrainedDelaunayTriangulationTraits_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h index 32b251a5060..d223c281d3c 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h @@ -22,12 +22,12 @@ required if the method `nearest_vertex()` is used. \cgalRefines{TriangulationTraits_2} -\cgalHasModel \cgal kernels -\cgalHasModel `CGAL::Projection_traits_3` (not for dual Voronoi functions) -\cgalHasModel `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions) -\cgalHasModel `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions) -\cgalHasModel `CGAL::Projection_traits_yz_3` (not for dual Voronoi functions) -\cgalHasModel `CGAL::Projection_traits_xz_3` (not for dual Voronoi functions) +\cgalHasModelsBare{All models of the \cgal concept `Kernel`\n + `CGAL::Projection_traits_3` (not for dual Voronoi functions)\n + `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)\n + `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)\n + `CGAL::Projection_traits_yz_3` (not for dual Voronoi functions)\n + `CGAL::Projection_traits_xz_3` (not for dual Voronoi functions)} \sa `TriangulationTraits_2` */ diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h index 6d69fe98604..26c24a4e86b 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h @@ -34,7 +34,8 @@ in the face a list to store hidden vertices. \cgalRefines{TriangulationFaceBase_2} -\cgalHasModel `CGAL::Regular_triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Regular_triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationFaceBase_2` \sa `RegularTriangulationVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h index 89ae384c8bf..e935587ab86 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h @@ -18,7 +18,7 @@ of Delaunay triangulations. \cgalRefines{TriangulationTraits_2} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `CGAL::Regular_triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h index 62230e270a7..af73baa9681 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h @@ -35,7 +35,8 @@ vertex of the triangulation or a hidden vertex. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Regular_triangulation_vertex_base_2` +\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationVertexBase_2` \sa `CGAL::Regular_triangulation_vertex_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h index 353f5631060..17ee831ec0b 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h @@ -16,7 +16,8 @@ and only provided for symmetry with the vertex case. \cgalRefines{TriangulationDSFaceBase_2} -\cgalHasModel `CGAL::Triangulation_face_base_2` +\cgalHasModelsBegin CGAL::Triangulation_face_base_2 +\cgalHasModelsEnd \sa `TriangulationVertexBase_2` \sa `CGAL::Triangulation_face_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h index 5d473eabfb6..497c1fadde7 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h @@ -14,7 +14,8 @@ next and previous level triangulations. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Triangulation_hierarchy_vertex_base_2` +\cgalHasModelsBegin CGAL::Triangulation_hierarchy_vertex_base_2 +\cgalHasModelsEnd \sa `CGAL::Triangulation_hierarchy_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h index eeee9572516..f158bbeea8d 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h @@ -12,11 +12,11 @@ provides the types of the geometric primitives used in the triangulation and some function object types for the required predicates on those primitives. -\cgalHasModel All models of `Kernel`. -\cgalHasModel `CGAL::Projection_traits_3` -\cgalHasModel `CGAL::Projection_traits_xy_3` -\cgalHasModel `CGAL::Projection_traits_yz_3` -\cgalHasModel `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_3 +\cgalHasModels CGAL::Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd \sa `CGAL::Triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h index 0ce1e0012c9..c5e59974834 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModel `CGAL::Triangulation_vertex_base_with_info_2` +\cgalHasModelsBegin CGAL::Triangulation_vertex_base_with_info_2 +\cgalHasModelsEnd */ diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h index bec156dc516..816e93b382a 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h @@ -15,7 +15,8 @@ the vertex base of a triangulation stores a point. \cgalRefines{TriangulationDSVertexBase_2} -\cgalHasModel `CGAL::Triangulation_vertex_base_2` +\cgalHasModelsBegin CGAL::Triangulation_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `TriangulationDataStructure_2::Vertex` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h index b6e1a9b2515..4df0ce0f752 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h @@ -11,8 +11,9 @@ in the cell an operator that computes its circumcenter. \cgalRefines{TriangulationCellBase_3} -\cgalHasModel `CGAL::Delaunay_triangulation_cell_base_3` -\cgalHasModel `CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3` +\cgalHasModelsBegin CGAL::Delaunay_triangulation_cell_base_3 +\cgalHasModels CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3 +\cgalHasModelsEnd \sa `DelaunayTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h index c1f46f3fb4f..b727b6013c9 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h @@ -10,13 +10,14 @@ predicates and constructions on these objects. \cgalRefines{TriangulationTraits_3} -\cgalHasModel `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended) -\cgalHasModel `CGAL::Exact_predicates_exact_constructions_kernel` (recommended for Voronoi) -\cgalHasModel `CGAL::Filtered_kernel` -\cgalHasModel `CGAL::Cartesian` -\cgalHasModel `CGAL::Simple_cartesian` -\cgalHasModel `CGAL::Homogeneous` -\cgalHasModel `CGAL::Simple_homogeneous` +\cgalHasModelsBegin CGAL::Exact_predicates_inexact_constructions_kernel (recommended) +\cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel (recommended for Voronoi) +\cgalHasModels CGAL::Filtered_kernel +\cgalHasModels CGAL::Cartesian +\cgalHasModels CGAL::Simple_cartesian +\cgalHasModels CGAL::Homogeneous +\cgalHasModels CGAL::Simple_homogeneous +\cgalHasModelsEnd In addition to the requirements described for the traits class of `CGAL::Triangulation_3`, the geometric traits class of a diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h index 4f83db499d7..9c776448106 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h @@ -19,7 +19,8 @@ circumcenter by calling `invalidate_weighted_circumcenter_cache()`. \cgalRefines{RegularTriangulationCellBase_3} -\cgalHasModel `CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3` +\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 +\cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h index 7a00e04f1d8..b7362aca63f 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h @@ -35,7 +35,8 @@ and an operator to compute its weighted circumcenter. \cgalRefines{TriangulationCellBase_3} -\cgalHasModel `CGAL::Regular_triangulation_cell_base_3` +\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_3 +\cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h index 91057fe887f..41cd3c59fbc 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h @@ -15,7 +15,7 @@ or the weighted point \f$ {p}^{(w)}=(p,w_p)\f$. \cgalRefines{TriangulationTraits_3} -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `CGAL::Regular_triangulation_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h index 3881593c2d3..aa5da85428d 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h @@ -9,7 +9,8 @@ by adding a geometric point member. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModel `CGAL::Regular_triangulation_vertex_base_3` +\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_3 +\cgalHasModelsEnd \sa `RegularTriangulationCellBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h index 5064256e445..4efba49955a 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationCellBase_3} -\cgalHasModel `CGAL::Triangulation_cell_base_with_info_3` +\cgalHasModelsBegin CGAL::Triangulation_cell_base_with_info_3 +\cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h index 69ae982347c..419ba6c4417 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h @@ -10,8 +10,9 @@ structure apply. \cgalRefines{TriangulationDSCellBase_3} -\cgalHasModel `CGAL::Triangulation_cell_base_3` -\cgalHasModel `CGAL::Triangulation_cell_base_with_info_3` +\cgalHasModelsBegin CGAL::Triangulation_cell_base_3 +\cgalHasModels CGAL::Triangulation_cell_base_with_info_3 +\cgalHasModelsEnd \sa `TriangulationVertexBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h index d7c62d3e4c6..96a428da050 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h @@ -11,7 +11,7 @@ triangles and tetrahedra) forming the triangulation together with a few geometric predicates and constructions on these objects: lexicographical comparison, orientation in case of coplanar points and orientation in space. -\cgalHasModel All models of `Kernel`. +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} \sa `CGAL::Triangulation_3` */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h index c9cf46d0062..2801c458013 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_3} -\cgalHasModel `CGAL::Triangulation_vertex_base_with_info_3` +\cgalHasModelsBegin CGAL::Triangulation_vertex_base_with_info_3 +\cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h index cd91c12e9a8..75d23eb5581 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h @@ -9,8 +9,9 @@ for the triangulation data structure. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModel `CGAL::Triangulation_vertex_base_3` -\cgalHasModel `CGAL::Triangulation_vertex_base_with_info_3` +\cgalHasModelsBegin CGAL::Triangulation_vertex_base_3 +\cgalHasModels CGAL::Triangulation_vertex_base_with_info_3 +\cgalHasModelsEnd \sa `TriangulationCellBase_3` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h index 397c3a7e799..d73727aaabc 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h @@ -11,8 +11,9 @@ parameter of the class `CGAL::Delaunay_triangulation_on_sphere_2`. To the requirements listed within the concept `TriangulationOnSphereTraits_2`, this concept adds types and functors requirements related to build the dual on the sphere. -\cgalHasModel `CGAL::Delaunay_triangulation_on_sphere_traits_2` -\cgalHasModel `CGAL::Projection_on_sphere_traits_3` +\cgalHasModelsBegin CGAL::Delaunay_triangulation_on_sphere_traits_2 +\cgalHasModels CGAL::Projection_on_sphere_traits_3 +\cgalHasModelsEnd */ class DelaunayTriangulationOnSphereTraits_2 { diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h index fbb6ac030ed..0d1fe175810 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h @@ -19,7 +19,8 @@ then the triangulation is not an orientable triangulated surface without boundar In this case, fictitious faces are added to the triangulation, called ghost faces, such that the triangulation is a topological sphere. -\cgalHasModel `CGAL::Triangulation_on_sphere_face_base_2` +\cgalHasModelsBegin CGAL::Triangulation_on_sphere_face_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `TriangulationOnSphereVertexBase_2` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h index 0dad5563ff7..4ccf99b9a26 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h @@ -13,8 +13,9 @@ triangulation and the function object types for the required predicates on those In particular, the traits class is expected to contain information about the sphere (center and radius) on which the points of the triangulation lie, as well as to provide means to change this information. -\cgalHasModel `CGAL::Delaunay_triangulation_on_sphere_traits_2` -\cgalHasModel `CGAL::Projection_on_sphere_traits_3` +\cgalHasModelsBegin CGAL::Delaunay_triangulation_on_sphere_traits_2 +\cgalHasModels CGAL::Projection_on_sphere_traits_3 +\cgalHasModelsEnd \sa `DelaunayTriangulationOnSphereTraits_2` */ diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h index 23b6971fd89..7701fde798b 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h @@ -9,7 +9,8 @@ of a triangulation data structure to be plugged in a triangulation on the sphere It refines the concept `TriangulationDSVertexBase_2`, adding geometric information: the vertex base of a triangulation stores a point. -\cgalHasModel `CGAL::Triangulation_on_sphere_vertex_base_2` +\cgalHasModelsBegin CGAL::Triangulation_on_sphere_vertex_base_2 +\cgalHasModelsEnd \sa `TriangulationDataStructure_2` \sa `TriangulationOnSphereFaceBase_2` diff --git a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h index 46213272fa9..3d656b13a16 100644 --- a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h +++ b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h @@ -6,9 +6,10 @@ A model of the `Visibility_2` concept can be attached to an `Arrangement_2` instance to answer visibility queries within the faces of this arrangement. -\cgalHasModel `CGAL::Simple_polygon_visibility_2` -\cgalHasModel `CGAL::Rotational_sweep_visibility_2` -\cgalHasModel `CGAL::Triangular_expansion_visibility_2` +\cgalHasModelsBegin CGAL::Simple_polygon_visibility_2 +\cgalHasModels CGAL::Rotational_sweep_visibility_2 +\cgalHasModels CGAL::Triangular_expansion_visibility_2 +\cgalHasModelsEnd */ class Visibility_2 { diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h index 218a51a9d10..916a678290f 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h @@ -13,15 +13,16 @@ graph they take as an argument, the last ones does. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Identity_policy_2` -\cgalHasModel `CGAL::Apollonius_graph_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Delaunay_triangulation_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Regular_triangulation_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2` +\cgalHasModelsBegin CGAL::Identity_policy_2 +\cgalHasModels CGAL::Apollonius_graph_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Delaunay_triangulation_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Regular_triangulation_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2 +\cgalHasModelsEnd \sa `DelaunayGraph_2` \sa `AdaptationTraits_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h index bdd87560936..941a0b9dfbe 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h @@ -11,10 +11,11 @@ tag is provided for determining whether this functor is defined or not. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModel `CGAL::Apollonius_graph_adaptation_traits_2` -\cgalHasModel `CGAL::Delaunay_triangulation_adaptation_traits_2` -\cgalHasModel `CGAL::Regular_triangulation_adaptation_traits_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_adaptation_traits_2` +\cgalHasModelsBegin CGAL::Apollonius_graph_adaptation_traits_2 +\cgalHasModels CGAL::Delaunay_triangulation_adaptation_traits_2 +\cgalHasModels CGAL::Regular_triangulation_adaptation_traits_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_adaptation_traits_2 +\cgalHasModelsEnd \sa `DelaunayGraph_2` \sa `CGAL::Voronoi_diagram_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h index 3459c48dc9f..01749c2be48 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h @@ -18,13 +18,13 @@ iterators and circulators that allow to traverse it (completely or partially). All iterators and circulators must be convertible to the corresponding handles. -\cgalHasModel `CGAL::Delaunay_triangulation_2` -\cgalHasModel `CGAL::Regular_triangulation_2` -\cgalHasModel `CGAL::Triangulation_hierarchy_2` provided that `Tr` is a model of `DelaunayGraph_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_2` -\cgalHasModel `CGAL::Segment_Delaunay_graph_hierarchy_2` -\cgalHasModel `CGAL::Apollonius_graph_2` -\cgalHasModel `CGAL::Apollonius_graph_hierarchy_2` +\cgalHasModelsBareBegin{ `CGAL::Triangulation_hierarchy_2` provided that `Tr` is a model of `DelaunayGraph_2`} CGAL::Delaunay_triangulation_2 +\cgalHasModels CGAL::Regular_triangulation_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_2 +\cgalHasModels CGAL::Segment_Delaunay_graph_hierarchy_2 +\cgalHasModels CGAL::Apollonius_graph_2 +\cgalHasModels CGAL::Apollonius_graph_hierarchy_2 +\cgalHasModelsEnd \sa `AdaptationTraits_2` \sa `AdaptationPolicy_2` diff --git a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h index 4b882bd82d5..a6f6793d19c 100644 --- a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h +++ b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h @@ -5,11 +5,10 @@ A concept that describes the set of requirements of classes used in the computation of analytic weights in 2D. -\cgalHasModel -- All models of `Kernel` -- `CGAL::Projection_traits_xy_3` -- `CGAL::Projection_traits_yz_3` -- `CGAL::Projection_traits_xz_3` +\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} sCGAL:Projection_traits_xy_3 +\cgalHasModels CGAL::Projection_traits_yz_3 +\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsEnd */ class AnalyticWeightTraits_2 { diff --git a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h index 3560a85f478..5aab656b612 100644 --- a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h +++ b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h @@ -5,8 +5,7 @@ A concept that describes the set of requirements of classes used in the computation of analytic weights in 3D. -\cgalHasModel -- All models of `Kernel` +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} */ class AnalyticWeightTraits_3 { diff --git a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h index 89638d209f6..95d700e8e51 100644 --- a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h +++ b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h @@ -5,10 +5,10 @@ A concept that describes the set of methods required in all classes used in the computation of 2D generalized barycentric weights. -\cgalHasModel -- `CGAL::Weights::Wachspress_weights_2` -- `CGAL::Weights::Mean_value_weights_2` -- `CGAL::Weights::Discrete_harmonic_weights_2` +\cgalHasModelsBegin CGAL::Weights::Wachspress_weights_2 +\cgalHasModels CGAL::Weights::Mean_value_weights_2 +\cgalHasModels CGAL::Weights::Discrete_harmonic_weights_2 +\cgalHasModelsEnd */ class BarycentricWeights_2 { From 301728a8a9d4701aee5f9160fb319b59a4499cb2 Mon Sep 17 00:00:00 2001 From: albert-github Date: Sun, 9 Jul 2023 12:43:36 +0200 Subject: [PATCH 04/94] issue #7395 Improvement of layout of model relations - Completed the cgalModels part --- .../CGAL/Algebraic_structure_traits.h | 18 +++++------ .../CGAL/Fraction_traits.h | 2 +- .../CGAL/Real_embeddable_traits.h | 2 +- .../CGAL/Algebraic_kernel_d_1.h | 2 +- .../CGAL/Algebraic_kernel_d_2.h | 2 +- .../CGAL/Algebraic_kernel_rs_gmpq_d_1.h | 2 +- .../CGAL/Algebraic_kernel_rs_gmpz_d_1.h | 2 +- .../CGAL/Alpha_shape_face_base_2.h | 2 +- .../CGAL/Alpha_shape_vertex_base_2.h | 2 +- .../CGAL/Alpha_shape_cell_base_3.h | 2 +- .../CGAL/Alpha_shape_vertex_base_3.h | 2 +- .../CGAL/Fixed_alpha_shape_cell_base_3.h | 2 +- .../CGAL/Fixed_alpha_shape_vertex_base_3.h | 2 +- .../CGAL/Apollonius_graph_2.h | 2 +- .../CGAL/Apollonius_graph_filtered_traits_2.h | 2 +- ...Apollonius_graph_hierarchy_vertex_base_2.h | 2 +- .../CGAL/Apollonius_graph_traits_2.h | 2 +- .../CGAL/Apollonius_graph_vertex_base_2.h | 2 +- .../CGAL/Apollonius_site_2.h | 2 +- .../CGAL/Arr_Bezier_curve_traits_2.h | 3 +- .../CGAL/Arr_algebraic_segment_traits_2.h | 2 +- .../Arr_bounded_planar_topology_traits_2.h | 2 +- .../CGAL/Arr_circle_segment_traits_2.h | 3 +- .../CGAL/Arr_circular_arc_traits_2.h | 2 +- .../CGAL/Arr_circular_line_arc_traits_2.h | 2 +- .../CGAL/Arr_conic_traits_2.h | 4 +-- .../Arr_consolidated_curve_data_traits_2.h | 2 +- .../CGAL/Arr_curve_data_traits_2.h | 2 +- .../CGAL/Arr_dcel_base.h | 8 ++--- .../CGAL/Arr_default_dcel.h | 2 +- .../CGAL/Arr_default_overlay_traits.h | 4 +-- .../CGAL/Arr_extended_dcel.h | 10 +++---- .../CGAL/Arr_face_index_map.h | 5 +--- .../Arr_geodesic_arc_on_sphere_traits_2.h | 29 ++++-------------- .../CGAL/Arr_landmarks_point_location.h | 3 +- .../CGAL/Arr_line_arc_traits_2.h | 2 +- .../CGAL/Arr_linear_traits_2.h | 4 +-- .../CGAL/Arr_naive_point_location.h | 3 +- .../Arr_non_caching_segment_basic_traits_2.h | 2 +- .../CGAL/Arr_non_caching_segment_traits_2.h | 4 +-- .../CGAL/Arr_polycurve_traits_2.h | 7 ++--- .../CGAL/Arr_polyline_traits_2.h | 9 ++---- .../CGAL/Arr_rational_function_traits_2.h | 20 ++++--------- .../CGAL/Arr_segment_traits_2.h | 4 +-- .../CGAL/Arr_spherical_topology_traits_2.h | 2 +- .../CGAL/Arr_trapezoid_ric_point_location.h | 3 +- .../CGAL/Arr_triangulation_point_location.h | 3 +- .../CGAL/Arr_unb_planar_topology_traits_2.h | 2 +- .../CGAL/Arr_vertex_index_map.h | 5 +--- .../CGAL/Arr_walk_along_line_point_location.h | 3 +- .../CGAL/IO/Arr_text_formatter.h | 9 ++---- .../CGAL/IO/Arr_with_history_text_formatter.h | 3 +- .../CGAL/HalfedgeDS_face_max_base_with_id.h | 2 +- .../HalfedgeDS_halfedge_max_base_with_id.h | 2 +- .../CGAL/HalfedgeDS_vertex_max_base_with_id.h | 2 +- .../CGAL/Linear_cell_complex_bgl_min_items.h | 2 +- BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h | 2 +- .../CGAL/Triangulation_face_base_with_id_2.h | 2 +- .../Triangulation_vertex_base_with_id_2.h | 2 +- BGL/doc/BGL/CGAL/boost/graph/properties.h | 10 +++---- BGL/include/CGAL/boost/graph/Dual.h | 2 +- .../CGAL/boost/graph/Face_filtered_graph.h | 4 +-- .../graph/Graph_with_descriptor_with_graph.h | 6 ++-- BGL/include/CGAL/boost/graph/Seam_mesh.h | 15 ++++------ BGL/include/CGAL/boost/graph/iterator.h | 28 ++++++++--------- .../Delaunay_domain_2.h | 2 +- .../Discrete_harmonic_2.h | 2 +- .../Barycentric_coordinates_2/Mean_value_2.h | 2 +- .../Barycentric_coordinates_2/Wachspress_2.h | 2 +- .../Gps_default_dcel.h | 6 ++-- .../CGAL/General_polygon_2.h | 2 +- .../CGAL/Gps_circle_segment_traits_2.h | 2 +- .../CGAL/Gps_segment_traits_2.h | 2 +- .../CGAL/Gps_traits_2.h | 2 +- .../Approximate_min_ellipsoid_d_traits_2.h | 2 +- .../Approximate_min_ellipsoid_d_traits_3.h | 2 +- .../Approximate_min_ellipsoid_d_traits_d.h | 2 +- .../CGAL/Min_circle_2_traits_2.h | 2 +- .../CGAL/Min_ellipse_2_traits_2.h | 2 +- .../CGAL/Min_quadrilateral_traits_2.h | 2 +- .../CGAL/Min_sphere_annulus_d_traits_2.h | 2 +- .../CGAL/Min_sphere_annulus_d_traits_3.h | 2 +- .../CGAL/Min_sphere_annulus_d_traits_d.h | 2 +- .../CGAL/Min_sphere_of_points_d_traits_2.h | 2 +- .../CGAL/Min_sphere_of_points_d_traits_3.h | 2 +- .../CGAL/Min_sphere_of_points_d_traits_d.h | 2 +- .../CGAL/Min_sphere_of_spheres_d_traits_2.h | 2 +- .../CGAL/Min_sphere_of_spheres_d_traits_3.h | 2 +- .../CGAL/Min_sphere_of_spheres_d_traits_d.h | 2 +- .../CGAL/rectangular_p_center_2.h | 2 +- .../CGAL/Box_intersection_d/Box_d.h | 2 +- .../CGAL/Box_intersection_d/Box_traits_d.h | 2 +- .../Box_intersection_d/Box_with_handle_d.h | 2 +- .../CGAL/Algebraic_kernel_for_circles_2_2.h | 2 +- .../Circular_kernel_2/CGAL/Circular_arc_2.h | 2 +- .../CGAL/Circular_arc_point_2.h | 2 +- .../CGAL/Circular_kernel_2.h | 2 +- .../CGAL/Exact_circular_kernel_2.h | 2 +- .../doc/Circular_kernel_2/CGAL/Line_arc_2.h | 2 +- .../Circular_kernel_2/CGAL/Polynomials_1_2.h | 2 +- .../Circular_kernel_2/CGAL/Polynomials_2_2.h | 2 +- .../CGAL/Root_for_circles_2_2.h | 2 +- .../CGAL/Algebraic_kernel_for_spheres_2_3.h | 2 +- .../Circular_kernel_3/CGAL/Circular_arc_3.h | 2 +- .../CGAL/Circular_arc_point_3.h | 2 +- .../CGAL/Exact_spherical_kernel_3.h | 2 +- .../doc/Circular_kernel_3/CGAL/Line_arc_3.h | 2 +- .../Circular_kernel_3/CGAL/Polynomials_1_3.h | 2 +- .../Circular_kernel_3/CGAL/Polynomials_2_3.h | 2 +- .../CGAL/Polynomials_for_line_3.h | 2 +- .../CGAL/Root_for_spheres_2_3.h | 2 +- .../CGAL/Spherical_kernel_3.h | 2 +- .../ETHZ/Random_forest_classifier.h | 2 +- .../CGAL/Classification/Feature_base.h | 2 +- .../include/CGAL/Classification/Label.h | 2 +- .../CGAL/Classification/Mesh_neighborhood.h | 4 +-- .../OpenCV/Random_forest_classifier.h | 2 +- .../Classification/Point_set_neighborhood.h | 4 +-- .../Sum_of_weighted_features_classifier.h | 2 +- .../CGAL/Classification/property_maps.h | 4 +-- .../Combinatorial_map/CGAL/Cell_attribute.h | 2 +- .../CGAL/Cell_attribute_with_id.h | 2 +- .../CGAL/Combinatorial_map.h | 2 +- .../CGAL/Generic_map_min_items.h | 2 +- .../CGAL/Convex_hull_traits_adapter_2.h | 2 +- .../CGAL/convex_hull_constructive_traits_2.h | 2 +- .../Convex_hull_2/CGAL/convex_hull_traits_2.h | 2 +- .../Convex_hull_3/CGAL/Convex_hull_traits_3.h | 3 +- .../CGAL/Extreme_points_traits_adapter_3.h | 3 +- .../CGAL/Convex_hull_d_traits_3.h | 2 +- .../doc/resources/1.8.13/BaseDoxyfile.in | 5 +++- .../doc/resources/1.9.6/BaseDoxyfile.in | 5 +++- .../doc/Envelope_2/CGAL/Envelope_diagram_1.h | 2 +- .../doc/Envelope_3/CGAL/Env_plane_traits_3.h | 2 +- .../doc/Envelope_3/CGAL/Env_sphere_traits_3.h | 2 +- .../CGAL/Env_surface_data_traits_3.h | 2 +- .../Envelope_3/CGAL/Env_triangle_traits_3.h | 2 +- .../Generalized_map/CGAL/Generalized_map.h | 2 +- .../CGAL/Random_convex_set_traits_2.h | 2 +- .../doc/Generator/CGAL/point_generators_2.h | 28 +++++++---------- .../doc/Generator/CGAL/point_generators_3.h | 30 +++++++------------ .../doc/Generator/CGAL/point_generators_d.h | 9 ++---- .../doc/HalfedgeDS/CGAL/HalfedgeDS_default.h | 2 +- .../HalfedgeDS/CGAL/HalfedgeDS_face_base.h | 2 +- .../CGAL/HalfedgeDS_face_min_base.h | 2 +- .../CGAL/HalfedgeDS_halfedge_base.h | 2 +- .../CGAL/HalfedgeDS_halfedge_min_base.h | 2 +- .../doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h | 2 +- .../doc/HalfedgeDS/CGAL/HalfedgeDS_list.h | 2 +- .../HalfedgeDS/CGAL/HalfedgeDS_min_items.h | 2 +- .../doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h | 2 +- .../HalfedgeDS/CGAL/HalfedgeDS_vertex_base.h | 2 +- .../CGAL/HalfedgeDS_vertex_min_base.h | 2 +- .../Intrinsic_Delaunay_triangulation_3.h | 2 +- ...bolic_Delaunay_triangulation_CK_traits_2.h | 2 +- ...perbolic_Delaunay_triangulation_traits_2.h | 2 +- .../Hyperbolic_triangulation_face_base_2.h | 2 +- .../CGAL/Extremal_polygon_traits_2.h | 4 +-- .../Interpolation_gradient_fitting_traits_2.h | 3 +- .../CGAL/Interpolation_traits_2.h | 2 +- .../CGAL/Voronoi_intersection_2_traits_3.h | 2 +- .../CGAL/Interval_skip_list_interval.h | 2 +- .../Interval_skip_list/CGAL/Level_interval.h | 2 +- .../doc/Kernel_23/CGAL/Aff_transformation_2.h | 2 +- .../doc/Kernel_23/CGAL/Aff_transformation_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Bbox_2.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Bbox_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Cartesian.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Circle_2.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Circle_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Direction_2.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Direction_3.h | 2 +- ...ct_predicates_exact_constructions_kernel.h | 2 +- ...exact_constructions_kernel_with_kth_root.h | 2 +- ..._exact_constructions_kernel_with_root_of.h | 2 +- ...tes_exact_constructions_kernel_with_sqrt.h | 2 +- ..._predicates_inexact_constructions_kernel.h | 2 +- .../doc/Kernel_23/CGAL/Filtered_kernel.h | 4 +-- Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h | 3 +- .../doc/Kernel_23/CGAL/Iso_rectangle_2.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Line_2.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Line_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Plane_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Point_2.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Point_3.h | 3 +- .../doc/Kernel_23/CGAL/Projection_traits_3.h | 7 +---- .../Kernel_23/CGAL/Projection_traits_xy_3.h | 16 ++++------ Kernel_23/doc/Kernel_23/CGAL/Ray_2.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Ray_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Segment_2.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Segment_3.h | 3 +- .../doc/Kernel_23/CGAL/Simple_cartesian.h | 2 +- .../doc/Kernel_23/CGAL/Simple_homogeneous.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h | 2 +- Kernel_23/doc/Kernel_23/CGAL/Vector_2.h | 3 +- Kernel_23/doc/Kernel_23/CGAL/Vector_3.h | 3 +- .../doc/Kernel_23/CGAL/Weighted_point_2.h | 3 +- .../doc/Kernel_23/CGAL/Weighted_point_3.h | 3 +- Kernel_d/doc/Kernel_d/CGAL/Cartesian_d.h | 2 +- Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h | 16 ++++------ Kernel_d/doc/Kernel_d/CGAL/Epick_d.h | 16 ++++------ Kernel_d/doc/Kernel_d/CGAL/Homogeneous_d.h | 2 +- Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h | 2 +- Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h | 2 +- .../Kernel--CartesianConstIterator_d.h | 2 +- .../CGAL/Cell_attribute_with_point.h | 2 +- .../CGAL/Cell_attribute_with_point_and_id.h | 2 +- ...inear_cell_complex_for_combinatorial_map.h | 3 +- .../Linear_cell_complex_for_generalized_map.h | 3 +- .../CGAL/Linear_cell_complex_min_items.h | 2 +- .../CGAL/Linear_cell_complex_traits.h | 2 +- .../doc/Matrix_search/CGAL/Dynamic_matrix.h | 3 +- .../Sorted_matrix_search_traits_adaptor.h | 2 +- .../Mesh_2/CGAL/Delaunay_mesh_criteria_2.h | 2 +- .../Mesh_2/CGAL/Delaunay_mesh_face_base_2.h | 2 +- .../CGAL/Delaunay_mesh_size_criteria_2.h | 2 +- .../Mesh_2/CGAL/Delaunay_mesh_vertex_base_2.h | 2 +- .../Mesh_3/CGAL/Gray_image_mesh_domain_3.h | 2 +- .../doc/Mesh_3/CGAL/Implicit_mesh_domain_3.h | 2 +- .../Mesh_3/CGAL/Labeled_image_mesh_domain_3.h | 2 +- Mesh_3/doc/Mesh_3/CGAL/Mesh_cell_criteria_3.h | 2 +- .../doc/Mesh_3/CGAL/Mesh_facet_criteria_3.h | 2 +- .../Mesh_3/CGAL/Polyhedral_mesh_domain_3.h | 2 +- .../Polyhedral_mesh_domain_with_features_3.h | 2 +- Mesh_3/doc/Mesh_3/CGAL/Triangle_accessor_3.h | 2 +- .../include/CGAL/Compact_mesh_cell_base_3.h | 2 +- Mesh_3/include/CGAL/Labeled_mesh_domain_3.h | 2 +- Mesh_3/include/CGAL/Mesh_cell_base_3.h | 2 +- .../CGAL/Mesh_constant_domain_field_3.h | 2 +- Mesh_3/include/CGAL/Mesh_criteria_3.h | 2 +- .../Mesh_domain_with_polyline_features_3.h | 2 +- Mesh_3/include/CGAL/Mesh_edge_criteria_3.h | 2 +- Mesh_3/include/CGAL/Mesh_vertex_base_3.h | 2 +- .../CGAL/Polyhedral_complex_mesh_domain_3.h | 2 +- .../CGAL/Sizing_field_with_aabb_tree.h | 2 +- .../CGAL/Polygon_convex_decomposition_2.h | 6 ++-- .../CGAL/Polygon_nop_decomposition_2.h | 2 +- .../Polygon_triangulation_decomposition_2.h | 2 +- .../CGAL/Polygon_vertical_decomposition_2.h | 2 +- ...mall_side_angle_bisector_decomposition_2.h | 2 +- .../Miscellany/CGAL/Handle_hash_function.h | 2 +- .../Modular_arithmetic/CGAL/Modular_traits.h | 2 +- .../doc/Modular_arithmetic/CGAL/Residue.h | 2 +- Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h | 2 +- Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h | 2 +- .../CGAL/Filtered_extended_homogeneous.h | 2 +- .../doc/Number_types/CGAL/CORE_BigFloat.h | 4 +-- .../doc/Number_types/CGAL/CORE_BigInt.h | 3 +- .../doc/Number_types/CGAL/CORE_BigRat.h | 5 +--- .../doc/Number_types/CGAL/CORE_Expr.h | 4 +-- Number_types/doc/Number_types/CGAL/Gmpfi.h | 3 +- Number_types/doc/Number_types/CGAL/Gmpfr.h | 3 +- Number_types/doc/Number_types/CGAL/Gmpq.h | 4 +-- Number_types/doc/Number_types/CGAL/Gmpz.h | 3 +- Number_types/doc/Number_types/CGAL/Gmpzf.h | 3 +- .../doc/Number_types/CGAL/Interval_nt.h | 3 +- .../doc/Number_types/CGAL/Lazy_exact_nt.h | 5 ++-- Number_types/doc/Number_types/CGAL/MP_Float.h | 3 +- Number_types/doc/Number_types/CGAL/Mpzf.h | 3 +- .../doc/Number_types/CGAL/NT_converter.h | 2 +- .../Number_types/CGAL/Number_type_checker.h | 3 +- Number_types/doc/Number_types/CGAL/Quotient.h | 4 +-- .../doc/Number_types/CGAL/Sqrt_extension.h | 16 +++++----- Number_types/doc/Number_types/CGAL/double.h | 3 +- Number_types/doc/Number_types/CGAL/float.h | 3 +- Number_types/doc/Number_types/CGAL/gmpxx.h | 7 ++--- .../doc/Number_types/CGAL/leda_bigfloat.h | 4 +-- .../doc/Number_types/CGAL/leda_integer.h | 3 +- .../doc/Number_types/CGAL/leda_rational.h | 5 +--- .../doc/Number_types/CGAL/leda_real.h | 4 +-- .../doc/Number_types/CGAL/long_long.h | 3 +- .../doc/Number_types/CGAL/utils_classes.h | 6 ++-- Number_types/include/CGAL/Exact_algebraic.h | 5 +--- Number_types/include/CGAL/Exact_integer.h | 3 +- Number_types/include/CGAL/Exact_rational.h | 5 +--- .../Oriented_bounding_box_traits_3.h | 2 +- Orthtree/include/CGAL/Orthtree/Node.h | 2 +- Orthtree/include/CGAL/Orthtree/Traversals.h | 8 ++--- Orthtree/include/CGAL/Orthtree_traits_2.h | 2 +- Orthtree/include/CGAL/Orthtree_traits_3.h | 2 +- Orthtree/include/CGAL/Orthtree_traits_d.h | 2 +- .../CGAL/Partition_is_valid_traits_2.h | 2 +- .../doc/Partition_2/CGAL/Partition_traits_2.h | 6 +--- .../CGAL/polygon_function_objects.h | 6 ++-- ...riodic_2_Delaunay_triangulation_traits_2.h | 2 +- .../CGAL/Periodic_2_triangulation_2.h | 2 +- .../Periodic_2_triangulation_face_base_2.h | 2 +- .../CGAL/Periodic_2_triangulation_traits_2.h | 2 +- .../Periodic_2_triangulation_vertex_base_2.h | 2 +- ...riodic_3_Delaunay_triangulation_traits_3.h | 2 +- .../CGAL/Periodic_3_offset_3.h | 2 +- ...eriodic_3_regular_triangulation_traits_3.h | 2 +- .../Periodic_3_triangulation_ds_cell_base_3.h | 2 +- ...eriodic_3_triangulation_ds_vertex_base_3.h | 2 +- .../CGAL/Periodic_3_triangulation_traits_3.h | 2 +- ...perbolic_Delaunay_triangulation_traits_2.h | 2 +- ...c_4_hyperbolic_triangulation_face_base_2.h | 2 +- ...4_hyperbolic_triangulation_vertex_base_2.h | 2 +- Point_set_3/include/CGAL/Point_set_3.h | 10 +++---- .../include/CGAL/Point_with_normal_3.h | 2 +- .../include/CGAL/Lightweight_vector_3.h | 2 +- .../CGAL/Poisson_reconstruction_function.h | 2 +- .../CGAL/General_polygon_with_holes_2.h | 2 +- Polygon/include/CGAL/Polygon_with_holes_2.h | 2 +- .../doc/Polyhedron/CGAL/Polyhedron_items_3.h | 2 +- .../Polyhedron/CGAL/Polyhedron_min_items_3.h | 2 +- .../doc/Polyhedron/CGAL/Polyhedron_traits_3.h | 2 +- .../CGAL/Polyhedron_traits_with_normals_3.h | 2 +- .../Hybrid_squared_distance_cost.h | 2 +- .../Scaled_squared_distance_cost.h | 2 +- .../Squared_distance_cost.h | 2 +- .../Stop_above_cost_threshold.h | 2 +- .../Stop_below_count_ratio_threshold.h | 2 +- .../Stop_below_count_threshold.h | 2 +- .../Polyline_simplification_2/Vertex_base_2.h | 2 +- .../doc/Polynomial/CGAL/Exponent_vector.h | 7 +---- Polynomial/doc/Polynomial/CGAL/Polynomial.h | 20 ++++++------- .../doc/Polynomial/CGAL/Polynomial_traits_d.h | 2 +- .../CGAL/Polytope_distance_d_traits_2.h | 2 +- .../CGAL/Polytope_distance_d_traits_3.h | 2 +- .../CGAL/Polytope_distance_d_traits_d.h | 2 +- .../CGAL/Width_default_traits_3.h | 2 +- Property_map/include/CGAL/property_map.h | 20 ++++++------- QP_solver/doc/QP_solver/CGAL/QP_models.h | 23 ++++---------- .../CGAL/Mesh_complex_3_in_triangulation_3.h | 2 +- .../CGAL/Simplicial_mesh_cell_base_3.h | 2 +- .../CGAL/Simplicial_mesh_vertex_base_3.h | 4 +-- .../doc/STL_Extension/CGAL/Complexity_tags.h | 6 ++-- .../doc/STL_Extension/CGAL/Default.h | 3 +- .../doc/STL_Extension/CGAL/Location_policy.h | 3 +- .../STL_Extension/CGAL/Spatial_lock_grid_3.h | 2 +- .../doc/STL_Extension/CGAL/function_objects.h | 26 ++++++++-------- .../doc/STL_Extension/CGAL/iterator.h | 20 ++++++------- STL_Extension/doc/STL_Extension/CGAL/tags.h | 4 +-- .../Advancing_front_mesher.h | 2 +- .../Alpha_shape_mesher.h | 2 +- .../Jet_smoother.h | 2 +- .../Weighted_PCA_smoother.h | 2 +- .../CGAL/Range_segment_tree_traits.h | 12 ++++---- .../CGAL/Segment_Delaunay_graph_2.h | 2 +- .../CGAL/Segment_Delaunay_graph_face_base_2.h | 2 +- ...Segment_Delaunay_graph_filtered_traits_2.h | 10 ++----- .../CGAL/Segment_Delaunay_graph_hierarchy_2.h | 4 +-- ...t_Delaunay_graph_hierarchy_vertex_base_2.h | 2 +- .../CGAL/Segment_Delaunay_graph_site_2.h | 2 +- .../Segment_Delaunay_graph_storage_site_2.h | 2 +- ..._Delaunay_graph_storage_site_with_info_2.h | 2 +- .../Segment_Delaunay_graph_storage_traits_2.h | 2 +- ...elaunay_graph_storage_traits_with_info_2.h | 2 +- .../CGAL/Segment_Delaunay_graph_traits_2.h | 4 +-- .../Segment_Delaunay_graph_vertex_base_2.h | 2 +- .../CGAL/Segment_Delaunay_graph_Linf_2.h | 2 +- ...nt_Delaunay_graph_Linf_filtered_traits_2.h | 4 +-- .../Segment_Delaunay_graph_Linf_traits_2.h | 4 +-- .../Efficient_RANSAC_traits.h | 2 +- .../Point_set/K_neighbor_query.h | 2 +- .../Least_squares_circle_fit_region.h | 2 +- .../Least_squares_cylinder_fit_region.h | 2 +- .../Point_set/Least_squares_line_fit_region.h | 2 +- .../Least_squares_plane_fit_region.h | 2 +- .../Least_squares_sphere_fit_region.h | 2 +- .../Point_set/Sphere_neighbor_query.h | 2 +- .../Least_squares_plane_fit_region.h | 2 +- .../Polygon_mesh/One_ring_neighbor_query.h | 2 +- .../Polygon_mesh/Polyline_graph.h | 2 +- .../Least_squares_line_fit_region.h | 2 +- .../Contours/Longest_direction_2.h | 2 +- .../Contours/Multiple_directions_2.h | 2 +- .../Contours/User_defined_directions_2.h | 2 +- .../Segments/Angle_regularization_2.h | 2 +- .../Segments/Delaunay_neighbor_query_2.h | 2 +- .../Segments/Offset_regularization_2.h | 2 +- .../doc/Skin_surface_3/CGAL/Skin_surface_3.h | 2 +- .../CGAL/Skin_surface_traits_3.h | 2 +- .../Skin_surface_3/CGAL/Union_of_balls_3.h | 2 +- .../CGAL/Snap_rounding_traits_2.h | 2 +- .../include/CGAL/Default_diagonalize_traits.h | 2 +- .../include/CGAL/Diagonalize_traits.h | 2 +- .../include/CGAL/Eigen_diagonalize_traits.h | 2 +- Solver_interface/include/CGAL/Eigen_matrix.h | 2 +- .../include/CGAL/Eigen_solver_traits.h | 2 +- .../include/CGAL/Eigen_sparse_matrix.h | 4 +-- Solver_interface/include/CGAL/Eigen_svd.h | 2 +- Solver_interface/include/CGAL/Eigen_vector.h | 3 +- .../CGAL/GLPK_mixed_integer_program_traits.h | 2 +- .../CGAL/Mixed_integer_program_traits.h | 8 ++--- .../CGAL/OSQP_quadratic_program_traits.h | 2 +- .../CGAL/SCIP_mixed_integer_program_traits.h | 2 +- .../CGAL/Euclidean_distance.h | 2 +- .../CGAL/Euclidean_distance_sphere_point.h | 2 +- .../Spatial_searching/CGAL/Fuzzy_iso_box.h | 2 +- .../doc/Spatial_searching/CGAL/Fuzzy_sphere.h | 2 +- .../CGAL/Manhattan_distance_iso_box_point.h | 2 +- .../Spatial_searching/CGAL/Plane_separator.h | 2 +- .../Spatial_searching/CGAL/Search_traits.h | 2 +- .../Spatial_searching/CGAL/Search_traits_2.h | 3 +- .../Spatial_searching/CGAL/Search_traits_3.h | 3 +- .../CGAL/Search_traits_adapter.h | 8 ++--- .../Spatial_searching/CGAL/Search_traits_d.h | 3 +- .../doc/Spatial_searching/CGAL/Splitters.h | 14 ++++----- .../CGAL/Weighted_Minkowski_distance.h | 2 +- .../CGAL/Hilbert_policy_tags.h | 9 ++---- .../CGAL/Spatial_sort_traits_adapter_2.h | 2 +- .../CGAL/Spatial_sort_traits_adapter_3.h | 2 +- .../CGAL/Spatial_sort_traits_adapter_d.h | 2 +- .../CGAL/Polygon_offset_builder_traits_2.h | 2 +- .../CGAL/Straight_skeleton_2.h | 2 +- .../CGAL/Straight_skeleton_builder_2.h | 2 +- .../CGAL/Straight_skeleton_builder_traits_2.h | 2 +- .../CGAL/Straight_skeleton_converter_2.h | 2 +- .../CGAL/Straight_skeleton_face_base_2.h | 2 +- .../CGAL/Straight_skeleton_halfedge_base_2.h | 2 +- .../CGAL/Straight_skeleton_vertex_base_2.h | 2 +- .../Stream_lines_2/CGAL/Euler_integrator_2.h | 2 +- .../doc/Stream_lines_2/CGAL/Regular_grid_2.h | 2 +- .../CGAL/Runge_kutta_integrator_2.h | 2 +- .../Stream_lines_2/CGAL/Triangular_field_2.h | 2 +- .../include/CGAL/IO/Istream_iterator.h | 2 +- .../include/CGAL/IO/Ostream_iterator.h | 2 +- .../subdivision_masks_3.h | 8 ++--- .../include/CGAL/Surface_mesh/Properties.h | 2 +- .../include/CGAL/Surface_mesh/Surface_mesh.h | 18 ++++------- .../L21_metric_plane_proxy.h | 2 +- .../L2_metric_plane_proxy.h | 2 +- ...ormation_Eigen_closest_rotation_traits_3.h | 2 +- ...on_Eigen_polar_closest_rotation_traits_3.h | 2 +- .../ARAP_parameterizer_3.h | 2 +- .../Barycentric_mapping_parameterizer_3.h | 2 +- .../Circular_border_parameterizer_3.h | 6 ++-- .../Discrete_authalic_parameterizer_3.h | 2 +- .../Discrete_conformal_map_parameterizer_3.h | 2 +- .../Fixed_border_parameterizer_3.h | 2 +- .../LSCM_parameterizer_3.h | 2 +- .../MVC_post_processor_3.h | 2 +- .../Mean_value_coordinates_parameterizer_3.h | 2 +- .../Square_border_parameterizer_3.h | 6 ++-- .../Two_vertices_parameterizer_3.h | 2 +- .../Surface_mesh_shortest_path_traits.h | 4 +-- .../Edge_collapse_visitor_base.h | 2 +- .../Bounded_distance_placement.h | 2 +- .../Bounded_normal_change_filter.h | 2 +- .../Bounded_normal_change_placement.h | 2 +- .../Edge_collapse/Constrained_placement.h | 2 +- .../Count_ratio_stop_predicate.h | 2 +- .../Edge_collapse/Count_stop_predicate.h | 2 +- .../Edge_count_ratio_stop_predicate.h | 2 +- .../Edge_collapse/Edge_count_stop_predicate.h | 2 +- .../Policies/Edge_collapse/Edge_length_cost.h | 2 +- .../Edge_length_stop_predicate.h | 2 +- .../Face_count_ratio_stop_predicate.h | 2 +- .../Edge_collapse/Face_count_stop_predicate.h | 2 +- .../Edge_collapse/LindstromTurk_cost.h | 2 +- .../Edge_collapse/LindstromTurk_placement.h | 2 +- .../Edge_collapse/Midpoint_placement.h | 2 +- .../Polyhedral_envelope_filter.h | 2 +- .../CGAL/Polygonal_schema_min_items.h | 2 +- .../Surface_mesher/CGAL/Gray_level_image_3.h | 2 +- .../Surface_mesher/CGAL/Implicit_surface_3.h | 2 +- .../CGAL/Surface_mesh_cell_base_3.h | 2 +- ...urface_mesh_complex_2_in_triangulation_3.h | 2 +- .../CGAL/Surface_mesh_default_criteria_3.h | 2 +- .../Surface_mesh_default_triangulation_3.h | 2 +- .../CGAL/Surface_mesh_vertex_base_3.h | 2 +- .../CGAL/Triangulation_data_structure_2.h | 2 +- .../TDS_2/CGAL/Triangulation_ds_face_base_2.h | 2 +- .../CGAL/Triangulation_ds_vertex_base_2.h | 2 +- .../Concepts/TriangulationDataStructure_2.h | 4 +-- .../CGAL/Triangulation_data_structure_3.h | 2 +- .../TDS_3/CGAL/Triangulation_ds_cell_base_3.h | 2 +- .../CGAL/Triangulation_ds_vertex_base_3.h | 2 +- .../Remeshing_cell_base_3.h | 3 +- .../Remeshing_vertex_base_3.h | 3 +- .../CGAL/Triangulation_data_structure.h | 4 +-- .../CGAL/Triangulation_ds_full_cell.h | 2 +- .../CGAL/Triangulation_ds_vertex.h | 2 +- .../Triangulation/CGAL/Triangulation_face.h | 2 +- .../CGAL/Triangulation_full_cell.h | 4 +-- .../Triangulation/CGAL/Triangulation_vertex.h | 4 +-- .../Constrained_triangulation_face_base_2.h | 2 +- .../CGAL/Regular_triangulation_face_base_2.h | 2 +- .../Regular_triangulation_vertex_base_2.h | 2 +- .../CGAL/Triangulation_face_base_2.h | 2 +- .../Triangulation_face_base_with_info_2.h | 6 ++-- .../CGAL/Triangulation_hierarchy_2.h | 2 +- .../CGAL/Triangulation_vertex_base_2.h | 2 +- .../Triangulation_vertex_base_with_info_2.h | 6 ++-- .../CGAL/Delaunay_triangulation_cell_base_3.h | 2 +- ...angulation_cell_base_with_circumcenter_3.h | 2 +- .../CGAL/Regular_triangulation_cell_base_3.h | 2 +- ...n_cell_base_with_weighted_circumcenter_3.h | 2 +- ...Regular_triangulation_euclidean_traits_3.h | 2 +- .../Regular_triangulation_vertex_base_3.h | 2 +- .../CGAL/Triangulation_cell_base_3.h | 2 +- .../Triangulation_cell_base_with_info_3.h | 3 +- .../CGAL/Triangulation_vertex_base_3.h | 2 +- .../Triangulation_vertex_base_with_info_3.h | 3 +- .../CGAL/Triangulation_segment_traverser_3.h | 2 +- ...elaunay_triangulation_on_sphere_traits_2.h | 2 +- .../CGAL/Projection_on_sphere_traits_3.h | 2 +- .../Triangulation_on_sphere_face_base_2.h | 2 +- .../Triangulation_on_sphere_vertex_base_2.h | 2 +- .../CGAL/Rotational_sweep_visibility_2.h | 2 +- .../CGAL/Simple_polygon_visibility_2.h | 2 +- .../CGAL/Triangular_expansion_visibility_2.h | 2 +- .../Apollonius_graph_adaptation_policies_2.h | 4 +-- .../Apollonius_graph_adaptation_traits_2.h | 2 +- ...unay_triangulation_adaptation_policies_2.h | 4 +-- ...launay_triangulation_adaptation_traits_2.h | 2 +- .../CGAL/Identity_policy_2.h | 2 +- ...ular_triangulation_adaptation_policies_2.h | 4 +-- ...egular_triangulation_adaptation_traits_2.h | 2 +- ...ent_Delaunay_graph_adaptation_policies_2.h | 4 +-- ...gment_Delaunay_graph_adaptation_traits_2.h | 2 +- .../CGAL/Voronoi_diagram_2.h | 18 ++--------- .../CGAL/Weights/discrete_harmonic_weights.h | 2 +- .../include/CGAL/Weights/mean_value_weights.h | 2 +- .../include/CGAL/Weights/wachspress_weights.h | 2 +- 521 files changed, 738 insertions(+), 964 deletions(-) diff --git a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Algebraic_structure_traits.h b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Algebraic_structure_traits.h index ebc96162957..4b83632b1a4 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Algebraic_structure_traits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Algebraic_structure_traits.h @@ -5,7 +5,7 @@ namespace CGAL { An instance of `Algebraic_structure_traits` is a model of `AlgebraicStructureTraits`, where T is the associated type. -\cgalModels `AlgebraicStructureTraits` +\cgalModels{AlgebraicStructureTraits} */ template< typename T > @@ -22,7 +22,7 @@ namespace CGAL { Tag indicating that a type is a model of the `EuclideanRing` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `EuclideanRing` \sa `AlgebraicStructureTraits` @@ -38,7 +38,7 @@ struct Euclidean_ring_tag : public Unique_factorization_domain_tag { Tag indicating that a type is a model of the `Field` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `Field` \sa `AlgebraicStructureTraits` @@ -54,7 +54,7 @@ struct Field_tag : public Integral_domain_tag { Tag indicating that a type is a model of the `FieldWithKthRoot` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `FieldWithKthRoot` \sa `AlgebraicStructureTraits` @@ -70,7 +70,7 @@ struct Field_with_kth_root_tag : public Field_with_sqrt_tag { Tag indicating that a type is a model of the `FieldWithRootOf` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `FieldWithRootOf` \sa `AlgebraicStructureTraits` @@ -86,7 +86,7 @@ struct Field_with_root_of_tag : public Field_with_kth_root_tag { Tag indicating that a type is a model of the `FieldWithSqrt` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `FieldWithSqrt` \sa `AlgebraicStructureTraits` @@ -102,7 +102,7 @@ struct Field_with_sqrt_tag : public Field_tag { Tag indicating that a type is a model of the `IntegralDomain` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `IntegralDomain` \sa `AlgebraicStructureTraits` @@ -118,7 +118,7 @@ struct Integral_domain_tag : public Integral_domain_without_division_tag { Tag indicating that a type is a model of the `IntegralDomainWithoutDivision` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `IntegralDomainWithoutDivision` @@ -133,7 +133,7 @@ struct Integral_domain_without_division_tag { Tag indicating that a type is a model of the `UniqueFactorizationDomain` concept. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `UniqueFactorizationDomain` \sa `AlgebraicStructureTraits` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Fraction_traits.h b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Fraction_traits.h index d54d382dfd9..025487d3248 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Fraction_traits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Fraction_traits.h @@ -6,7 +6,7 @@ namespace CGAL { An instance of `Fraction_traits` is a model of `FractionTraits`, where `T` is the associated type. -\cgalModels `FractionTraits` +\cgalModels{FractionTraits} */ template< typename T > diff --git a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Real_embeddable_traits.h b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Real_embeddable_traits.h index 90953f33c91..5c4966645e7 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Real_embeddable_traits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/CGAL/Real_embeddable_traits.h @@ -6,7 +6,7 @@ namespace CGAL { An instance of `Real_embeddable_traits` is a model of `RealEmbeddableTraits`, where T is the associated type. -\cgalModels `RealEmbeddableTraits` +\cgalModels{RealEmbeddableTraits} */ template< typename T > diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_1.h index a3e31bea51d..05b59d29f72 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_1.h @@ -27,7 +27,7 @@ approximation of an algebraic real root is a slightly modified (filtered) version of the one presented in \cgalCite{abbott-qir-06}. The method has quadratic convergence. -\cgalModels `AlgebraicKernel_d_1` +\cgalModels{AlgebraicKernel_d_1} \sa `AlgebraicKernel_d_1` \sa `Polynomial_d` diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_2.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_2.h index c4b643bfab9..35472409ffb 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_2.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_d_2.h @@ -47,7 +47,7 @@ above. `ROOT` should be one of the integer types. See also the documentation of `Sqrt_extension`. \cgalAdvancedEnd -\cgalModels `AlgebraicKernel_d_2` +\cgalModels{AlgebraicKernel_d_2} \sa `AlgebraicKernel_d_1` \sa `AlgebraicKernel_d_2` diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpq_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpq_d_1.h index 204f5b233fc..dc0f525aeeb 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpq_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpq_d_1.h @@ -12,7 +12,7 @@ rational univariate polynomial root isolation. It is a model of the isolate integer polynomials, the operations of this kernel have the overhead of converting the polynomials to integer. -\cgalModels `AlgebraicKernel_d_1` +\cgalModels{AlgebraicKernel_d_1} \sa `Algebraic_kernel_rs_gmpz_d_1` diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpz_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpz_d_1.h index 029066a0119..7f4e7eb0966 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpz_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/CGAL/Algebraic_kernel_rs_gmpz_d_1.h @@ -10,7 +10,7 @@ This univariate algebraic kernel uses the Rs library to perform integer univariate polynomial root isolation. It is a model of the `AlgebraicKernel_d_1` concept. -\cgalModels `AlgebraicKernel_d_1` +\cgalModels{AlgebraicKernel_d_1} \sa `Algebraic_kernel_rs_gmpz_d_1` diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_face_base_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_face_base_2.h index fe8988c8f71..6e2c29329cc 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_face_base_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_face_base_2.h @@ -16,7 +16,7 @@ if `Alpha_shape_face_base_2` is intended to be used with an alpha-shape class ba \link Tag_true `Tag_true`\endlink, triggers exact comparisons between alpha values. See the description provided in the documentation of `Alpha_shape_2` for more details. The default value is \link Tag_false `Tag_false`\endlink. -\cgalModels `AlphaShapeFace_2` +\cgalModels{AlphaShapeFace_2} \sa `Triangulation_face_base_2` \sa `Regular_triangulation_face_base_2` diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_vertex_base_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_vertex_base_2.h index 2c0602ce512..f440c0b2d4d 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_vertex_base_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_vertex_base_2.h @@ -17,7 +17,7 @@ if `Alpha_shape_vertex_base_2` is intended to be used with an alpha-shape class \link Tag_true `Tag_true`\endlink, triggers exact comparisons between alpha values. See the description provided in the documentation of `Alpha_shape_2` for more details. The default value is \link Tag_false `Tag_false`\endlink. -\cgalModels `AlphaShapeVertex_2` +\cgalModels{AlphaShapeVertex_2} \sa `Triangulation_vertex_base_2` \sa `Regular_triangulation_vertex_base_2` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_cell_base_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_cell_base_3.h index 5a92d16b0dc..a64151eb764 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_cell_base_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_cell_base_3.h @@ -19,7 +19,7 @@ provided in the documentation of `Alpha_shape_3` for more details. The default v must be \link Tag_true `Tag_true`\endlink if the underlying triangulation of the alpha shape to be used is a regular triangulation and \link Tag_false `Tag_false`\endlink otherwise. The default is \link Tag_false `Tag_false`\endlink. -\cgalModels `AlphaShapeCell_3` +\cgalModels{AlphaShapeCell_3} \sa `Delaunay_triangulation_cell_base_3` \sa `Regular_triangulation_cell_base_3` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_vertex_base_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_vertex_base_3.h index 0ba47d5cb6f..ad88466cd48 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_vertex_base_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_vertex_base_3.h @@ -19,7 +19,7 @@ provided in the documentation of `Alpha_shape_3` for more details. The default v must be \link Tag_true `Tag_true`\endlink if the underlying triangulation of the alpha shape to be used is a regular triangulation and \link Tag_false `Tag_false`\endlink otherwise. The default is \link Tag_false `Tag_false`\endlink. -\cgalModels `AlphaShapeVertex_3` +\cgalModels{AlphaShapeVertex_3} \sa `Triangulation_vertex_base_3` \sa `Regular_triangulation_vertex_base_3` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_cell_base_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_cell_base_3.h index fc558a82d75..b7fcb067dee 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_cell_base_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_cell_base_3.h @@ -13,7 +13,7 @@ to the `Alpha_shape_3` class. By default, it is instantiated with `Delaunay_triangulation_cell_base_3`, which is appropriate for basic alpha shapes. -\cgalModels `FixedAlphaShapeCell_3` +\cgalModels{FixedAlphaShapeCell_3} \sa `Alpha_shape_cell_base_3` \sa `Delaunay_triangulation_cell_base_3` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_vertex_base_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_vertex_base_3.h index 4b237a562f2..0d4e36a13c4 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_vertex_base_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_vertex_base_3.h @@ -13,7 +13,7 @@ to the `Alpha_shape_3` class. By default, it is instantiated with `Triangulation_vertex_base_3`, which is appropriate for basic alpha shapes. -\cgalModels `FixedAlphaShapeVertex_3` +\cgalModels{FixedAlphaShapeVertex_3} \sa `Alpha_shape_vertex_base_3` \sa `Triangulation_vertex_base_3` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_2.h index bf41824e4a4..92cd1c06b4d 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_2.h @@ -46,7 +46,7 @@ ag.incident_edges(ag.infinite_vertex()); ag.incident_edges(ag.infinite_vertex(), f); \endcode -\cgalModels `DelaunayGraph_2` +\cgalModels{DelaunayGraph_2} \sa `CGAL::Apollonius_graph_traits_2` \sa `CGAL::Apollonius_graph_filtered_traits_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_filtered_traits_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_filtered_traits_2.h index 155a7b240cb..a8c3dfc63f0 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_filtered_traits_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_filtered_traits_2.h @@ -37,7 +37,7 @@ The default values for the template parameters are as follows: `FK = CGAL::Simple_cartesian >`, `FM = CM`. -\cgalModels `ApolloniusGraphTraits_2` +\cgalModels{ApolloniusGraphTraits_2} \sa `Kernel` \sa `ApolloniusGraphTraits_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_vertex_base_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_vertex_base_2.h index c09d6255ab5..7e05e28f2a3 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_vertex_base_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_vertex_base_2.h @@ -11,7 +11,7 @@ vertex base required by the `Apollonius_graph_hierarchy_vertex_base_2` is templated by a class `Agvb` which must be a model of the `ApolloniusGraphVertexBase_2` concept. -\cgalModels `ApolloniusGraphHierarchyVertexBase_2` +\cgalModels{ApolloniusGraphHierarchyVertexBase_2} \sa `CGAL::Apollonius_graph_vertex_base_2` \sa `CGAL::Triangulation_data_structure_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_traits_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_traits_2.h index 3fe29ef740b..dd854386881 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_traits_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_traits_2.h @@ -20,7 +20,7 @@ default value for `Method_tag` is `CGAL::Integral_domain_without_division_tag`. The way the predicates are evaluated is discussed in \cgalCite{cgal:ke-ppawv-02}, \cgalCite{cgal:ke-rctac-03}. -\cgalModels `ApolloniusGraphTraits_2` +\cgalModels{ApolloniusGraphTraits_2} \sa `CGAL::Apollonius_graph_2` \sa `CGAL::Apollonius_graph_filtered_traits_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_vertex_base_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_vertex_base_2.h index ae9eca3dc6e..04240886740 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_vertex_base_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_vertex_base_2.h @@ -17,7 +17,7 @@ site can become visible. If `StoreHidden` is set to `true`, hidden sites are stored, otherwise they are discarded. By default `StoreHidden` is set to `true`. -\cgalModels `ApolloniusGraphVertexBase_2` +\cgalModels{ApolloniusGraphVertexBase_2} \sa `CGAL::Triangulation_data_structure_2` \sa `CGAL::Apollonius_graph_hierarchy_vertex_base_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_site_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_site_2.h index 162a6e46259..8d55878c7e8 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_site_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_site_2.h @@ -8,7 +8,7 @@ The class `Apollonius_site_2` is a model for the concept `ApolloniusSite_2`. It is parametrized by a template parameter `K` which must be a model of the `Kernel` concept. -\cgalModels `ApolloniusSite_2` +\cgalModels{ApolloniusSite_2} \cgalHeading{Types} diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_Bezier_curve_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_Bezier_curve_traits_2.h index b013c2be1ad..7976f939c74 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_Bezier_curve_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_Bezier_curve_traits_2.h @@ -52,8 +52,7 @@ the `Are_mergeable_2` operation does not enforce the input curves to have the same direction as a precondition. Moreover, `Arr_Bezier_curve_traits_2` supports the merging of curves of opposite directions. -\cgalModels `ArrangementTraits_2` -\cgalModels `ArrangementDirectionalXMonotoneTraits_2` +\cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2} */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_algebraic_segment_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_algebraic_segment_traits_2.h index 165e9cbd587..069d91859ee 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_algebraic_segment_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_algebraic_segment_traits_2.h @@ -22,7 +22,7 @@ the types `leda::integer` and `CORE::BigInt` are supported as well as any instance of `CGAL::Sqrt_extension` that is instantiated with one of the integral types above. -\cgalModels `ArrangementTraits_2` +\cgalModels{ArrangementTraits_2} */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_bounded_planar_topology_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_bounded_planar_topology_traits_2.h index 06cafbd5e13..f839b4967ef 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_bounded_planar_topology_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_bounded_planar_topology_traits_2.h @@ -21,7 +21,7 @@ namespace CGAL { * `Arr_default_dcel`. * * - * \cgalModels `ArrangementBasicTopologyTraits` + * \cgalModels{ArrangementBasicTopologyTraits} * * \sa `Arr_default_dcel` * \sa `CGAL::Arr_geodesic_arc_on_sphere_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h index 43b7d56bcf8..4a82982e751 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h @@ -32,8 +32,7 @@ namespace CGAL { * same direction as a precondition. Moreover, `Arr_circle_segment_traits_2` * supports the merging of curves of opposite directions. * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementDirectionalXMonotoneTraits_2` + * \cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2} * */ template< typename Kernel > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_arc_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_arc_traits_2.h index f8307dbca1b..014e1f5ec21 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_arc_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_arc_traits_2.h @@ -8,7 +8,7 @@ This class is a traits class for \cgal arrangements, built on top of a model of concept `CircularKernel`. It provides curves of type `CGAL::Circular_arc_2`. -\cgalModels `ArrangementTraits_2` +\cgalModels{ArrangementTraits_2} */ template< typename CircularKernel > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_line_arc_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_line_arc_traits_2.h index b12a51541cf..9bd3569f114 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_line_arc_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circular_line_arc_traits_2.h @@ -12,7 +12,7 @@ of both types It uses the boost::variant. -\cgalModels `ArrangementTraits_2` +\cgalModels{ArrangementTraits_2} */ template< typename CircularKernel > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h index fe6e70de9c5..fe052cd26e5 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h @@ -80,9 +80,7 @@ namespace CGAL { * to have the same direction as a precondition. Moreover, `Arr_conic_traits_2` * supports the merging of curves of opposite directions. * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementLandmarkTraits_2` - * \cgalModels `ArrangementDirectionalXMonotoneTraits_2` + * \cgalModels{ArrangementTraits_2,ArrangementLandmarkTraits_2,ArrangementDirectionalXMonotoneTraits_2} * * \cgalHeading{Types} */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_consolidated_curve_data_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_consolidated_curve_data_traits_2.h index bbf6205037d..2ed18e6be6b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_consolidated_curve_data_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_consolidated_curve_data_traits_2.h @@ -21,7 +21,7 @@ both resulting subcurves. In case two (or more) \f$ x\f$-monotone curves overlap, their data sets are consolidated, and are inserted into the set of the \f$ x\f$-monotone curve that represents the overlap. -\cgalModels `ArrangementTraits_2` +\cgalModels{ArrangementTraits_2} */ template< typename Traits, typename Data > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_curve_data_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_curve_data_traits_2.h index a0d7d72ce42..e75623e8cd7 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_curve_data_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_curve_data_traits_2.h @@ -49,7 +49,7 @@ namespace CGAL { * `d1` and `d2`. The \f$ x\f$-monotone curve that represents the overlap is * associated with the output of this functor. * - * \cgalModels `ArrangementTraits_2` + * \cgalModels{ArrangementTraits_2} */ template class Arr_curve_data_traits_2 : public Tr { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_dcel_base.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_dcel_base.h index 8f9202a3a13..9fa8f5f4d96 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_dcel_base.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_dcel_base.h @@ -16,7 +16,7 @@ must be instantiated with models of the concepts `ArrangementDcelVertex`, `ArrangementDcelHalfedge`, and `ArrangementDcelFace` respectively. -\cgalModels `ArrangementDcel` +\cgalModels{ArrangementDcel} */ template< typename V, typename H, typename F > @@ -29,7 +29,7 @@ public: The basic \dcel face type. Serves as a basis class for an extended face record with auxiliary data fields. -\cgalModels `ArrangementDcelFace` +\cgalModels{ArrangementDcelFace} */ class Arr_face_base { @@ -43,7 +43,7 @@ The basic \dcel halfedge type. Serves as a basis class for an extended halfedge record with auxiliary data fields. The `Curve` parameter is the type of \f$ x\f$-monotone curves associated with the vertices. -\cgalModels `ArrangementDcelHalfedge` +\cgalModels{ArrangementDcelHalfedge} */ template< typename Curve > @@ -58,7 +58,7 @@ The basic \dcel vertex type. Serves as a basis class for an extended vertex record with auxiliary data fields. The `Point` parameter is the type of points associated with the vertices. -\cgalModels `ArrangementDcelVertex` +\cgalModels{ArrangementDcelVertex} */ template< typename Point > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_dcel.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_dcel.h index 8da592fa207..453a7f05092 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_dcel.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_dcel.h @@ -12,7 +12,7 @@ the base vertex and halfedge types, respectively. Thus, the default \dcel records store no other information, except for the topological incidence relations and the geometric data attached to vertices and edges. -\cgalModels `ArrangementDcelWithRebind` +\cgalModels{ArrangementDcelWithRebind} \sa `Arr_dcel_base` */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_overlay_traits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_overlay_traits.h index 6419b1af7ae..5b5677b7458 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_overlay_traits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_default_overlay_traits.h @@ -10,7 +10,7 @@ of type `Arrangement` that store no auxiliary data with their \dcel records, whe \dcel data as well. This class simply gives empty implementation for all traits-class functions. -\cgalModels `OverlayTraits` +\cgalModels{OverlayTraits} \sa `overlay` @@ -43,7 +43,7 @@ it uses the functor `OvlFaceData`, which accepts a `FaceData_A` object and a `FaceData_B` object and computes a corresponding `FaceData_R` object, in order to set the auxiliary data of the overlay face. -\cgalModels `OverlayTraits` +\cgalModels{OverlayTraits} \sa `overlay` \sa `CGAL::Arr_face_extended_dcel` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_extended_dcel.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_extended_dcel.h index b06910d1e14..b36aa2a7eb7 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_extended_dcel.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_extended_dcel.h @@ -33,7 +33,7 @@ The default values follow: -\cgalModels `ArrangementDcelWithRebind` +\cgalModels{ArrangementDcelWithRebind} \sa `Arr_dcel_base` @@ -57,7 +57,7 @@ The `Arr_extended_face` class-template extends the face topological-features of \dcel. It is parameterized by a face base-type `FaceBase` and a data type `FData` used to extend the face base-type. -\cgalModels `ArrangementDcelFace` +\cgalModels{ArrangementDcelFace} \sa `Arr_dcel_base` @@ -109,7 +109,7 @@ The `Arr_extended_halfedge` class-template extends the halfedge topological-feat the \dcel. It is parameterized by a halfedge base-type `HalfedgeBase` and a data type `HData` used to extend the halfedge base-type. -\cgalModels `ArrangementDcelHalfedge` +\cgalModels{ArrangementDcelHalfedge} \sa `Arr_dcel_base` @@ -162,7 +162,7 @@ topological-features of the \dcel. It is parameterized by a vertex base-type `VertexBase` and a data type `VData` used to extend the vertex base-type. -\cgalModels `ArrangementDcelVertex` +\cgalModels{ArrangementDcelVertex} \sa `Arr_dcel_base` @@ -235,7 +235,7 @@ as follows: -\cgalModels `ArrangementDcelWithRebind` +\cgalModels{ArrangementDcelWithRebind} \sa `Arr_dcel_base` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_face_index_map.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_face_index_map.h index ae70704f3b5..bcb0d5c378f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_face_index_map.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_face_index_map.h @@ -19,10 +19,7 @@ existing faces might be removed, the notification mechanism is used to dynamically maintain the mapping of face handles to indices. -\cgalModels DefaultConstructible -\cgalModels CopyConstructible -\cgalModels Assignable -\cgalModels `ReadablePropertyMap` +\cgalModels{DefaultConstructible,CopyConstructible,Assignable,ReadablePropertyMap} \sa `Arr_observer` \sa `Arr_vertex_index_map` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h index c6c4c608690..d34b40072a9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h @@ -39,9 +39,7 @@ namespace CGAL { * normalized vector \f$(x,y)\f$ in the \f$xy\f$-plane that bisects the * identification curve. - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementLandmarkTraits_2` - * \cgalModels `ArrangementSphericalBoundaryTraits_2` + * \cgalModels{ArrangementTraits_2,ArrangementLandmarkTraits_2,ArrangementSphericalBoundaryTraits_2} */ template @@ -52,9 +50,7 @@ namespace CGAL { * not-necessarily normalized 3D direction extended with information that * specifies the location of the point pre-image in the parameter space. * - * \cgalModels `Assignable` - * \cgalModels `DefaultConstructible` - * \cgalModels `CopyConstructible` + * \cgalModels{Assignable,DefaultConstructible,CopyConstructible} */ class Point_2 { public: @@ -118,9 +114,7 @@ namespace CGAL { * intersect the identified left and right sides of the boundary of the * parameter space. * - * \cgalModels `Assignable` - * \cgalModels `DefaultConstructible` - * \cgalModels `CopyConstructible` + * \cgalModels{Assignable,DefaultConstructible,CopyConstructible} */ class X_monotone_curve_2 { public: @@ -287,10 +281,7 @@ namespace CGAL { /*! Construction functor of a point. * - * \cgalModels `Assignable` - * \cgalModels `CopyConstructible` - * \cgalModels `AdaptableUnaryFunction` - * \cgalModels `AdaptableTernaryFunction` + * \cgalModels{Assignable,CopyConstructible,AdaptableUnaryFunction,AdaptableTernaryFunction} */ /*! */ @@ -325,11 +316,7 @@ namespace CGAL { /*! Construction functor of \f$x\f$-monotone geodesic arcs. * - * \cgalModels `Assignable` - * \cgalModels `CopyConstructible` - * \cgalModels `AdaptableUnaryFunction` - * \cgalModels `AdaptableBinaryFunction` - * \cgalModels `AdaptableTernaryFunction` + * \cgalModels{Assignable,CopyConstructible,AdaptableUnaryFunction,AdaptableBinaryFunction,AdaptableTernaryFunction} */ class Construct_x_monotone_curve_2 { public: @@ -393,11 +380,7 @@ namespace CGAL { /*! Construction functor of geodesic arcs. * - * \cgalModels `Assignable` - * \cgalModels `CopyConstructible` - * \cgalModels `AdaptableUnaryFunction` - * \cgalModels `AdaptableBinaryFunction` - * \cgalModels `AdaptableTernaryFunction` + * \cgalModels{Assignable,CopyConstructible,AdaptableUnaryFunction,AdaptableBinaryFunction,AdaptableTernaryFunction} */ class Construct_curve_2 { public: diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_landmarks_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_landmarks_point_location.h index 92490f47f2a..761f83a1044 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_landmarks_point_location.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_landmarks_point_location.h @@ -47,8 +47,7 @@ when the application frequently issues point-location queries on a rather static arrangement that the changes applied to it are mainly insertions of curves and not deletions of them. -\cgalModels `ArrangementPointLocation_2` -\cgalModels `ArrangementVerticalRayShoot_2` +\cgalModels{ArrangementPointLocation_2,ArrangementVerticalRayShoot_2} \sa `ArrangementPointLocation_2` \sa `ArrangementVerticalRayShoot_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_line_arc_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_line_arc_traits_2.h index b1b230c0393..909792816a7 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_line_arc_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_line_arc_traits_2.h @@ -8,7 +8,7 @@ This class is a traits class for \cgal arrangements, built on top of a model of concept `CircularKernel`. It provides curves of type `CGAL::Line_arc_2`. -\cgalModels `ArrangementTraits_2` +\cgalModels{ArrangementTraits_2} */ template< typename CircularKernel > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_linear_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_linear_traits_2.h index c46342987f8..7f1d5825c01 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_linear_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_linear_traits_2.h @@ -21,9 +21,7 @@ namespace CGAL { * we can find out its actual type and convert it to the respective kernel * object (say, to a `Kernel::Ray_2`). * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementLandmarkTraits_2` - * \cgalModels `ArrangementOpenBoundaryTraits_2` + * \cgalModels{ArrangementTraits_2,ArrangementLandmarkTraits_2,ArrangementOpenBoundaryTraits_2} */ template< typename Kernel > class Arr_linear_traits_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_naive_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_naive_point_location.h index 1ef49902c8c..d354aba1056 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_naive_point_location.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_naive_point_location.h @@ -13,8 +13,7 @@ The query time is therefore linear in the complexity of the arrangement. Naturally, this point-location strategy could turn into a heavy time-consuming process when applied to dense arrangements. -\cgalModels `ArrangementPointLocation_2` -\cgalModels `ArrangementVerticalRayShoot_2` +\cgalModels{ArrangementPointLocation_2,ArrangementVerticalRayShoot_2} \sa `ArrangementPointLocation_2` \sa `ArrangementVerticalRayShoot_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_basic_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_basic_traits_2.h index 2a97525dc22..e85664bdb76 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_basic_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_basic_traits_2.h @@ -21,7 +21,7 @@ instantiations for the kernel. Using other (inexact) number types `Simple_cartesian`) is also possible, at the user's own risk. -\cgalModels `ArrangementLandmarkTraits_2` +\cgalModels{ArrangementLandmarkTraits_2} */ template< typename Kernel > diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_traits_2.h index c5b1ad7bf9b..32a67f5162d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_non_caching_segment_traits_2.h @@ -32,9 +32,7 @@ the `Are_mergeable_2` operation does not enforce the input curves to have the same direction as a precondition. Moreover, `Arr_non_caching_segment_traits_2` supports the merging of curves of opposite directions. -\cgalModels `ArrangementTraits_2` -\cgalModels `ArrangementLandmarkTraits_2` -\cgalModels `ArrangementDirectionalXMonotoneTraits_2` +\cgalModels{ArrangementTraits_2,ArrangementLandmarkTraits_2,ArrangementDirectionalXMonotoneTraits_2} \sa `Arr_segment_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polycurve_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polycurve_traits_2.h index 78787314913..a1bb1b331d1 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polycurve_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polycurve_traits_2.h @@ -72,10 +72,9 @@ namespace CGAL { * set the macro `CGAL_ALWAYS_LEFT_TO_RIGHT` to 1 before any \cgal header is * included. * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementDirectionalXMonotoneTraits_2` - * \cgalModels `ArrangementApproximateTraits_2` (if the type that substitutes - * the template parameter `SubcurveTraits_2` models the concept as well) + * \cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2, + * ArrangementApproximateTraits_2 (if the type that substitutes + * the template parameter `SubcurveTraits_2` models the concept as well)} * * \sa `Arr_algebraic_segment_traits_2` * \sa `Arr_Bezier_curve_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polyline_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polyline_traits_2.h index 9c86561f925..8f63945a3af 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polyline_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_polyline_traits_2.h @@ -77,12 +77,9 @@ namespace CGAL { * the macro `CGAL_ALWAYS_LEFT_TO_RIGHT` to 1 before any \cgal header is * included. * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementDirectionalXMonotoneTraits_2` - * \cgalModels `ArrangementConstructXMonotoneCurveTraits_2` - * \cgalModels `ArrangementConstructCurveTraits_2` - * \cgalModels `ArrangementApproximateTraits_2` (if the type that substitutes - * the template parameter `SegmentTraits_2` models the concept as well) + * \cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2,`ArrangementConstructXMonotoneCurveTraits_2` + * ArrangementConstructCurveTraits_2,ArrangementApproximateTraits_2 (if the type that substitutes + * the template parameter `SegmentTraits_2` models the concept as well)} * * \sa `Arr_polycurve_traits_2` * \sa `Arr_Bezier_curve_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_rational_function_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_rational_function_traits_2.h index b773cddf170..7c121ebf897 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_rational_function_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_rational_function_traits_2.h @@ -52,9 +52,7 @@ namespace CGAL { to have the same direction as a precondition. Moreover, `Arr_rational_function_traits_2` supports the merging of curves of opposite directions. - \cgalModels `ArrangementTraits_2` - \cgalModels `ArrangementDirectionalXMonotoneTraits_2` - \cgalModels `ArrangementOpenBoundaryTraits_2` + \cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2,ArrangementOpenBoundaryTraits_2} */ template< typename AlgebraicKernel_d_1 > class Arr_rational_function_traits_2 { @@ -134,10 +132,7 @@ Functor to construct a `Curve_2`. To enable caching the class is not default constructible and must be obtained via the function `construct_curve_2_object()`, which is a member of the traits. -\cgalModels `Assignable` -\cgalModels `CopyConstructible` -\cgalModels `AdaptableBinaryFunction` -\cgalModels `AdaptableUnaryFunction` +\cgalModels{Assignable,CopyConstructible,AdaptableBinaryFunction,AdaptableUnaryFunction} */ class Construct_curve_2 { @@ -289,10 +284,7 @@ Functor to construct a `X_monotone_curve_2`. To enable caching the class is not default constructible and must be obtained via the function `construct_x_monotone_curve_2_object()`, which is a member of the traits. -\cgalModels `Assignable` -\cgalModels `CopyConstructible` -\cgalModels `AdaptableBinaryFunction` -\cgalModels `AdaptableUnaryFunction` +\cgalModels{Assignable,CopyConstructible,AdaptableBinaryFunction,AdaptableUnaryFunction} */ class Construct_x_monotone_curve_2 { @@ -460,7 +452,7 @@ const Algebraic_real_1& lower, const Algebraic_real_1& upper); const The `Curve_2` class nested within the traits is used to represent rational functions which may be restricted to a certain x-range. -\cgalModels `ArrTraits::Curve_2` +\cgalModels{ArrTraits::Curve_2} */ class Curve_2 { @@ -531,7 +523,7 @@ Algebraic_real_1 right_x() const; /*! -\cgalModels `ArrTraits::Point_2` +\cgalModels{ArrTraits::Point_2} */ class Point_2 { @@ -633,7 +625,7 @@ The `X_monotone_curve_2` class nested within the traits is used to represent \f$ x\f$-monotone parts of rational functions. In particular, such an \f$ x\f$-monotone curve may not contain a vertical asymptote in its interior \f$ x\f$-range. -\cgalModels `ArrTraits::XMonotoneCurve_2` +\cgalModels{ArrTraits::XMonotoneCurve_2} */ class X_monotone_curve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_segment_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_segment_traits_2.h index 3d7d3ab5826..9036308edaa 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_segment_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_segment_traits_2.h @@ -52,9 +52,7 @@ namespace CGAL { * same direction as a precondition. Moreover, `Arr_segment_traits_2` supports * the merging of curves of opposite directions. * - * \cgalModels `ArrangementTraits_2` - * \cgalModels `ArrangementLandmarkTraits_2` - * \cgalModels `ArrangementDirectionalXMonotoneTraits_2` + * \cgalModels{ArrangementTraits_2,ArrangementLandmarkTraits_2,ArrangementDirectionalXMonotoneTraits_2} */ template class Arr_segment_traits_2 : public Kernel { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_spherical_topology_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_spherical_topology_traits_2.h index 3969c0a92cc..5c1775e331f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_spherical_topology_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_spherical_topology_traits_2.h @@ -21,7 +21,7 @@ namespace CGAL { * `Arr_default_dcel`. * * - * \cgalModels `ArrangementBasicTopologyTraits` + * \cgalModels{ArrangementBasicTopologyTraits} * * \sa `Arr_default_dcel` * \sa `CGAL::Arr_geodesic_arc_on_sphere_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_trapezoid_ric_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_trapezoid_ric_point_location.h index 0027ec53409..75994a31f17 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_trapezoid_ric_point_location.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_trapezoid_ric_point_location.h @@ -26,8 +26,7 @@ is relatively large. This strategy supports arbitrary subdivisions, including unbounded ones. -\cgalModels `ArrangementPointLocation_2` -\cgalModels `ArrangementVerticalRayShoot_2` +\cgalModels{ArrangementPointLocation_2,ArrangementVerticalRayShoot_2} \sa `ArrangementPointLocation_2` \sa `ArrangementVerticalRayShoot_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_triangulation_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_triangulation_point_location.h index ed9c1e12e3d..5e1f74d0326 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_triangulation_point_location.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_triangulation_point_location.h @@ -15,8 +15,7 @@ namespace CGAL { * (especially when the number of modifications applied to the arrangement is * high) and provided only for educational purposes. * - * \cgalModels `ArrangementPointLocation_2` - * \cgalModels `ArrangementVerticalRayShoot_2` + * \cgalModels{ArrangementPointLocation_2,ArrangementVerticalRayShoot_2} * * \sa `ArrangementPointLocation_2` * \sa `ArrangementVerticalRayShoot_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_unb_planar_topology_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_unb_planar_topology_traits_2.h index 4c7c69fa5ae..06efe81c731 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_unb_planar_topology_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_unb_planar_topology_traits_2.h @@ -21,7 +21,7 @@ namespace CGAL { * `Arr_default_dcel`. * * - * \cgalModels `ArrangementBasicTopologyTraits` + * \cgalModels{ArrangementBasicTopologyTraits} * * \sa `Arr_default_dcel` * \sa `CGAL::Arr_geodesic_arc_on_sphere_traits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertex_index_map.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertex_index_map.h index 992a9862b9b..1c915a6b23c 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertex_index_map.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertex_index_map.h @@ -19,10 +19,7 @@ existing vertices might be removed, the notification mechanism is used to dynamically maintain the mapping of vertex handles to indices. -\cgalModels DefaultConstructible -\cgalModels CopyConstructible -\cgalModels Assignable -\cgalModels `ReadablePropertyMap` +\cgalModels{DefaultConstructible,CopyConstructible,Assignable,ReadablePropertyMap} \sa `Arr_observer` \sa `Arr_face_index_map` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_walk_along_line_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_walk_along_line_point_location.h index ed5df33be96..508d85801ba 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_walk_along_line_point_location.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_walk_along_line_point_location.h @@ -23,8 +23,7 @@ It is therefore recommended to use the "walk" point-location strategy for arrangements that are constantly changing, especially if the number of issued queries is not large. -\cgalModels `ArrangementPointLocation_2` -\cgalModels `ArrangementVerticalRayShoot_2` +\cgalModels{ArrangementPointLocation_2,ArrangementVerticalRayShoot_2} \sa `ArrangementPointLocation_2` \sa `ArrangementVerticalRayShoot_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_text_formatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_text_formatter.h index fa5d3ff9698..4695aa5cfb5 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_text_formatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_text_formatter.h @@ -18,8 +18,7 @@ defined by the `Arrangement` template-parameter, as well as the `VertexData`, `HalfedgeData` and `FaceData` types, can all be written to an input stream using the `<<` operator and read from an input stream using the `>>` operator. -\cgalModels `ArrangementInputFormatter` -\cgalModels `ArrangementOutputFormatter` +\cgalModels{ArrangementInputFormatter,ArrangementOutputFormatter} \sa `PkgArrangementOnSurface2Read` \sa `PkgArrangementOnSurface2Write` @@ -50,8 +49,7 @@ The `Arr_face_extended_text_formatter` class assumes that the nested `Point_2` a defined by the `Arrangement` template-parameter and that the `FaceData` type can all be written to an input stream using the `<<` operator and read from an input stream using the `>>` operator. -\cgalModels `ArrangementInputFormatter` -\cgalModels `ArrangementOutputFormatter` +\cgalModels{ArrangementInputFormatter,ArrangementOutputFormatter} \sa `PkgArrangementOnSurface2Read` \sa `PkgArrangementOnSurface2Write` @@ -81,8 +79,7 @@ defined by the `Arrangement` template-parameter can both be written to an input stream using the `<<` operator and read from an input stream using the `>>` operator. -\cgalModels `ArrangementInputFormatter` -\cgalModels `ArrangementOutputFormatter` +\cgalModels{ArrangementInputFormatter,ArrangementOutputFormatter} \sa `PkgArrangementOnSurface2Read` \sa `PkgArrangementOnSurface2Write` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_with_history_text_formatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_with_history_text_formatter.h index 9c02ec33400..564b6534b34 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_with_history_text_formatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/IO/Arr_with_history_text_formatter.h @@ -15,8 +15,7 @@ the base arrangement, while the derived class is responsible for reading and writing the set of curves inducing the arrangement and maintaining the relations between these curves and the edges they induce. -\cgalModels `ArrangementWithHistoryInputFormatter` -\cgalModels `ArrangementWithHistoryOutputFormatter` +\cgalModels{ArrangementWithHistoryInputFormatter,ArrangementWithHistoryOutputFormatter} \sa `PkgArrangementOnSurface2Read` \sa `PkgArrangementOnSurface2Write` diff --git a/BGL/doc/BGL/CGAL/HalfedgeDS_face_max_base_with_id.h b/BGL/doc/BGL/CGAL/HalfedgeDS_face_max_base_with_id.h index 5518ffb5c0c..37c3f74bbd4 100644 --- a/BGL/doc/BGL/CGAL/HalfedgeDS_face_max_base_with_id.h +++ b/BGL/doc/BGL/CGAL/HalfedgeDS_face_max_base_with_id.h @@ -19,7 +19,7 @@ running a graph algorithm. \tparam Refs must be an instantiation of a `HalfedgeDS`. -\cgalModels `HalfedgeDSFace` +\cgalModels{HalfedgeDSFace} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/BGL/doc/BGL/CGAL/HalfedgeDS_halfedge_max_base_with_id.h b/BGL/doc/BGL/CGAL/HalfedgeDS_halfedge_max_base_with_id.h index f57951dc82e..e94aebb22e3 100644 --- a/BGL/doc/BGL/CGAL/HalfedgeDS_halfedge_max_base_with_id.h +++ b/BGL/doc/BGL/CGAL/HalfedgeDS_halfedge_max_base_with_id.h @@ -17,7 +17,7 @@ running a graph algorithm. \tparam Refs must be an instantiation of a `HalfedgeDS`. -\cgalModels `HalfedgeDSHalfedge` +\cgalModels{HalfedgeDSHalfedge} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/BGL/doc/BGL/CGAL/HalfedgeDS_vertex_max_base_with_id.h b/BGL/doc/BGL/CGAL/HalfedgeDS_vertex_max_base_with_id.h index 15fad92af97..ccc9f962a23 100644 --- a/BGL/doc/BGL/CGAL/HalfedgeDS_vertex_max_base_with_id.h +++ b/BGL/doc/BGL/CGAL/HalfedgeDS_vertex_max_base_with_id.h @@ -17,7 +17,7 @@ running a graph algorithm. \tparam Refs must be an instantiation of a `HalfedgeDS`. -\cgalModels `HalfedgeDSVertex` +\cgalModels{HalfedgeDSVertex} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/BGL/doc/BGL/CGAL/Linear_cell_complex_bgl_min_items.h b/BGL/doc/BGL/CGAL/Linear_cell_complex_bgl_min_items.h index 611ff3cd88b..72ef25afe5e 100644 --- a/BGL/doc/BGL/CGAL/Linear_cell_complex_bgl_min_items.h +++ b/BGL/doc/BGL/CGAL/Linear_cell_complex_bgl_min_items.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Linear_cell_complex_bgl_min_items` defines `void` as the information associated with darts, darts have ids and 0- and 2-attributes are enabled and have ids. -\cgalModels `LinearCellComplexItems` +\cgalModels{LinearCellComplexItems} \cgalHeading{Example} diff --git a/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h b/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h index 7db19153e87..7c4f69185dd 100644 --- a/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h +++ b/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h @@ -13,7 +13,7 @@ the point and the plane equation. Vertices and facets both contain a halfedge handle to an incident halfedge. -\cgalModels `PolyhedronItems_3` +\cgalModels{PolyhedronItems_3} \cgalHeading{Operations} diff --git a/BGL/doc/BGL/CGAL/Triangulation_face_base_with_id_2.h b/BGL/doc/BGL/CGAL/Triangulation_face_base_with_id_2.h index e6bdbbc6577..3ebf243d5f1 100644 --- a/BGL/doc/BGL/CGAL/Triangulation_face_base_with_id_2.h +++ b/BGL/doc/BGL/CGAL/Triangulation_face_base_with_id_2.h @@ -19,7 +19,7 @@ and must be a model of `TriangulationTraits_2`. `Triangulation_face_base_with_id_2` derives. It has the default value `Triangulation_face_base_2`. -\cgalModels `TriangulationFaceBase_2` +\cgalModels{TriangulationFaceBase_2} \sa `CGAL::Triangulation_face_base_2` */ diff --git a/BGL/doc/BGL/CGAL/Triangulation_vertex_base_with_id_2.h b/BGL/doc/BGL/CGAL/Triangulation_vertex_base_with_id_2.h index d9a58761062..1f267eb5b21 100644 --- a/BGL/doc/BGL/CGAL/Triangulation_vertex_base_with_id_2.h +++ b/BGL/doc/BGL/CGAL/Triangulation_vertex_base_with_id_2.h @@ -19,7 +19,7 @@ and must be a model of `TriangulationTraits_2`. `Triangulation_vertex_base_with_id_2` derives. It has the default value `Triangulation_vertex_base_2`. -\cgalModels `TriangulationVertexBase_2` +\cgalModels{TriangulationVertexBase_2} \sa `CGAL::Triangulation_vertex_base_2` */ diff --git a/BGL/doc/BGL/CGAL/boost/graph/properties.h b/BGL/doc/BGL/CGAL/boost/graph/properties.h index 01f6df7b62f..57b9f10c1cb 100644 --- a/BGL/doc/BGL/CGAL/boost/graph/properties.h +++ b/BGL/doc/BGL/CGAL/boost/graph/properties.h @@ -6,31 +6,31 @@ namespace CGAL { /// The constant `vertex_index` is a property tag which identifies the index property of a vertex of a \bgl /// Graph. -/// \cgalModels PropertyTag +/// \cgalModelsBare{PropertyTag} enum vertex_index_t { vertex_index }; /// The constant `halfedge_index` is a property tag which identifies the index property of a halfedge of a `HalfedgeGraph`. /// /// This is a property tag introduced by \cgal. -/// \cgalModels PropertyTag +/// \cgalModelsBare{PropertyTag} enum halfedge_index_t { halfedge_index }; /// The constant `edge_index` is a property tag which identifies the index property of an edge of a \bgl /// Graph. -/// \cgalModels PropertyTag +/// \cgalModelsBare{PropertyTag} enum edge_index_t { edge_index }; /// The constant `face_index` is a property tag which identifies the index property of a face of a `FaceGraph`. /// /// This is a property tag introduced by \cgal. -/// \cgalModels PropertyTag +/// \cgalModelsBare{PropertyTag} enum face_index_t { face_index }; /// The constant `vertex_point` is a property tag which refers to the geometric embedding property of /// a vertex of a `HalfedgeGraph`. /// /// This is a property tag introduced by \cgal. -/// \cgalModels PropertyTag +/// \cgalModelsBare{PropertyTag} enum vertex_point_t { vertex_point }; /// @} diff --git a/BGL/include/CGAL/boost/graph/Dual.h b/BGL/include/CGAL/boost/graph/Dual.h index 7d7481b1625..4ca45b9bcec 100644 --- a/BGL/include/CGAL/boost/graph/Dual.h +++ b/BGL/include/CGAL/boost/graph/Dual.h @@ -44,7 +44,7 @@ error. \tparam Primal_ must be a model of `FaceGraph` -\cgalModels `FaceGraph` +\cgalModels{FaceGraph} */ template diff --git a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h index e6f4136481d..326a839cee6 100644 --- a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h +++ b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h @@ -66,9 +66,7 @@ namespace CGAL { * \tparam VIMap a model of `ReadablePropertyMap` with `graph_traits::%vertex_descriptor` as key and `graph_traits::%vertices_size_type` as value * \tparam HIMap a model of `ReadablePropertyMap` with `graph_traits::%halfedge_descriptor` as key and `graph_traits::%halfedges_size_type` as value * - * \cgalModels `FaceListGraph` - * \cgalModels `HalfedgeListGraph` - * \cgalModels \bgllink{VertexListGraph} + * \cgalModels{FaceListGraph,HalfedgeListGraph,\bgllink{VertexListGraph}} */ template @@ -689,7 +687,7 @@ is_valid(const Graph_with_descriptor_with_graph & w, bool verbose = false \ingroup PkgBGLAdaptors `Graph_with_descriptor_with_graph_property_map` enables to forward properties from a `Graph` to a `Graph_with_descriptor_with_graph`. - \cgalModels `Graph_with_descriptor_with_graph_property_map` the same property map concept as `PM` + \cgalModels{Graph_with_descriptor_with_graph_property_map the same property map concept as `PM`} @tparam Graph a model of the `FaceListGraph` and `HalfedgeListGraph` concepts. @tparam PM a property_map of a `Graph`. diff --git a/BGL/include/CGAL/boost/graph/Seam_mesh.h b/BGL/include/CGAL/boost/graph/Seam_mesh.h index 34c6e61e0a6..2db6b170e5b 100644 --- a/BGL/include/CGAL/boost/graph/Seam_mesh.h +++ b/BGL/include/CGAL/boost/graph/Seam_mesh.h @@ -185,7 +185,7 @@ public: /// a border edge (that is, such that either halfedge or the edge have null_face() /// as incident face). Marking a border edge as seam will not do anything. /// -/// \cgalModels `FaceGraph` or `FaceListGraph`, depending on the underlying mesh `TM`. +/// \cgalModels{FaceGraph or `FaceListGraph` depending on the underlying mesh `TM`.} /// /// \tparam TM a model of `FaceGraph` or `FaceListGraph` /// \tparam SEM a model of `ReadablePropertyMap` with `boost::graph_traits::%edge_descriptor` as key type and `bool` as value type. @@ -271,9 +271,7 @@ public: /// Implementation note: a halfedge of the seam mesh is represented as a halfedge /// of the mesh and a boolean to indicate whether the halfedge is on a seam or not. /// - /// \cgalModels `Descriptor` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Descriptor,LessThanComparable,Hashable} /// class halfedge_descriptor { @@ -356,9 +354,7 @@ public: /// Implementation note: to properly duplicate vertices that are on seams, /// a vertex_descriptor is in fact represented as a halfedge of the seam mesh. /// - /// \cgalModels `Descriptor` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Descriptor,LessThanComparable,Hashable} /// class vertex_descriptor { @@ -461,8 +457,7 @@ public: #ifdef DOXYGEN_RUNNING /// This class represents an edge of the seam mesh. /// - /// \cgalModels `Descriptor` - /// \cgalModels `Hashable` + /// \cgalModels{Descriptor,Hashable} /// class edge_descriptor { @@ -562,7 +557,7 @@ public: /// This class represents a face of the seam mesh. /// - /// \cgalModels `Descriptor` + /// \cgalModels{Descriptor} /// typedef typename boost::graph_traits::face_descriptor face_descriptor; diff --git a/BGL/include/CGAL/boost/graph/iterator.h b/BGL/include/CGAL/boost/graph/iterator.h index 87ff3383f21..54b54c08ecb 100644 --- a/BGL/include/CGAL/boost/graph/iterator.h +++ b/BGL/include/CGAL/boost/graph/iterator.h @@ -182,7 +182,7 @@ struct Opposite_face { * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_source_iterator` `havi` with `h = *havi;` * the following holds: Either `++havi` is the past the end iterator, or `next(opposite(h,g),g) == *++havi`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template class Halfedge_around_source_iterator { @@ -274,7 +274,7 @@ public: * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_target_iterator` `havi` with `h = *havi;` * the following holds: Either `++havi` is the past the end iterator, or `opposite(next(h,g),g) == *++havi`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template @@ -369,7 +369,7 @@ public: * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_face_iterator` `hafi` with `h = *hafi` * the following holds: Either `++hafi` is the past the end iterator, or `next(h,g) == *++hafi`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template @@ -465,7 +465,7 @@ class Halfedge_around_target_circulator; * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_source_circulator` `havc` with `h = *havc;` * the following holds: `next(opposite(h,g),g) == *++havc`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template class Halfedge_around_source_circulator @@ -531,7 +531,7 @@ private: * It circulates over the same halfedges as the `Halfedge_around_target_circulator`. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template @@ -590,7 +590,7 @@ private: * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_target_circulator` `havc` with `h = *havc;` * the following holds: `opposite(next(h,g),g) == *++havc`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ @@ -692,7 +692,7 @@ private: * Let `h` be a halfedge of graph `g`. For a `Halfedge_around_face_circulator` `hafc` with `h = *hafc` * the following holds: `next(h,g) == *++hafc`. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template @@ -844,7 +844,7 @@ halfedges_around_face(typename boost::graph_traits::halfedge_descriptor h * may be the null face, and it may be several times the same face descriptor. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template class Face_around_face_iterator @@ -882,7 +882,7 @@ private: * may be the null face, and it may be several times the same face descriptor. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template class Face_around_face_circulator @@ -896,7 +896,7 @@ class Face_around_face_circulator * may be the null face, and it may be several times the same face descriptor. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template class Face_around_target_iterator @@ -956,7 +956,7 @@ faces_around_face(typename boost::graph_traits::halfedge_descriptor h, co * \ingroup PkgBGLIterators * A bidirectional circulator with value type `boost::graph_traits::%vertex_descriptor` over all vertices incident to the same face or border. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template class Vertex_around_face_circulator @@ -1013,7 +1013,7 @@ private: * A bidirectional iterator with value type `boost::graph_traits::%vertex_descriptor` * over all vertices incident to the same face or border. * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template class Vertex_around_face_iterator @@ -1135,7 +1135,7 @@ edges_around_face(typename boost::graph_traits::halfedge_descriptor h, co * It circulates over the same halfedges as the `Halfedge_around_target_circulator`. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalCirculator` + * \cgalModels{BidirectionalCirculator} */ template class Vertex_around_target_circulator @@ -1194,7 +1194,7 @@ private: * It iterates over the same halfedges as the `Halfedge_around_target_iterator`. * * \tparam Graph must be a model of the concept `HalfedgeGraph` - * \cgalModels `BidirectionalIterator` + * \cgalModels{BidirectionalIterator} */ template class Vertex_around_target_iterator diff --git a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Delaunay_domain_2.h b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Delaunay_domain_2.h index bb66bd3d577..fe24383aa53 100644 --- a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Delaunay_domain_2.h +++ b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Delaunay_domain_2.h @@ -51,7 +51,7 @@ namespace Barycentric_coordinates { a model of `ReadablePropertyMap` whose key type is `VertexRange::value_type` and value type is `Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `DiscretizedDomain_2` + \cgalModels{DiscretizedDomain_2} */ template< typename VertexRange, diff --git a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Discrete_harmonic_2.h b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Discrete_harmonic_2.h index 91d96c2f1c4..392a7d38b90 100644 --- a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Discrete_harmonic_2.h +++ b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Discrete_harmonic_2.h @@ -48,7 +48,7 @@ namespace Barycentric_coordinates { \tparam Traits must be a model of the concepts `BarycentricTraits_2` and `PolygonTraits_2`. -\cgalModels `BarycentricCoordinates_2` +\cgalModels{BarycentricCoordinates_2} \pre The provided polygon is strictly convex. diff --git a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Mean_value_2.h b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Mean_value_2.h index ef895698b0a..f61c6be8bdd 100644 --- a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Mean_value_2.h +++ b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Mean_value_2.h @@ -100,7 +100,7 @@ public: \tparam Traits must be a model of the concept `BarycentricTraits_2`. -\cgalModels `BarycentricCoordinates_2` +\cgalModels{BarycentricCoordinates_2} */ template diff --git a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Wachspress_2.h b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Wachspress_2.h index 469b84a09a3..221ed7ad21b 100644 --- a/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Wachspress_2.h +++ b/Barycentric_coordinates_2/include/CGAL/Barycentric_coordinates_2/Wachspress_2.h @@ -48,7 +48,7 @@ namespace Barycentric_coordinates { \tparam Traits must be a model of the concepts `BarycentricTraits_2` and `PolygonTraits_2`. -\cgalModels `BarycentricCoordinates_2` +\cgalModels{BarycentricCoordinates_2} \pre The provided polygon is strictly convex. diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2/Gps_default_dcel.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2/Gps_default_dcel.h index 64158347a42..9aed558f924 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2/Gps_default_dcel.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2/Gps_default_dcel.h @@ -15,7 +15,7 @@ You need to extend this template with auxiliary data only if you intend to obtain the underlying arrangement of the general polygon set and process it further. -\cgalModels `GeneralPolygonSetDcelFace` +\cgalModels{GeneralPolygonSetDcelFace} \sa `Arr_face_base` */ @@ -35,7 +35,7 @@ You need to extend this template with auxiliary data only if you intend to obtain the underlying arrangement of the general polygon set and process it further. -\cgalModels `GeneralPolygonSetDcelHalfedge` +\cgalModels{GeneralPolygonSetDcelHalfedge} \sa `Arr_halfedge_base` */ @@ -62,7 +62,7 @@ You need to override this default and use a different \dcel only if you intend to obtain the underlying arrangement of the general polygon set and process it further. -\cgalModels `GeneralPolygonSetDcel` +\cgalModels{GeneralPolygonSetDcel} \sa `Arr_dcel_base` \sa `Gps_halfedge_base` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/General_polygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/General_polygon_2.h index 636853b0ed9..c5c628cc757 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/General_polygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/General_polygon_2.h @@ -20,7 +20,7 @@ support the following functions: This class supports a few convenient operations in addition to the requirements that the concept `GeneralPolygon_2` lists. -\cgalModels `GeneralPolygon_2` +\cgalModels{GeneralPolygon_2} */ template< typename ArrTraits > diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_circle_segment_traits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_circle_segment_traits_2.h index c93ff9e0275..c2b0b4b0e6d 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_circle_segment_traits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_circle_segment_traits_2.h @@ -9,7 +9,7 @@ concept. It enables Boolean set-operations on general polygons bounded by linear segments or circular arcs. It should be parameterized with a kernel. -\cgalModels `GeneralPolygonSetTraits_2` +\cgalModels{GeneralPolygonSetTraits_2} \sa `CGAL::Arr_circle_segment_traits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_segment_traits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_segment_traits_2.h index dbe5f325b01..7dd12f6f107 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_segment_traits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_segment_traits_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgBooleanSetOperations2Ref -\cgalModels `GeneralPolygonSetTraits_2` +\cgalModels{GeneralPolygonSetTraits_2} \sa `CGAL::Arr_segment_traits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_traits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_traits_2.h index 050bada2dec..6d65a9e5e43 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_traits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Gps_traits_2.h @@ -13,7 +13,7 @@ the concept `ArrangementXMonotoneTraits_2`). The template parameter of `GpsTraitsGeneralPolygon_2`. By default, the latter is instantiated by `CGAL::General_polygon_2`. -\cgalModels `GeneralPolygonSetTraits_2` +\cgalModels{GeneralPolygonSetTraits_2} */ template< typename ArrTraits, typename GeneralPolygon_t > diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_2.h index a83c5184807..afecb15c8dc 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_2.h @@ -18,7 +18,7 @@ exact computations. `CGAL::Tag_true`. (Examples of such a number-type are `MP_Float`, `CORE::Expr`, and `Gmpq`.) -\cgalModels `ApproximateMinEllipsoid_d_Traits_d` +\cgalModels{ApproximateMinEllipsoid_d_Traits_d} \sa `CGAL::Approximate_min_ellipsoid_d_traits_3` \sa `CGAL::Approximate_min_ellipsoid_d_traits_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_3.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_3.h index ce851ee9f45..b980e60bf1e 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_3.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_3.h @@ -19,7 +19,7 @@ exact computations. `Tag_true` (Examples of such a number-type are `MP_Float`, `CORE::Expr`, and `Gmpq`.) -\cgalModels `ApproximateMinEllipsoid_d_Traits_d` +\cgalModels{ApproximateMinEllipsoid_d_Traits_d} \sa `CGAL::Approximate_min_ellipsoid_d_traits_2` \sa `CGAL::Approximate_min_ellipsoid_d_traits_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_d.h index 44caa851a38..1c655e7f242 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d_traits_d.h @@ -18,7 +18,7 @@ exact computations. `CGAL::Tag_true` (Examples of such a number-type are `MP_Float`, `CORE::Expr`, and `Gmpq`.) -\cgalModels `ApproximateMinEllipsoid_d_Traits_d` +\cgalModels{ApproximateMinEllipsoid_d_Traits_d} \sa `CGAL::Approximate_min_ellipsoid_d_traits_2` \sa `CGAL::Approximate_min_ellipsoid_d_traits_3` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2_traits_2.h index 466674a71de..66560c13654 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2_traits_2.h @@ -9,7 +9,7 @@ using the two-dimensional \cgal kernel. \tparam K must be a model for `Kernel`. -\cgalModels `MinCircle2Traits` +\cgalModels{MinCircle2Traits} \sa `CGAL::Min_circle_2` \sa `MinCircle2Traits` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h index 25b54759c1a..ab207e354fb 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h @@ -9,7 +9,7 @@ using the two-dimensional \cgal kernel. The template parameter `K` must be a model for `Kernel`. -\cgalModels `MinEllipse2Traits` +\cgalModels{MinEllipse2Traits} \sa `CGAL::Min_ellipse_2` \sa `MinEllipse2Traits` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_quadrilateral_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_quadrilateral_traits_2.h index f44fcbe475e..7357ae30f29 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_quadrilateral_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_quadrilateral_traits_2.h @@ -10,7 +10,7 @@ functions `min_rectangle_2()`, `min_parallelogram_2()` and \tparam K must be a model for `Kernel`. -\cgalModels `MinQuadrilateralTraits_2` +\cgalModels{MinQuadrilateralTraits_2} \sa `CGAL::min_rectangle_2()` \sa `CGAL::min_parallelogram_2()` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_2.h index 3273105434a..d3c56d3b095 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_2.h @@ -10,7 +10,7 @@ optimisation algorithms using the two-dimensional \cgal kernel. \tparam K must bea model for `Kernel`. \tparam ET NT are models for `RingNumberType`. Their default type is `K::RT`. -\cgalModels `MinSphereAnnulusDTraits` +\cgalModels{MinSphereAnnulusDTraits} \sa `CGAL::Min_sphere_d` \sa `CGAL::Min_annulus_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_3.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_3.h index 32f770b0703..84284beefc5 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_3.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_3.h @@ -10,7 +10,7 @@ optimisation algorithms using the three-dimensional \cgal kernel. \tparam K must be a model for `Kernel`. \tparam ET NT are models for `RingNumberType`. Their default type is `K::RT`. -\cgalModels `MinSphereAnnulusDTraits` +\cgalModels{MinSphereAnnulusDTraits} \sa `CGAL::Min_sphere_d` \sa `CGAL::Min_annulus_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_d.h index 198967340a5..f2bc035794b 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_annulus_d_traits_d.h @@ -10,7 +10,7 @@ optimisation algorithms using the \f$ d\f$-dimensional \cgal kernel. \tparam K must be a model for `Kernel`. \tparam ET NT are models for `RingNumberType`. Their default type is `K::RT`. -\cgalModels `MinSphereAnnulusDTraits` +\cgalModels{MinSphereAnnulusDTraits} \sa `CGAL::Min_sphere_d` \sa `CGAL::Min_annulus_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_2.h index 58a514025cf..c50875cb3c1 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_2.h @@ -8,7 +8,7 @@ The class model for concept `MinSphereOfSpheresTraits`. It uses the \cgal type `Point_2` to represent circles. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_3.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_3.h index f54cfe54204..d6fc8ff305d 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_3.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_3.h @@ -8,7 +8,7 @@ The class model for concept `MinSphereOfSpheresTraits`. It uses the \cgal type `Point_3` to represent spheres. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_d.h index 1e0838c0e6a..a4843602cbb 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_points_d_traits_d.h @@ -8,7 +8,7 @@ The class a model for concept `MinSphereOfSpheresTraits`. It uses the \cgal type `Point_d` to represent circles. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} \tparam K is a model for `Kernel`. diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_2.h index 36f9721ad0d..fa1761c7531 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_2.h @@ -8,7 +8,7 @@ The class model for concept `MinSphereOfSpheresTraits`. It uses a pair of \cgal `Point_2` and `FT` to represent circles. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} The last two template parameters, `UseSqrt` and `Algorithm`, have diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_3.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_3.h index 71786791402..cf98855e846 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_3.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_3.h @@ -8,7 +8,7 @@ The class model for concept `MinSphereOfSpheresTraits`. It uses a pair of \cgal `Point_3` and `FT` to represent spheres. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} \tparam K must be a model for `Kernel`. diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_d.h index 96e0b6f7ecb..ad8fdf4f1fb 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d_traits_d.h @@ -8,7 +8,7 @@ The class a model for concept `MinSphereOfSpheresTraits`. It uses the \cgal type `Point_d` to represent circles. -\cgalModels `MinSphereOfSpheresTraits` +\cgalModels{MinSphereOfSpheresTraits} \tparam K is a model for `Kernel`. diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/rectangular_p_center_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/rectangular_p_center_2.h index f3baaa625f1..1f6b388ee71 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/rectangular_p_center_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/rectangular_p_center_2.h @@ -10,7 +10,7 @@ using the function `rectangular_p_center_2()`. \tparam K must be a model for `Kernel`. -\cgalModels `RectangularPCenterTraits_2` +\cgalModels{RectangularPCenterTraits_2} \sa `CGAL::rectangular_p_center_2()` diff --git a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_d.h b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_d.h index 6c4b4dd6819..ea73e62242e 100644 --- a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_d.h @@ -40,7 +40,7 @@ creates copies of the boxes that would not have identical `id`-numbers. -\cgalModels `BoxIntersectionBox_d` +\cgalModels{BoxIntersectionBox_d} \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink \sa \link PkgBoxIntersectionD_box_self_intersection_d `CGAL::box_self_intersection_d()` \endlink diff --git a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_traits_d.h b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_traits_d.h index 49823cfe609..a3731b377d4 100644 --- a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_traits_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_traits_d.h @@ -20,7 +20,7 @@ cases it just uses the pointer type. const-pointer `const B*`, where `B` is a model of the `BoxIntersectionBox_d` concept. -\cgalModels `BoxIntersectionTraits_d` +\cgalModels{BoxIntersectionTraits_d} \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink \sa \link PkgBoxIntersectionD_box_self_intersection_d `CGAL::box_self_intersection_d()` \endlink diff --git a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_with_handle_d.h b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_with_handle_d.h index 32f04c82c38..7ceb1b14348 100644 --- a/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_with_handle_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/CGAL/Box_intersection_d/Box_with_handle_d.h @@ -52,7 +52,7 @@ the safe default implementation. available for the `CGAL::Box_intersection_d::Box_d` type that does not store a handle. -\cgalModels `BoxIntersectionBox_d` +\cgalModels{BoxIntersectionBox_d} \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink \sa \link PkgBoxIntersectionD_box_self_intersection_d `CGAL::box_self_intersection_d()` \endlink diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Algebraic_kernel_for_circles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Algebraic_kernel_for_circles_2_2.h index 86598adf69d..d9e36e19f51 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Algebraic_kernel_for_circles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Algebraic_kernel_for_circles_2_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2AlgebraicClasses -\cgalModels `AlgebraicKernelForCircles` +\cgalModels{AlgebraicKernelForCircles} */ template< typename RT > diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_2.h index 546ac008055..684ac669ce5 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2GeometricClasses -\cgalModels `CircularKernel::CircularArc_2` +\cgalModels{CircularKernel::CircularArc_2} \sa `CGAL::Circular_arc_point_2` \sa `CGAL::Line_arc_2` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_point_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_point_2.h index cb8325f4e92..052216f2a8c 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_point_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_arc_point_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2GeometricClasses -\cgalModels `CircularKernel::CircularArcPoint_2` +\cgalModels{CircularKernel::CircularArcPoint_2} \sa `CGAL::Circular_arc_2` \sa `CGAL::Line_arc_2` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_kernel_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_kernel_2.h index 65401ed2778..b0ddfe1ca78 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_kernel_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Circular_kernel_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2GeometricClasses -\cgalModels `CircularKernel` +\cgalModels{CircularKernel} \cgalHeading{Parameters} diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Exact_circular_kernel_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Exact_circular_kernel_2.h index 46ff1b15b48..6347918a36d 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Exact_circular_kernel_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Exact_circular_kernel_2.h @@ -8,7 +8,7 @@ A typedef to a circular kernel that provides both exact geometric predicates and exact geometric constructions. This kernel uses some geometric filtering (based on bounding boxes) to gain efficiency. -\cgalModels `CircularKernel` +\cgalModels{CircularKernel} \sa `CGAL::Circular_kernel_2` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Line_arc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Line_arc_2.h index c8e2fca1e77..53b3a7b34e5 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Line_arc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Line_arc_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2GeometricClasses -\cgalModels `CircularKernel::LineArc_2` +\cgalModels{CircularKernel::LineArc_2} \cgalHeading{I/O} diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_1_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_1_2.h index c7a3fb71072..3c0865a7428 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_1_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_1_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2AlgebraicClasses -\cgalModels `AlgebraicKernelForCircles::Polynomial_1_2` +\cgalModels{AlgebraicKernelForCircles::Polynomial_1_2} */ template< typename RT > diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_2_2.h index 80ff654207e..c287ffd4ed3 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Polynomials_2_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2AlgebraicClasses -\cgalModels `AlgebraicKernelForCircles::PolynomialForCircles_2_2` +\cgalModels{AlgebraicKernelForCircles::PolynomialForCircles_2_2} \sa `CGAL::Sqrt_extension` \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Root_for_circles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Root_for_circles_2_2.h index db7c4ed3a6a..f0a49daf777 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Root_for_circles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/CGAL/Root_for_circles_2_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel2AlgebraicClasses -\cgalModels `AlgebraicKernelForCircles::RootForCircles_2_2` +\cgalModels{AlgebraicKernelForCircles::RootForCircles_2_2} */ template< typename FT > diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Algebraic_kernel_for_spheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Algebraic_kernel_for_spheres_2_3.h index db2aec890a4..b54b34522ea 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Algebraic_kernel_for_spheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Algebraic_kernel_for_spheres_2_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3AlgebraicClasses -\cgalModels `AlgebraicKernelForSpheres` +\cgalModels{AlgebraicKernelForSpheres} */ template< typename RT > diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_3.h index 6accd5fdda7..018a713b6c4 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3GeometricClasses -\cgalModels `SphericalKernel::CircularArc_3` +\cgalModels{SphericalKernel::CircularArc_3} \cgalHeading{I/O} diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_point_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_point_3.h index 637452fe201..bfc56e02fe7 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_point_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Circular_arc_point_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3GeometricClasses -\cgalModels `SphericalKernel::CircularArcPoint_3` +\cgalModels{SphericalKernel::CircularArcPoint_3} \sa `CGAL::Circular_arc_3` \sa `CGAL::Line_arc_3` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Exact_spherical_kernel_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Exact_spherical_kernel_3.h index c92182af28b..a33f4c72cfc 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Exact_spherical_kernel_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Exact_spherical_kernel_3.h @@ -9,7 +9,7 @@ both exact geometric predicates and exact geometric constructions. It defines the same types as `CGAL::Spherical_kernel_3`. -\cgalModels `SphericalKernel` +\cgalModels{SphericalKernel} */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Line_arc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Line_arc_3.h index 7cc639959de..744b2e5a024 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Line_arc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Line_arc_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3GeometricClasses -\cgalModels `SphericalKernel::LineArc_3` +\cgalModels{SphericalKernel::LineArc_3} \sa `CGAL::Circular_arc_point_3` \sa `CGAL::Circular_arc_3` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_1_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_1_3.h index df3532cedfc..715108154ad 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_1_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_1_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3AlgebraicClasses -\cgalModels `AlgebraicKernelForSpheres::Polynomial_1_3` +\cgalModels{AlgebraicKernelForSpheres::Polynomial_1_3} */ template< typename RT > diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_2_3.h index 6084f63779d..ee510c4d1eb 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_2_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3AlgebraicClasses -\cgalModels `AlgebraicKernelForSpheres::PolynomialForSpheres_2_3` +\cgalModels{AlgebraicKernelForSpheres::PolynomialForSpheres_2_3} \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_for_line_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_for_line_3.h index 9c51a9e834a..2081dee35d2 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_for_line_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Polynomials_for_line_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3AlgebraicClasses -\cgalModels `AlgebraicKernelForSpheres::PolynomialsForLines_3` +\cgalModels{AlgebraicKernelForSpheres::PolynomialsForLines_3} \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Root_for_spheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Root_for_spheres_2_3.h index 0590e3e0c3d..0c46aab5c9a 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Root_for_spheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Root_for_spheres_2_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3AlgebraicClasses -\cgalModels `AlgebraicKernelForSpheres::RootForSpheres_2_3` +\cgalModels{AlgebraicKernelForSpheres::RootForSpheres_2_3} */ template< typename RT > diff --git a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Spherical_kernel_3.h b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Spherical_kernel_3.h index 5c4212c32d5..cf225ac3260 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Spherical_kernel_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/CGAL/Spherical_kernel_3.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgCircularKernel3GeometricClasses -\cgalModels `SphericalKernel` +\cgalModels{SphericalKernel} \cgalHeading{Parameters} diff --git a/Classification/include/CGAL/Classification/ETHZ/Random_forest_classifier.h b/Classification/include/CGAL/Classification/ETHZ/Random_forest_classifier.h index fbf3b43a4bc..29c46fef711 100644 --- a/Classification/include/CGAL/Classification/ETHZ/Random_forest_classifier.h +++ b/Classification/include/CGAL/Classification/ETHZ/Random_forest_classifier.h @@ -63,7 +63,7 @@ namespace ETHZ { \note This classifier is distributed under the MIT license. - \cgalModels `CGAL::Classification::Classifier` + \cgalModels{CGAL::Classification::Classifier} */ class Random_forest_classifier { diff --git a/Classification/include/CGAL/Classification/Feature_base.h b/Classification/include/CGAL/Classification/Feature_base.h index 89ba6e60384..b73dd7154f7 100644 --- a/Classification/include/CGAL/Classification/Feature_base.h +++ b/Classification/include/CGAL/Classification/Feature_base.h @@ -68,7 +68,7 @@ public: \brief %Handle to a `Feature_base`. - \cgalModels Handle + \cgalModels{Handle} */ class Feature_handle { }; #else diff --git a/Classification/include/CGAL/Classification/Label.h b/Classification/include/CGAL/Classification/Label.h index 7801942afcb..ba0b4c38f63 100644 --- a/Classification/include/CGAL/Classification/Label.h +++ b/Classification/include/CGAL/Classification/Label.h @@ -105,7 +105,7 @@ public: \brief %Handle to a classification `Label`. - \cgalModels Handle + \cgalModels{Handle} */ class Label_handle { }; #else diff --git a/Classification/include/CGAL/Classification/Mesh_neighborhood.h b/Classification/include/CGAL/Classification/Mesh_neighborhood.h index 6a00a413820..bad561d6c0f 100644 --- a/Classification/include/CGAL/Classification/Mesh_neighborhood.h +++ b/Classification/include/CGAL/Classification/Mesh_neighborhood.h @@ -77,7 +77,7 @@ public: /*! Functor that computes the 1-ring neighborhood of the face of an input mesh. - \cgalModels CGAL::Classification::NeighborQuery + \cgalModels{CGAL::Classification::NeighborQuery} \sa Mesh_neighborhood */ @@ -110,7 +110,7 @@ public: /*! Functor that computes the N-ring neighborhood of the face of an input mesh. - \cgalModels CGAL::Classification::NeighborQuery + \cgalModels{CGAL::Classification::NeighborQuery} \sa Mesh_neighborhood */ diff --git a/Classification/include/CGAL/Classification/OpenCV/Random_forest_classifier.h b/Classification/include/CGAL/Classification/OpenCV/Random_forest_classifier.h index 6e7d5e1f1d0..b7105279a92 100644 --- a/Classification/include/CGAL/Classification/OpenCV/Random_forest_classifier.h +++ b/Classification/include/CGAL/Classification/OpenCV/Random_forest_classifier.h @@ -47,7 +47,7 @@ namespace OpenCV { \note This class requires the \ref thirdpartyOpenCV library. - \cgalModels `CGAL::Classification::Classifier` + \cgalModels{CGAL::Classification::Classifier} */ class Random_forest_classifier { diff --git a/Classification/include/CGAL/Classification/Point_set_neighborhood.h b/Classification/include/CGAL/Classification/Point_set_neighborhood.h index 156bd68d1cb..c27c874f0c2 100644 --- a/Classification/include/CGAL/Classification/Point_set_neighborhood.h +++ b/Classification/include/CGAL/Classification/Point_set_neighborhood.h @@ -96,7 +96,7 @@ public: Functor that computes the neighborhood of an input point with a fixed number of neighbors. - \cgalModels CGAL::Classification::NeighborQuery + \cgalModels{CGAL::Classification::NeighborQuery} \sa Point_set_neighborhood */ @@ -131,7 +131,7 @@ public: as the points lying in a sphere of fixed radius centered at the input point. - \cgalModels CGAL::Classification::NeighborQuery + \cgalModels{CGAL::Classification::NeighborQuery} \sa Point_set_neighborhood */ diff --git a/Classification/include/CGAL/Classification/Sum_of_weighted_features_classifier.h b/Classification/include/CGAL/Classification/Sum_of_weighted_features_classifier.h index 7f16459723a..fac51686e14 100644 --- a/Classification/include/CGAL/Classification/Sum_of_weighted_features_classifier.h +++ b/Classification/include/CGAL/Classification/Sum_of_weighted_features_classifier.h @@ -48,7 +48,7 @@ namespace Classification { \brief %Classifier based on the sum of weighted features with user-defined effects on labels. - \cgalModels `CGAL::Classification::Classifier` + \cgalModels{CGAL::Classification::Classifier} */ class Sum_of_weighted_features_classifier { diff --git a/Classification/include/CGAL/Classification/property_maps.h b/Classification/include/CGAL/Classification/property_maps.h index 44a0a75f0c0..f03e837d806 100644 --- a/Classification/include/CGAL/Classification/property_maps.h +++ b/Classification/include/CGAL/Classification/property_maps.h @@ -32,7 +32,7 @@ namespace Classification \brief Property map that constructs the center of mass of the face of a mesh on-the-fly. - \cgalModels `ReadablePropertyMap` + \cgalModels{ReadablePropertyMap} \tparam FaceGraph model of `FaceGraph`. @@ -85,7 +85,7 @@ public: \brief Property map that constructs a face descriptor with a `bbox()` method from a face descriptor. - \cgalModels `ReadablePropertyMap` + \cgalModels{ReadablePropertyMap} \tparam FaceGraph model of `FaceGraph`. diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute.h index 3256326a53c..60846dd2197 100644 --- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute.h +++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Cell_attribute` represents an attribute containing (or not) an information. -\cgalModels `CellAttribute` +\cgalModels{CellAttribute} \tparam Map a model of the `GenericMap` concept. diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute_with_id.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute_with_id.h index a99045fbeed..3733c29241c 100644 --- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute_with_id.h +++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Cell_attribute_with_id.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Cell_attribute_with_id` represents an attribute containing (or not) an information, and having an id. -\cgalModels `CellAttribute` +\cgalModels{CellAttribute} \tparam Map a model of the `GenericMap` concept. diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h index 9dba99d6718..0038999e7e2 100644 --- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h +++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h @@ -8,7 +8,7 @@ The class `Combinatorial_map` represents a dD combinatorial map. Two versions exist: one where Darts and non void attributes are stored in memory using `Compact_container`, using `Alloc` as allocator, and use handles as descriptors; a second one where Darts and non void attributes are stored in an internal std::vector like data-structure, and use indices as descriptors. The choice between the two versions is done through the item class. -\cgalModels `CombinatorialMap` +\cgalModels{CombinatorialMap} \tparam d the dimension of the map. diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Generic_map_min_items.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Generic_map_min_items.h index 8cbfbf1be14..434193a8e3c 100644 --- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Generic_map_min_items.h +++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Generic_map_min_items.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Generic_map_min_items` defines `void` as the information associated with darts, and no attribute is enabled. -\cgalModels `GenericMapItems` +\cgalModels{GenericMapItems} \cgalHeading{Example} diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/Convex_hull_traits_adapter_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/Convex_hull_traits_adapter_2.h index 051d148e06c..97bac6496ba 100644 --- a/Convex_hull_2/doc/Convex_hull_2/CGAL/Convex_hull_traits_adapter_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/Convex_hull_traits_adapter_2.h @@ -10,7 +10,7 @@ Given a property map associating a key to a point, the class `Convex_hull_traits to compute the sequence of keys for which the associated points form a convex hull, performing the predicates of the base traits class on the points associated to the keys. -\cgalModels `ConvexHullTraits_2` +\cgalModels{ConvexHullTraits_2} \sa `CGAL::Convex_hull_constructive_traits_2` \sa `CGAL::Projection_traits_xy_3` diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_constructive_traits_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_constructive_traits_2.h index 74534126ab7..6090cd6785c 100644 --- a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_constructive_traits_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_constructive_traits_2.h @@ -11,7 +11,7 @@ in the sidedness tests, lines (of type `R::Line_2`) are constructed, which is equivalent to the precomputation of subdeterminants of the orientation-determinant for three points. -\cgalModels `ConvexHullTraits_2` +\cgalModels{ConvexHullTraits_2} \sa `CGAL::Projection_traits_xy_3` \sa `CGAL::Projection_traits_yz_3` diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_traits_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_traits_2.h index 5d3fb688ae0..431f04e1b46 100644 --- a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_traits_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_traits_2.h @@ -7,7 +7,7 @@ The class `Convex_hull_traits_2` serves as a traits class for all the two-dimens convex hull and extreme point calculation function. This class corresponds to the default traits class for these functions. -\cgalModels `ConvexHullTraits_2` +\cgalModels{ConvexHullTraits_2} \sa `CGAL::Convex_hull_constructive_traits_2` \sa `CGAL::Convex_hull_traits_adapter_2` diff --git a/Convex_hull_3/doc/Convex_hull_3/CGAL/Convex_hull_traits_3.h b/Convex_hull_3/doc/Convex_hull_3/CGAL/Convex_hull_traits_3.h index b02b0542e18..0258193c16f 100644 --- a/Convex_hull_3/doc/Convex_hull_3/CGAL/Convex_hull_traits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/CGAL/Convex_hull_traits_3.h @@ -9,8 +9,7 @@ function when `R` is a kernel with exact predicates but inexact constructions (note that the type `Plane_3` is a triple of `Point_3` and not `R::Plane_3`). \tparam PolygonMesh must be a model of the concept `MutableFaceGraph`. -\cgalModels `ConvexHullTraits_3` -\cgalModels `IsStronglyConvexTraits_3` +\cgalModels{ConvexHullTraits_3,IsStronglyConvexTraits_3} \attention The user must include the header file of the polygon mesh type, even for the default type. diff --git a/Convex_hull_3/doc/Convex_hull_3/CGAL/Extreme_points_traits_adapter_3.h b/Convex_hull_3/doc/Convex_hull_3/CGAL/Extreme_points_traits_adapter_3.h index 5154ffa2968..9f63632758c 100644 --- a/Convex_hull_3/doc/Convex_hull_3/CGAL/Extreme_points_traits_adapter_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/CGAL/Extreme_points_traits_adapter_3.h @@ -15,8 +15,7 @@ namespace CGAL { * (in practice we check `R::Has_filtered_predicates_tag` is `Tag_true` and `R::FT` is a floating point type), * then the default traits class used is `Convex_hull_traits_3`, and `R` otherwise. * - * \cgalModels `ConvexHullTraits_3` - * \cgalModels `IsStronglyConvexTraits_3` + * \cgalModels{ConvexHullTraits_3,IsStronglyConvexTraits_3} */ template class Extreme_points_traits_adapter_3 diff --git a/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d_traits_3.h b/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d_traits_3.h index 190d83f58fa..dbba9f5c475 100644 --- a/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d_traits_3.h +++ b/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d_traits_3.h @@ -13,7 +13,7 @@ low-dimensional standard kernel model, e.g. `Homogeneous` or `Cartesian` for the fixed 3-dimensional usage of `Convex_hull_d`. -\cgalModels `ConvexHullTraits_d` +\cgalModels{ConvexHullTraits_d} */ template< typename R > diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index 97f12d55731..dd815e35759 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -135,10 +135,13 @@ ALIASES = "cgal=%CGAL" \ "cgalRefines{5}=
@cgalRefines
@c \1
@c \2
@c \3
@c \4
@c \5
" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ - "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ "cgalModelsHeader=Is model of" \ "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ + "cgalModels{3}=
@cgalModelsHeader
@c \1
@c \2
@c \3
" \ + "cgalModels{4}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
" \ + "cgalModels{5}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
@c \5
" \ + "cgalModels{6}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
@c \5
@c \6
" \ "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ "cgalModelsBare{2}=
@cgalModelsHeader
\1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 3a25e3c92be..9e73ce583ee 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -144,10 +144,13 @@ ALIASES = "cgal=%CGAL" \ "cgalRefines{5}=
@cgalRefines
@c \1
@c \2
@c \3
@c \4
@c \5
" \ "cgalRefinesBare{1}=
@cgalRefines
\1
" \ "cgalRefinesBare{2}=
@cgalRefines
@c \1
\2
" \ - "cgalModels=\xrefitem models \"Is Model Of\" \"Is Model Relationships\"" \ "cgalModelsHeader=Is model of" \ "cgalModels{1}=
@cgalModelsHeader
@c \1
" \ "cgalModels{2}=
@cgalModelsHeader
@c \1
@c \2
" \ + "cgalModels{3}=
@cgalModelsHeader
@c \1
@c \2
@c \3
" \ + "cgalModels{4}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
" \ + "cgalModels{5}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
@c \5
" \ + "cgalModels{6}=
@cgalModelsHeader
@c \1
@c \2
@c \3
@c \4
@c \5
@c \6
" \ "cgalModelsBare{1}=
@cgalModelsHeader
\1
" \ "cgalModelsBare{2}=
@cgalModelsHeader
\1
\2
" \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ diff --git a/Envelope_2/doc/Envelope_2/CGAL/Envelope_diagram_1.h b/Envelope_2/doc/Envelope_2/CGAL/Envelope_diagram_1.h index 1e91a176b61..abb127ae839 100644 --- a/Envelope_2/doc/Envelope_2/CGAL/Envelope_diagram_1.h +++ b/Envelope_2/doc/Envelope_2/CGAL/Envelope_diagram_1.h @@ -15,7 +15,7 @@ model of the `ArrangementXMonotoneTraits_2` concept, in case we handle only envelopes of \f$ x\f$-monotone curves, or of the refined `ArrangementTraits_2` concept in case we handle arbitrary planar curves. -\cgalModels `EnvelopeDiagram_1` +\cgalModels{EnvelopeDiagram_1} */ template< typename Traits > diff --git a/Envelope_3/doc/Envelope_3/CGAL/Env_plane_traits_3.h b/Envelope_3/doc/Envelope_3/CGAL/Env_plane_traits_3.h index 0164f27e26a..81d5861e3c8 100644 --- a/Envelope_3/doc/Envelope_3/CGAL/Env_plane_traits_3.h +++ b/Envelope_3/doc/Envelope_3/CGAL/Env_plane_traits_3.h @@ -28,7 +28,7 @@ in case of an entire plane, or from `Kernel::Plane_3` and `Kernel::Line_2` in case of a half-plane. The line orientation determines which half is considered. -\cgalModels `EnvelopeTraits_3` +\cgalModels{EnvelopeTraits_3} */ template< typename Kernel > diff --git a/Envelope_3/doc/Envelope_3/CGAL/Env_sphere_traits_3.h b/Envelope_3/doc/Envelope_3/CGAL/Env_sphere_traits_3.h index 6f81385717e..12e170ce5f9 100644 --- a/Envelope_3/doc/Envelope_3/CGAL/Env_sphere_traits_3.h +++ b/Envelope_3/doc/Envelope_3/CGAL/Env_sphere_traits_3.h @@ -25,7 +25,7 @@ The `Xy_monotone_surface_3` type is the same as the nested hemisphere when it computes lower envelopes, and ignores the lower hemisphere when it computes upper envelopes. -\cgalModels `EnvelopeTraits_3` +\cgalModels{EnvelopeTraits_3} */ template< typename ConicTraits > diff --git a/Envelope_3/doc/Envelope_3/CGAL/Env_surface_data_traits_3.h b/Envelope_3/doc/Envelope_3/CGAL/Env_surface_data_traits_3.h index 193f8d89148..bcd4f97ab41 100644 --- a/Envelope_3/doc/Envelope_3/CGAL/Env_surface_data_traits_3.h +++ b/Envelope_3/doc/Envelope_3/CGAL/Env_surface_data_traits_3.h @@ -39,7 +39,7 @@ is trivial and just copies the data object: -\cgalModels `EnvelopeTraits_3` +\cgalModels{EnvelopeTraits_3} */ template< typename Traits, typename XyData, typename SData, typename Cnv > diff --git a/Envelope_3/doc/Envelope_3/CGAL/Env_triangle_traits_3.h b/Envelope_3/doc/Envelope_3/CGAL/Env_triangle_traits_3.h index 759a006de54..74646352052 100644 --- a/Envelope_3/doc/Envelope_3/CGAL/Env_triangle_traits_3.h +++ b/Envelope_3/doc/Envelope_3/CGAL/Env_triangle_traits_3.h @@ -31,7 +31,7 @@ instance and are also convertible to a `Kernel::Triangle_3` object. Both types, `Xy_monotone_surface_3` and `Surface_3`, refer to the same class, as every triangle is (weakly) \f$ xy\f$-monotone). -\cgalModels `EnvelopeTraits_3` +\cgalModels{EnvelopeTraits_3} */ template< typename Kernel > diff --git a/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h b/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h index 519e80ce4ad..8d030fa2fec 100644 --- a/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h +++ b/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h @@ -8,7 +8,7 @@ The class `Generalized_map` represents a dD generalized map. Two versions exist: one where darts and non void attributes are stored in memory using `Compact_container`, using `Alloc` as allocator, and use handles as descriptors; a second one where darts and non void attributes are stored in an internal `std::vector` like data-structure, and use indices as descriptors. The choice between the two versions is done through the item class. -\cgalModels `GeneralizedMap` +\cgalModels{GeneralizedMap}} \tparam d the dimension of the map. diff --git a/Generator/doc/Generator/CGAL/Random_convex_set_traits_2.h b/Generator/doc/Generator/CGAL/Random_convex_set_traits_2.h index b478186e034..e3f6a2a15ed 100644 --- a/Generator/doc/Generator/CGAL/Random_convex_set_traits_2.h +++ b/Generator/doc/Generator/CGAL/Random_convex_set_traits_2.h @@ -5,7 +5,7 @@ namespace CGAL { The class `Random_convex_set_traits_2` serves as a traits class for the function `random_convex_set_2()`. -\cgalModels `RandomConvexSetTraits_2` +\cgalModels{RandomConvexSetTraits_2} */ template< typename Kernel > diff --git a/Generator/doc/Generator/CGAL/point_generators_2.h b/Generator/doc/Generator/CGAL/point_generators_2.h index 459e856ac8d..aec17596750 100644 --- a/Generator/doc/Generator/CGAL/point_generators_2.h +++ b/Generator/doc/Generator/CGAL/point_generators_2.h @@ -143,8 +143,7 @@ The class `Random_points_in_disc_2` is an input iterator creating points uniform distributed in an open disc. The default `Creator` is `Creator_uniform_2::Kernel::RT,Point_2>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_square_2` @@ -207,8 +206,7 @@ The class `Random_points_in_square_2` is an input iterator creating points unifo distributed in a half-open square. The default `Creator` is `Creator_uniform_2::Kernel::RT,Point_2>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_triangle_2` @@ -272,8 +270,7 @@ The class `Random_points_in_triangle_2` is an input iterator creating points uni distributed inside a triangle. The default `Creator` is `Creator_uniform_2::Kernel::RT,Point_2>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -345,8 +342,7 @@ typedef const Point_2& reference; The triangulation must be valid and unchanged while the iterator is used. - \cgalModels `InputIterator` - \cgalModels `PointGenerator` + \cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -413,8 +409,7 @@ get_default_random() ); The triangle range must be valid and unchanged while the iterator is used. - \cgalModels `InputIterator` - \cgalModels `PointGenerator` + \cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -483,8 +478,7 @@ The generated points are computed using floating point arithmetic, whatever the Kernel is, thus they are on the circle/sphere only up to rounding errors. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -550,8 +544,7 @@ The class `Random_points_on_segment_2` is an input iterator creating points unif distributed on a segment. The default `Creator` is `Creator_uniform_2::Kernel::RT,Point_2>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -616,8 +609,7 @@ The class `Random_points_on_square_2` is an input iterator creating points unifo distributed on the boundary of a square. The default `Creator` is `Creator_uniform_2::Kernel::RT,Point_2>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` @@ -683,9 +675,9 @@ namespace CGAL { The class `Points_on_segment_2` is a generator for points on a segment whose endpoints are specified upon construction. The points are equally spaced. -\cgalModels `PointGenerator` +\cgalModels{PointGenerator} -\sa `CGAL::points_on_segment_2` +\sa `CGAL::points_on_segment_2 \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_square_2` \sa `CGAL::Random_points_in_triangle_2` diff --git a/Generator/doc/Generator/CGAL/point_generators_3.h b/Generator/doc/Generator/CGAL/point_generators_3.h index 6c7fd598515..1e2853fa5cf 100644 --- a/Generator/doc/Generator/CGAL/point_generators_3.h +++ b/Generator/doc/Generator/CGAL/point_generators_3.h @@ -41,8 +41,7 @@ The class `Random_points_in_cube_3` is an input iterator creating points uniform distributed in a half-open cube. The default `Creator` is `Creator_uniform_3::Kernel::RT,Point_3>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_square_2` \sa `CGAL::Random_points_in_sphere_3` @@ -106,8 +105,7 @@ The class `Random_points_in_sphere_3` is an input iterator creating points unifo distributed strictly inside a sphere. The default `Creator` is `Creator_uniform_3::Kernel::RT,Point_3>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_cube_3` @@ -171,8 +169,7 @@ The class `Random_points_in_triangle_3` is an input iterator creating points uni distributed inside a 3D triangle. The default `Creator` is `Creator_uniform_3::Kernel::RT,Point_3>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_cube_3` @@ -245,8 +242,7 @@ The class `Random_points_on_segment_3` is an input iterator creating points unif distributed on a segment. The default `Creator` is `Creator_uniform_3::Kernel::RT,Point_3>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_cube_3` \sa `CGAL::Random_points_in_triangle_3` @@ -311,8 +307,7 @@ The class `Random_points_in_tetrahedron_3` is an input iterator creating points distributed inside a tetrahedron. The default `Creator` is `Creator_uniform_3::Kernel::RT,Point_3>`. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_on_segment_3` \sa `CGAL::Random_points_in_cube_3` @@ -387,8 +382,7 @@ The class `Random_points_in_triangles_3` is an input iterator creating points un The triangle range must be valid and unchanged while the iterator is used. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_cube_3` \sa `CGAL::Random_points_in_triangle_3` @@ -454,8 +448,7 @@ The class `Random_points_in_triangle_mesh_3` is an input iterator creating point distributed inside the faces of a triangle mesh model of `FaceListGraph`. The triangle mesh must be valid and unchanged while the iterator is used. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_cube_3` @@ -534,8 +527,7 @@ The tetrahedral mesh must be valid and unchanged while the iterator is used. \tparam C3T3 must be a model of `Mesh_complex_3_in_triangulation_3` -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_cube_3` @@ -608,8 +600,7 @@ The tetrahedral mesh must be valid and unchanged while the iterator is used. \tparam C3T3 must be a model of `Mesh_complex_3_in_triangulation_3` -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_cube_3` @@ -682,8 +673,7 @@ The generated points are computed using floating point arithmetic, whatever the Kernel is, thus they are on the circle/sphere only up to rounding errors. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_on_circle_2` \sa `CGAL::Random_points_in_cube_3` diff --git a/Generator/doc/Generator/CGAL/point_generators_d.h b/Generator/doc/Generator/CGAL/point_generators_d.h index a06065a8ac1..7f22705dee7 100644 --- a/Generator/doc/Generator/CGAL/point_generators_d.h +++ b/Generator/doc/Generator/CGAL/point_generators_d.h @@ -40,8 +40,7 @@ Creator creator); The class `Random_points_in_ball_d` is an input iterator creating points uniformly distributed in an open ball in any dimension. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_sphere_3` @@ -106,8 +105,7 @@ namespace CGAL { The class `Random_points_in_cube_d` is an input iterator creating points uniformly distributed in an half-open cube. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_in_square_2` \sa `CGAL::Random_points_in_cube_3` @@ -178,8 +176,7 @@ The generated points are computed using floating point arithmetic, whatever the Kernel is, thus they are on the sphere only up to rounding errors. -\cgalModels `InputIterator` -\cgalModels `PointGenerator` +\cgalModels{InputIterator,PointGenerator} \sa `CGAL::Random_points_on_circle_2` \sa `CGAL::Random_points_on_sphere_3` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h index 5d620b9aba3..c30b0c5f388 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h @@ -10,7 +10,7 @@ uses the \cgal default allocator as default setting. `HalfedgeDS_default` is a list-based representation with bidirectional iterators that supports removal. -\cgalModels `HalfedgeDS` +\cgalModelsBare{`HalfedgeDS`} \sa `CGAL::HalfedgeDS_list` \sa `CGAL::HalfedgeDS_vector` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_base.h index b7e0923adef..64569d0b25c 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_base.h @@ -35,7 +35,7 @@ without a reference to an incident halfedge and it stores a plane equation of type `Plane`. It can be used as a face for a model of the `PolyhedronItems_3` concept. -\cgalModels `HalfedgeDSFace` +\cgalModels{HalfedgeDSFace} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_min_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_min_base.h index c9ee44f575d..204225bbef2 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_min_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_face_min_base.h @@ -9,7 +9,7 @@ equivalent to `CGAL::HalfedgeDS_face_base< Refs, CGAL::Tag_false>`. It is empty besides the required type definitions. It can be used for deriving own faces. -\cgalModels `HalfedgeDSFace` +\cgalModels{HalfedgeDSFace} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_base.h index 0fb79575602..57a386b3b42 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_base.h @@ -57,7 +57,7 @@ supported. In all cases, a reference to the next halfedge and to the opposite halfedge is supported. -\cgalModels `HalfedgeDSHalfedge` +\cgalModels{HalfedgeDSHalfedge} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_min_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_min_base.h index 7358f0858d0..2be20cb48f3 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_min_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_halfedge_min_base.h @@ -10,7 +10,7 @@ CGAL::Tag_false, CGAL::Tag_false, CGAL::Tag_false>`. The class contains support for the next and the opposite pointer and the required type definitions. It can be used for deriving own halfedges. -\cgalModels `HalfedgeDSHalfedge` +\cgalModels{HalfedgeDSHalfedge} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h index 39b806a2412..3e050fb7808 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h @@ -9,7 +9,7 @@ declare all incidences supported by a `HalfedgeDS`. The vertex also contains a point of type `Traits::Point_2`, where `Traits` is the template argument of the corresponding `HalfedgeDS`. -\cgalModels `HalfedgeDSItems` +\cgalModels{HalfedgeDSItems} \sa `CGAL::HalfedgeDS_min_items` \sa `CGAL::Polyhedron_items_3` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h index 66407bbf6dd..cee3b3d3028 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h @@ -7,7 +7,7 @@ The class `HalfedgeDS_list` is a model for the `HalfedgeDS` concept. `HalfedgeDS_list` is a list-based representation with bidirectional iterators that supports removal. -\cgalModels `HalfedgeDS` +\cgalModelsBare{`HalfedgeDS`} \sa `CGAL::HalfedgeDS_default` \sa `CGAL::HalfedgeDS_vector` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h index 55504012cce..8439f152f2a 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h @@ -9,7 +9,7 @@ declare the minimal required incidences for a `HalfedgeDS`, which are the `next()` and the `opposite()` member function for halfedges. -\cgalModels `HalfedgeDSItems` +\cgalModels{HalfedgeDSItems} \sa `CGAL::HalfedgeDS_items_2` \sa `CGAL::Polyhedron_items_3` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h index 51942b6adf5..d2f29447128 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h @@ -7,7 +7,7 @@ The class `HalfedgeDS_vector` is a model for the `HalfedgeDS` concept. `HalfedgeDS_vector` is a vector-based representation with random access iterators that does not support removal. -\cgalModels `HalfedgeDS` +\cgalModelsBare{`HalfedgeDS`} \sa `CGAL::HalfedgeDS_default` \sa `CGAL::HalfedgeDS_list` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_base.h index b4ac2235f63..e1b294bdc00 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_base.h @@ -33,7 +33,7 @@ Let us look at some instantiations type `Point`. It can be used as a vertex for a model of the `PolyhedronItems_3` concept. -\cgalModels `HalfedgeDSVertex` +\cgalModels{HalfedgeDSVertex} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_min_base.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_min_base.h index 52232dff3ee..aa981302737 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_min_base.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vertex_min_base.h @@ -9,7 +9,7 @@ equivalent to `HalfedgeDS_vertex_base< Refs, CGAL::Tag_false>`. It is empty besides the required type definitions. It can be used for deriving own vertices. -\cgalModels `HalfedgeDSVertex` +\cgalModels{HalfedgeDSVertex} \sa `HalfedgeDS` \sa `HalfedgeDSItems` diff --git a/Heat_method_3/include/CGAL/Heat_method_3/internal/Intrinsic_Delaunay_triangulation_3.h b/Heat_method_3/include/CGAL/Heat_method_3/internal/Intrinsic_Delaunay_triangulation_3.h index cff7968bd7e..65d78512514 100644 --- a/Heat_method_3/include/CGAL/Heat_method_3/internal/Intrinsic_Delaunay_triangulation_3.h +++ b/Heat_method_3/include/CGAL/Heat_method_3/internal/Intrinsic_Delaunay_triangulation_3.h @@ -146,7 +146,7 @@ struct Intrinsic_Delaunay_triangulation_3_vertex_iterator_functor * \tparam TriangleMesh a triangulated surface mesh, model of `FaceListGraph` and `HalfedgeListGraph` * \tparam Traits a model of `HeatMethodTraits_3` * - * \cgalModels `FaceListGraph` + * \cgalModels{FaceListGraph} */ template diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_Delaunay_triangulation_traits_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_Delaunay_triangulation_traits_2.h index 8eab67ea083..199f295efc2 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_Delaunay_triangulation_traits_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_Delaunay_triangulation_traits_2.h @@ -20,7 +20,7 @@ algebraic coordinates. \sa `Hyperbolic_Delaunay_triangulation_CK_traits_2` -\cgalModels `HyperbolicDelaunayTriangulationTraits_2` +\cgalModels{HyperbolicDelaunayTriangulationTraits_2} */ template< class K > diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_triangulation_face_base_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_triangulation_face_base_2.h index c5dabf727b9..d7c85fc2372 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_triangulation_face_base_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/CGAL/Hyperbolic_triangulation_face_base_2.h @@ -14,7 +14,7 @@ offered by \cgal. \tparam Fb must be a model of `TriangulationFaceBase_2`. %Defaults to `Triangulation_face_base_2`. -\cgalModels `HyperbolicTriangulationFaceBase_2` +\cgalModels{HyperbolicTriangulationFaceBase_2} */ diff --git a/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h b/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h index 14fbc1a339a..c30c1d54a32 100644 --- a/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h @@ -13,7 +13,7 @@ be inscribed into a given convex polygon \f$ P\f$ using the function \tparam K must be a model of `Kernel`. -\cgalModels `ExtremalPolygonTraits_2` +\cgalModels{ExtremalPolygonTraits_2} \sa `CGAL::maximum_area_inscribed_k_gon_2()` \sa `CGAL::maximum_perimeter_inscribed_k_gon_2()` @@ -117,7 +117,7 @@ k\f$-gon \f$ P_k\f$ that can be inscribed into a given convex polygon \tparam K must be a model of `Kernel`. -\cgalModels `ExtremalPolygonTraits_2` +\cgalModels{ExtremalPolygonTraits_2} \sa `CGAL::maximum_area_inscribed_k_gon_2()` \sa `CGAL::maximum_perimeter_inscribed_k_gon_2()` diff --git a/Interpolation/doc/Interpolation/CGAL/Interpolation_gradient_fitting_traits_2.h b/Interpolation/doc/Interpolation/CGAL/Interpolation_gradient_fitting_traits_2.h index 73b2ca49269..fe4dd468cb7 100644 --- a/Interpolation/doc/Interpolation/CGAL/Interpolation_gradient_fitting_traits_2.h +++ b/Interpolation/doc/Interpolation/CGAL/Interpolation_gradient_fitting_traits_2.h @@ -11,8 +11,7 @@ functions and of Sibson's gradient fitting function when applied on a function defined over a two-dimensional domain. The traits class is templated by a kernel class `K`. -\cgalModels `GradientFittingTraits` -\cgalModels `InterpolationTraits` +\cgalModels{GradientFittingTraits,InterpolationTraits} \sa `InterpolationTraits` \sa `GradientFittingTraits` diff --git a/Interpolation/doc/Interpolation/CGAL/Interpolation_traits_2.h b/Interpolation/doc/Interpolation/CGAL/Interpolation_traits_2.h index 4dfb092457d..79fb75c24af 100644 --- a/Interpolation/doc/Interpolation/CGAL/Interpolation_traits_2.h +++ b/Interpolation/doc/Interpolation/CGAL/Interpolation_traits_2.h @@ -10,7 +10,7 @@ geometric traits class of interpolation methods applied on a bivariate function over a two-dimensional domain. The traits class is templated by a kernel class `K`. -\cgalModels `InterpolationTraits` +\cgalModels{InterpolationTraits} \sa `InterpolationTraits` \sa `GradientFittingTraits` diff --git a/Interpolation/doc/Interpolation/CGAL/Voronoi_intersection_2_traits_3.h b/Interpolation/doc/Interpolation/CGAL/Voronoi_intersection_2_traits_3.h index 2f3475cff06..68b432af00e 100644 --- a/Interpolation/doc/Interpolation/CGAL/Voronoi_intersection_2_traits_3.h +++ b/Interpolation/doc/Interpolation/CGAL/Voronoi_intersection_2_traits_3.h @@ -20,7 +20,7 @@ points without explicitly constructing the projected points and the weights. This reduces the arithmetic demands. The traits class is templated by a kernel class `K` and inherits from it. -\cgalModels `RegularTriangulationTraits_2` +\cgalModels{RegularTriangulationTraits_2} \sa `CGAL::Regular_triangulation_2` \sa `PkgInterpolationRegularNeighborCoordinates2` diff --git a/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list_interval.h b/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list_interval.h index 0507c73d678..b6d2bc94a8a 100644 --- a/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list_interval.h +++ b/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list_interval.h @@ -11,7 +11,7 @@ can be open or closed at each endpoint. The output operator is defined for `std::ostream`. -\cgalModels `Interval` +\cgalModels{Interval} */ template< typename Value > diff --git a/Interval_skip_list/doc/Interval_skip_list/CGAL/Level_interval.h b/Interval_skip_list/doc/Interval_skip_list/CGAL/Level_interval.h index 8ee910ca5dc..4e80b70e619 100644 --- a/Interval_skip_list/doc/Interval_skip_list/CGAL/Level_interval.h +++ b/Interval_skip_list/doc/Interval_skip_list/CGAL/Level_interval.h @@ -13,7 +13,7 @@ whose `Kernel_traits::Kernel` must have a nested type `FT`. These requirements are fulfilled, if one uses a \cgal triangulation and a \cgal `Kernel`. -\cgalModels `Interval` +\cgalModels{Interval} */ template< typename FaceHandle > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h b/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h index 4bd99fa3771..1c0cb7a9931 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h @@ -34,7 +34,7 @@ translation vector \f$ (v_0,\,v_1,\,1)\f$ appears in the last column of the matrix. The entries \f$ m_{20}\f$ and \f$ m_{21}\f$ are always zero and therefore do not appear in the constructors. -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} \sa `Identity_transformation` \sa `Rotation` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_3.h b/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_3.h index cfb2c924cb8..1312f02689f 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_3.h @@ -29,7 +29,7 @@ In three-dimensional space we have a \f$ 4\times 4\f$ matrix \f$ m_{32}\f$ are always zero and therefore do not appear in the constructors. -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} \sa `CGAL::Aff_transformation_2` \sa `CGAL::Identity_transformation` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Bbox_2.h b/Kernel_23/doc/Kernel_23/CGAL/Bbox_2.h index ec861b9cb72..1905d336703 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Bbox_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Bbox_2.h @@ -7,7 +7,7 @@ namespace CGAL { An object `b` of the class `Bbox_2` is a bounding box in the two-dimensional Euclidean plane \f$ \E^2\f$. This class is not templated. -\cgalModels `Hashable` +\cgalModels{Hashable} \sa `CGAL::Bbox_3` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Bbox_3.h b/Kernel_23/doc/Kernel_23/CGAL/Bbox_3.h index a61d5e339af..f44a44e4812 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Bbox_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Bbox_3.h @@ -7,7 +7,7 @@ namespace CGAL { An object `b` of the class `Bbox_3` is a bounding box in the three-dimensional Euclidean space \f$ \E^3\f$. -\cgalModels `Hashable` +\cgalModels{Hashable} \sa `CGAL::Bbox_2` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h b/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h index 453a15d867d..46920d12e07 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h @@ -14,7 +14,7 @@ type provided as a model for `FieldNumberType` is only an approximation of a field (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Implementation} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h index 1e9eacdeb0e..0903e515255 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h @@ -11,8 +11,7 @@ positive side is to the left of the boundary. The boundary also splits \f$ \E^2\f$ into a bounded and an unbounded side. Note that the circle can be degenerated, i.e.\ the squared radius may be zero. -\cgalModels `Kernel::Circle_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Circle_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h b/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h index 1fcdcab6e68..4624be59f35 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h @@ -7,7 +7,7 @@ An object `c` of type `Circle_3` is a circle in the three-dimensional Euclidean space \f$ \E^3\f$. Note that the circle can be degenerate, i.e.\ the squared radius may be zero. -\cgalModels `Kernel::Circle_3` +\cgalModels{Kernel::Circle_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h b/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h index 00a2e8d74a5..241f39e6409 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h @@ -14,7 +14,7 @@ orthogonal to an oriented plane, or the direction of an oriented line. Further, they can be used to indicate angles. The slope of a direction is `dy()`/`dx()`. -\cgalModels `Kernel::Direction_2` +\cgalModels{Kernel::Direction_2} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h b/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h index 81b096ac359..34c8c55766d 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h @@ -13,7 +13,7 @@ or the direction normal to parallel planes that have the same orientation. For example, you can ask for the direction orthogonal to an oriented plane, or the direction of an oriented line. -\cgalModels `Kernel::Direction_3` +\cgalModels{Kernel::Direction_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel.h index a29334c9fc0..5a6bae83b3e 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel.h @@ -14,7 +14,7 @@ coordinates. constructions. -\cgalModels `Kernel` +\cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt` \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_kth_root` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_kth_root.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_kth_root.h index 275fd9ae602..3b889df0f04 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_kth_root.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_kth_root.h @@ -17,7 +17,7 @@ constructions. Note that it requires CORE or LEDA installed. -\cgalModels `Kernel` +\cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel` \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_root_of.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_root_of.h index 512a90c0de6..9e9f5fafcdc 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_root_of.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_root_of.h @@ -17,7 +17,7 @@ constructions. Note that it requires CORE or LEDA installed. -\cgalModels `Kernel` +\cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel` \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_sqrt.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_sqrt.h index 329cf7b73af..7827a88903b 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_sqrt.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_exact_constructions_kernel_with_sqrt.h @@ -17,7 +17,7 @@ constructions. Note that it requires CORE or LEDA installed. -\cgalModels `Kernel` +\cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel` \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_kth_root` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h index 1063561e3d6..d53f16093f0 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h @@ -14,7 +14,7 @@ coordinates. constructions. -\cgalModels `Kernel` +\cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel` \sa `CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h b/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h index d2842b55a2e..5935300f991 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h @@ -14,7 +14,7 @@ More details about the filtering technique can be found in \cgalCite{cgal:bbp-i In contrast to `Filtered_kernel`, the global functions are those of `CK`. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Example} @@ -71,7 +71,7 @@ activates or not an additional layer of semi-static filters. It defaults to defined. This option is mostly for debugging and testing, there should be no production use for deactivating static filters. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Example} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h b/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h index 64f071e40a0..b46345798df 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h @@ -14,7 +14,7 @@ type provided as a model for `RingNumberType` is only an approximation of a ring (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Implementation} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h b/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h index a32da1d2490..c98675c6ecf 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h @@ -16,8 +16,7 @@ difference however is that bounding boxes have always double coordinates, whereas the coordinate type of an iso-oriented cuboid is chosen by the user. -\cgalModels `Kernel::IsoCuboid_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::IsoCuboid_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h index d7228803e0e..106c019b0e2 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h @@ -17,8 +17,7 @@ difference however is that bounding boxes have always double coordinates, whereas the coordinate type of an iso-oriented rectangle is chosen by the user. -\cgalModels `Kernel::IsoRectangle_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::IsoRectangle_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h index 079c65a6eb6..6d10a6efc62 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h @@ -34,7 +34,7 @@ To define a line `l` we write: Line_2< Cartesian > l(p,q); \endcode -\cgalModels `Kernel::Line_2` +\cgalModels{Kernel::Line_2} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Line_3.h b/Kernel_23/doc/Kernel_23/CGAL/Line_3.h index e7b19f59107..1760d5f6c2a 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Line_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Line_3.h @@ -6,7 +6,7 @@ namespace CGAL { An object `l` of the data type `Line_3` is a directed straight line in the three-dimensional Euclidean space \f$ \E^3\f$. -\cgalModels `Kernel::Line_3` +\cgalModels{Kernel::Line_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h b/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h index 9ef778c7c17..4496ea077dd 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h @@ -14,7 +14,7 @@ A point `p` with %Cartesian coordinates \f$ (px, py, pz)\f$ is on the positive side of `h`, iff \f$ a\, px +b\, py +c\, pz + d > 0\f$. It is on the negative side, iff \f$ a\, px +b\, py\, +c\, pz + d < 0\f$. -\cgalModels `Kernel::Plane_3` +\cgalModels{Kernel::Plane_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h index 00ea07ef2fb..7548bef2472 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h @@ -30,8 +30,7 @@ p = q; std::cout << p.x() << " " << p.y() << std::endl; \endcode -\cgalModels `Kernel::Point_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Point_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h index 0babd70a4c8..7bd6d26fddc 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h @@ -16,8 +16,7 @@ to `NT`, and `Kernel::FT` is equal to `Quotient`. The following operations can be applied on points: -\cgalModels `Kernel::Point_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Point_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_3.h b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_3.h index 9c468b37b22..8642cd194d1 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_3.h @@ -15,12 +15,7 @@ constructions or if `K` is a `CGAL::Filtered_kernel` (such as for `CGAL::Exact_predicates_inexact_constructions_kernel`), this class automatically provides exact predicates. -\cgalModels `TriangulationTraits_2` -\cgalModels `DelaunayTriangulationTraits_2` -\cgalModels `ConstrainedTriangulationTraits_2` -\cgalModels `PolygonTraits_2` -\cgalModels `ConformingDelaunayTriangulationTraits_2` -\cgalModels `Barycentric_coordinates::BarycentricTraits_2` +\cgalModels{TriangulationTraits_2,DelaunayTriangulationTraits_2,ConstrainedTriangulationTraits_2,PolygonTraits_2,ConformingDelaunayTriangulationTraits_2,Barycentric_coordinates::BarycentricTraits_2} \sa `CGAL::Projection_traits_xy_3` \sa `CGAL::Projection_traits_xz_3` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h index ab57d5cfb67..d9911834c80 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h @@ -21,18 +21,12 @@ constructions or if `K` is a `CGAL::Filtered_kernel` (such as for `CGAL::Exact_predicates_inexact_constructions_kernel`), this class automatically provides exact predicates. -\cgalModels The class is a model of several 2D triangulation traits class concepts, +\cgalModelsBare{The class is a model of several 2D triangulation traits class concepts\, except that it does not provide the type and constructors - required to build the dual Voronoi diagram. -\cgalModels `PolygonTraits_2` -\cgalModels `ConvexHullTraits_2` -\cgalModels `TriangulationTraits_2` -\cgalModels `DelaunayTriangulationTraits_2` -\cgalModels `ConstrainedTriangulationTraits_2` -\cgalModels `ConvexHullTraits_2` -\cgalModels `DelaunayMeshTraits_2` -\cgalModels `AnalyticWeightTraits_2` -\cgalModels `Barycentric_coordinates::BarycentricTraits_2` + required to build the dual Voronoi diagram.\n + `PolygonTraits_2`\n`ConvexHullTraits_2`\n`TriangulationTraits_2`\n`DelaunayTriangulationTraits_2`\n + `ConstrainedTriangulationTraits_2`\n`ConvexHullTraits_2`\n`DelaunayMeshTraits_2`\n`AnalyticWeightTraits_2`\n + `Barycentric_coordinates::BarycentricTraits_2`} \sa `CGAL::Projection_traits_3` */ diff --git a/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h b/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h index c153b0f9ee3..0e81f49852c 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h @@ -7,7 +7,7 @@ An object `r` of the data type `Ray_2` is a directed straight ray in the two-dimensional Euclidean plane \f$ \E^2\f$. It starts in a point called the source of `r` and goes to infinity. -\cgalModels `Kernel::Ray_2` +\cgalModels{Kernel::Ray_2} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h b/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h index 86e6efce248..49f66ae47cc 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h @@ -7,7 +7,7 @@ An object `r` of the data type `Ray_3` is a directed straight ray in the three-dimensional Euclidean space \f$ \E^3\f$. It starts in a point called the source of `r` and it goes to infinity. -\cgalModels `Kernel::Ray_3` +\cgalModels{Kernel::Ray_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h b/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h index 71ae4257335..0e7bc381ab1 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h @@ -14,8 +14,7 @@ to compute the square of the length, because otherwise we had to perform a square root operation which is not defined for all number types, which is expensive, and may not be exact. -\cgalModels `Kernel::Segment_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Segment_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h b/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h index 36dcda52494..ffa862e7361 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h @@ -14,8 +14,7 @@ to compute the square of the length, because otherwise we had to perform a square root operation which is not defined for all number types, which is expensive, and may not be exact. -\cgalModels `Kernel::Segment_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Segment_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h b/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h index b84880de991..11ee6050d50 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h @@ -14,7 +14,7 @@ type provided as a model for `FieldNumberType` is only an approximation of a field (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Implementation} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h b/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h index 302e7c91b5c..1dc5fa6395e 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h @@ -14,7 +14,7 @@ type provided as a model for `RingNumberType` is only an approximation of a ring (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `Kernel` +\cgalModels{Kernel} \cgalHeading{Implementation} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h b/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h index f8541de6dd3..2436276513e 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h @@ -11,8 +11,7 @@ positive side is to the left of the boundary. The boundary also splits \f$ \E^3\f$ into a bounded and an unbounded side. Note that the sphere can be degenerated, i.e.\ the squared radius may be zero. -\cgalModels `Kernel::Sphere_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Sphere_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h b/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h index 649a874e242..37af105fefe 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h @@ -17,7 +17,7 @@ a negative side. The boundary of a tetrahedron splits the space in two open regions, a bounded one and an unbounded one. -\cgalModels `Kernel::Tetrahedron_3` +\cgalModels{Kernel::Tetrahedron_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h index e19f43bc522..9004381fb11 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h @@ -13,7 +13,7 @@ boundary the negative side. The boundary of a triangle splits the plane in two open regions, a bounded one and an unbounded one. -\cgalModels `Kernel::Triangle_2` +\cgalModels{Kernel::Triangle_2} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h b/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h index d0dadad48b8..cc53d8ad29a 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h @@ -8,7 +8,7 @@ the three-dimensional Euclidean space \f$ \E^3\f$. As the triangle is not a full-dimensional object there is only a test whether a point lies on the triangle or not. -\cgalModels `Kernel::Triangle_3` +\cgalModels{Kernel::Triangle_3} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h index eaeab03a882..e17775ba6f1 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h @@ -12,8 +12,7 @@ from \f$ p_1\f$ to \f$ p_2\f$. will explicitly state where you can pass this constant as an argument instead of a vector initialized with zeros. -\cgalModels `Kernel::Vector_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Vector_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h b/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h index d126bd97740..1e114bd44e3 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h @@ -12,8 +12,7 @@ from \f$ p_1\f$ to \f$ p_2\f$. will explicitly state where you can pass this constant as an argument instead of a vector initialized with zeros. -\cgalModels `Kernel::Vector_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::Vector_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} \sa `cross_product_grp` \sa `determinant_grp` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h index 01a147e6d64..fa67214d5a8 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h @@ -13,8 +13,7 @@ to `NT`, and `Kernel::FT` is equal to `Quotient`. \sa `Point_2` -\cgalModels `Kernel::WeightedPoint_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::WeightedPoint_2,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h index 3dcb39e1786..7765f44daa9 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h @@ -13,8 +13,7 @@ to `NT`, and `Kernel::FT` is equal to `Quotient`. \sa `Point_3` -\cgalModels `Kernel::WeightedPoint_3` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels{Kernel::WeightedPoint_3,Hashable if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable`} */ template< typename Kernel > diff --git a/Kernel_d/doc/Kernel_d/CGAL/Cartesian_d.h b/Kernel_d/doc/Kernel_d/CGAL/Cartesian_d.h index c79c47380c4..68b1d084db6 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Cartesian_d.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Cartesian_d.h @@ -14,7 +14,7 @@ type provided as a model for `FieldNumberType` is only an approximation of a field (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `KernelWithLifting_d` +\cgalModels{KernelWithLifting_d} \sa `CGAL::Homogeneous_d` diff --git a/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h b/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h index 4fcacb5b584..8d8d24a048d 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h @@ -43,11 +43,7 @@ concepts for the rest. -\cgalModels `Kernel_d` -\cgalModels `DelaunayTriangulationTraits` -\cgalModels `RegularTriangulationTraits` -\cgalModels `SearchTraits` -\cgalModels `RangeSearchTraits` +\cgalModels{Kernel_d,DelaunayTriangulationTraits,RegularTriangulationTraits,SearchTraits,RangeSearchTraits} \sa `CGAL::Cartesian_d` \sa `CGAL::Homogeneous_d` @@ -58,8 +54,7 @@ template< typename DimensionTag > struct Epeck_d { /*! represents a point in the Euclidean space -\cgalModels `DefaultConstructible` -\cgalModels `Assignable` +\cgalModels{DefaultConstructible,Assignable} */ class Point_d { public: @@ -87,8 +82,7 @@ Cartesian_const_iterator_d cartesian_end()const; /*! represents a weighted point in the Euclidean space -\cgalModels `DefaultConstructible` -\cgalModels `Assignable` +\cgalModels{DefaultConstructible,Assignable} */ class Weighted_point_d { public: @@ -100,7 +94,7 @@ Point_d point() const; double weight() const; }; -/*! \cgalModels `Kernel_d::Center_of_sphere_d` +/*! \cgalModels{Kernel_d::Center_of_sphere_d} */ class Construct_circumcenter_d { public: @@ -129,7 +123,7 @@ public: template FT operator()(ForwardIterator first, ForwardIterator last); }; -/*! \cgalModels `Kernel_d::Side_of_bounded_sphere_d` +/*! \cgalModels{Kernel_d::Side_of_bounded_sphere_d} */ class Side_of_bounded_sphere_d { public: diff --git a/Kernel_d/doc/Kernel_d/CGAL/Epick_d.h b/Kernel_d/doc/Kernel_d/CGAL/Epick_d.h index 4d682670ebf..b5e67064e9b 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Epick_d.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Epick_d.h @@ -32,11 +32,7 @@ concepts for the rest. -\cgalModels `Kernel_d` -\cgalModels `DelaunayTriangulationTraits` -\cgalModels `RegularTriangulationTraits` -\cgalModels `SearchTraits` -\cgalModels `RangeSearchTraits` +\cgalModels{Kernel_d,DelaunayTriangulationTraits,RegularTriangulationTraits,SearchTraits,RangeSearchTraits} \sa `CGAL::Cartesian_d` \sa `CGAL::Homogeneous_d` @@ -47,8 +43,7 @@ template< typename DimensionTag > struct Epick_d { /*! represents a point in the Euclidean space -\cgalModels `DefaultConstructible` -\cgalModels `Assignable` +\cgalModels{DefaultConstructible,Assignable} */ class Point_d { public: @@ -76,8 +71,7 @@ Cartesian_const_iterator_d cartesian_end()const; /*! represents a weighted point in the Euclidean space -\cgalModels `DefaultConstructible` -\cgalModels `Assignable` +\cgalModels{DefaultConstructible,Assignable} */ class Weighted_point_d { public: @@ -89,7 +83,7 @@ Point_d point() const; double weight() const; }; -/*! \cgalModels `Kernel_d::Center_of_sphere_d` +/*! \cgalModels{Kernel_d::Center_of_sphere_d} */ class Construct_circumcenter_d { public: @@ -118,7 +112,7 @@ public: template FT operator()(ForwardIterator first, ForwardIterator last); }; -/*! \cgalModels `Kernel_d::Side_of_bounded_sphere_d` +/*! \cgalModels{Kernel_d::Side_of_bounded_sphere_d} */ class Side_of_bounded_sphere_d { public: diff --git a/Kernel_d/doc/Kernel_d/CGAL/Homogeneous_d.h b/Kernel_d/doc/Kernel_d/CGAL/Homogeneous_d.h index 423caffdf00..0b693eb1b02 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Homogeneous_d.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Homogeneous_d.h @@ -14,7 +14,7 @@ type provided as a model for `RingNumberType` is only an approximation of a ring (such as the built-in type `double`), then the geometry provided by the kernel is only an approximation of Euclidean geometry. -\cgalModels `KernelWithLifting_d` +\cgalModels{KernelWithLifting_d} \sa `CGAL::Cartesian_d` diff --git a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h index 876daf9cc6c..41bcb4863e2 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h @@ -8,7 +8,7 @@ The class `Linear_algebraCd` serves as the default traits class for the LA parameter of `CGAL::Cartesian_d`. It implements linear algebra for field number types `FT`. -\cgalModels `LinearAlgebraTraits_d` +\cgalModels{LinearAlgebraTraits_d} \tparam FT must be a field number type. diff --git a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h index 37f58d46070..d170a0bf8ff 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h @@ -8,7 +8,7 @@ The class `Linear_algebraHd` serves as the default traits class for the LA parameter of `CGAL::Homogeneous_d`. It implements linear algebra for Euclidean ring number types `RT`. -\cgalModels `LinearAlgebraTraits_d` +\cgalModels{LinearAlgebraTraits_d} To make a ring number type `RT` work with this class it has to provide a division `operator/` with remainder. diff --git a/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h b/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h index c951a0735ef..21b8551152d 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h @@ -8,7 +8,7 @@ in `d` dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalModels `BidirectionalIterator` +\cgalModels{BidirectionalIterator} \sa `Kernel_d::ConstructCartesianConstIterator_d` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point.h index e16404861ca..f653077d6b8 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Cell_attribute_with_point` represents an attribute containing a point and containing an information when `Info_` is different from `void`. This class can typically be used to associate a point to each 0-cell of a combinatorial or a generalized map. -\cgalModels `CellAttributeWithPoint` +\cgalModels{CellAttributeWithPoint} \tparam LCC a model of the `LinearCellComplex` concept. \tparam Info_ the type of the information contained in the attribute, `void` for no information. Equal to `void` by default. diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point_and_id.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point_and_id.h index 62dbacdd982..bc8d24854c8 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point_and_id.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Cell_attribute_with_point_and_id.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Cell_attribute_with_point_and_id` represents an attribute containing a point, containing an information when `Info_` is different from `void`, and having an id. This class can typically be used to associate a point with id to each 0-cell of a combinatorial or a generalized map. -\cgalModels `CellAttributeWithPoint` +\cgalModels{CellAttributeWithPoint} \tparam LCC a model of the `LinearCellComplex` concept. \tparam Info_ the type of the information contained in the attribute, `void` for no information. Equal to `void` by default. diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_combinatorial_map.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_combinatorial_map.h index e274cdc570b..0c0e0576463 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_combinatorial_map.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_combinatorial_map.h @@ -7,8 +7,7 @@ namespace CGAL { The class `Linear_cell_complex_for_combinatorial_map` represents a linear cell complex in dimension `d`, in an ambient space of dimension `d2`, using a combinatorial map as underlying combinatorial data-structure. Like for `Combinatorial_map`, two versions exist: one where Darts and non void attributes are stored in memory using `Compact_container`, using `Alloc` as allocator, and use handles as descriptors; a second one where Darts and non void attributes are stored in an internal std::vector like data-structure, and use indices as descriptors. The choice between the two versions is done through the item class. -\cgalModels `LinearCellComplex` -\cgalModels `CombinatorialMap` +\cgalModels{LinearCellComplex,CombinatorialMap} \tparam d the dimension of the combinatorial map. \tparam d2 the dimension of the ambient space. Equal to `d` by default. diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_generalized_map.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_generalized_map.h index 2dd97d9298a..bf105c68f2e 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_generalized_map.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_for_generalized_map.h @@ -7,8 +7,7 @@ namespace CGAL { The class `Linear_cell_complex_for_generalized_map` represents a linear cell complex in dimension `d`, in an ambient space of dimension `d2`, using a generalized map as underlying combinatorial data-structure. Like for `GeneralizedMap`, two versions exist: one where Darts and non void attributes are stored in memory using `Compact_container`, using `Alloc` as allocator, and use handles as descriptors; a second one where Darts and non void attributes are stored in an internal std::vector like data-structure, and use indices as descriptors. The choice between the two versions is done through the item class. -\cgalModels `LinearCellComplex` -\cgalModels `GeneralizedMap` +\cgalModels{LinearCellComplex,GeneralizedMap} \tparam d the dimension of the generalized map. \tparam d2 the dimension of the ambient space. Equal to `d` by default. diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_min_items.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_min_items.h index a9b3bc0ade4..1e489d463ec 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_min_items.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_min_items.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Linear_cell_complex_min_items` defines `void` as the information associated with darts, and the attributes used. In this class, 0-attributes are enabled and associated with `Cell_attribute_with_point`. -\cgalModels `LinearCellComplexItems` +\cgalModels{LinearCellComplexItems} \cgalHeading{Example} diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_traits.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_traits.h index e79db672469..a1d41384981 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_traits.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_traits.h @@ -6,7 +6,7 @@ namespace CGAL { This geometric traits concept is used in the `Linear_cell_complex_for_combinatorial_map` and `Linear_cell_complex_for_generalized_map` classes. It can take as parameter any model of the concept `Kernel` (for example any \cgal kernel), and defines inner types and functors corresponding to the given dimension. -\cgalModels `LinearCellComplexTraits` +\cgalModels{LinearCellComplexTraits} \tparam d the dimension of the kernel, \tparam K a model of the concept `Kernel` if `d==2` or `d==3`; a model of the concept `Kernel_d` otherwise. Equal by default to `CGAL::Exact_predicates_inexact_constructions_kernel` if `d` is 2 or 3, and is `CGAL::Cartesian_d` otherwise. diff --git a/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h b/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h index 341f51327f9..d1c9609cd29 100644 --- a/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h +++ b/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h @@ -10,8 +10,7 @@ matrix search. \tparam M is a model of `BasicMatrix`. -\cgalModels `MonotoneMatrixSearchTraits` -\cgalModels `BasicMatrix` +\cgalModels{MonotoneMatrixSearchTraits,BasicMatrix} \sa `CGAL::monotone_matrix_search()` \sa `MonotoneMatrixSearchTraits` diff --git a/Matrix_search/doc/Matrix_search/CGAL/Sorted_matrix_search_traits_adaptor.h b/Matrix_search/doc/Matrix_search/CGAL/Sorted_matrix_search_traits_adaptor.h index 0a29ba6117c..baaacc6af3b 100644 --- a/Matrix_search/doc/Matrix_search/CGAL/Sorted_matrix_search_traits_adaptor.h +++ b/Matrix_search/doc/Matrix_search/CGAL/Sorted_matrix_search_traits_adaptor.h @@ -8,7 +8,7 @@ The class `Sorted_matrix_search_traits_adaptor` can be used as an adaptor to create sorted matrix search traits classes for arbitrary feasibility test and matrix classes `F` resp.\ `M`. -\cgalModels `SortedMatrixSearchTraits` +\cgalModels{SortedMatrixSearchTraits} \tparam M must be a model for `BasicMatrix` \tparam F must define a copy constructor and a monotone `bool operator()( const Value&)`. diff --git a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_criteria_2.h b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_criteria_2.h index 4d465b053f6..fb81215708f 100644 --- a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_criteria_2.h +++ b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_criteria_2.h @@ -20,7 +20,7 @@ so \f$ B=\sqrt{2}\f$ corresponds to \f$ \alpha_{min} \ge 20.7\f$ degrees. \tparam CDT must be a 2D constrained Delaunay triangulation. -\cgalModels `MeshingCriteria_2` +\cgalModels{MeshingCriteria_2} */ diff --git a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_face_base_2.h b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_face_base_2.h index ac28360e188..efebf4bef55 100644 --- a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_face_base_2.h +++ b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_face_base_2.h @@ -22,7 +22,7 @@ be the same as the one used for the Delaunay mesh. derives. It must be a model of the `ConstrainedTriangulationFaceBase_2` concept. -\cgalModels `DelaunayMeshFaceBase_2` +\cgalModels{DelaunayMeshFaceBase_2} */ template< typename Traits, typename Fb > diff --git a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_size_criteria_2.h b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_size_criteria_2.h index 6303b537ef8..17be1408a9c 100644 --- a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_size_criteria_2.h +++ b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_size_criteria_2.h @@ -23,7 +23,7 @@ triangles must be shorter than a bound \f$ S\f$. \tparam CDT must be a 2D constrained Delaunay triangulation. -\cgalModels `MeshingCriteria_2` +\cgalModels{MeshingCriteria_2} */ diff --git a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_vertex_base_2.h b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_vertex_base_2.h index bbaf9ea4418..be7a7e29394 100644 --- a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_vertex_base_2.h +++ b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesh_vertex_base_2.h @@ -17,7 +17,7 @@ be the same as the one used for the Delaunay mesh. \tparam Vb is the base class from which `Delaunay_mesh_vertex_base_2` derives. It must be a model of the `TriangulationVertexBase_2` concept. -\cgalModels `DelaunayMeshVertexBase_2` +\cgalModels{DelaunayMeshVertexBase_2} */ template< typename Traits, typename Vb > diff --git a/Mesh_3/doc/Mesh_3/CGAL/Gray_image_mesh_domain_3.h b/Mesh_3/doc/Mesh_3/CGAL/Gray_image_mesh_domain_3.h index 02428df510e..eec0beb5a54 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Gray_image_mesh_domain_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Gray_image_mesh_domain_3.h @@ -41,7 +41,7 @@ with a model of the concept `BisectionGeometricTraits_3`. input file -\cgalModels `MeshDomain_3` +\cgalModels{MeshDomain_3} \sa `BisectionGeometricTraits_3` \sa `CGAL::make_mesh_3()`. diff --git a/Mesh_3/doc/Mesh_3/CGAL/Implicit_mesh_domain_3.h b/Mesh_3/doc/Mesh_3/CGAL/Implicit_mesh_domain_3.h index e2595b9d6fb..853e8cbec4c 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Implicit_mesh_domain_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Implicit_mesh_domain_3.h @@ -41,7 +41,7 @@ when the query segment is smaller than the error bound. The `error_bound` passed as argument to the domain constructor is a relative error bound expressed as a ratio to the bounding sphere radius. -\cgalModels `MeshDomain_3` +\cgalModels{MeshDomain_3} \sa `BisectionGeometricTraits_3` \sa `CGAL::make_mesh_3()`. diff --git a/Mesh_3/doc/Mesh_3/CGAL/Labeled_image_mesh_domain_3.h b/Mesh_3/doc/Mesh_3/CGAL/Labeled_image_mesh_domain_3.h index 9109b74f182..eba04731f1a 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Labeled_image_mesh_domain_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Labeled_image_mesh_domain_3.h @@ -34,7 +34,7 @@ intersection tests and intersection computations through a bisection method. This parameter must be instantiated with a model of the concept `BisectionGeometricTraits_3`. -\cgalModels `MeshDomain_3` +\cgalModels{MeshDomain_3} An executable that uses `Labeled_image_mesh_domain_3` must be linked with the CGAL_ImageIO library. diff --git a/Mesh_3/doc/Mesh_3/CGAL/Mesh_cell_criteria_3.h b/Mesh_3/doc/Mesh_3/CGAL/Mesh_cell_criteria_3.h index bdba19131c8..3819c65502b 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Mesh_cell_criteria_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Mesh_cell_criteria_3.h @@ -12,7 +12,7 @@ and a sizing field which may be a uniform or variable field. `Triangulation` of the instance used as model of `MeshComplex_3InTriangulation_3`. -\cgalModels `MeshCellCriteria_3` +\cgalModels{MeshCellCriteria_3} \sa `MeshCriteria_3` \sa `CGAL::Mesh_criteria_3` diff --git a/Mesh_3/doc/Mesh_3/CGAL/Mesh_facet_criteria_3.h b/Mesh_3/doc/Mesh_3/CGAL/Mesh_facet_criteria_3.h index bfbd79dfe39..9e3720629dc 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Mesh_facet_criteria_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Mesh_facet_criteria_3.h @@ -14,7 +14,7 @@ for the approximation error criterion. `Triangulation` of the instance used as model of `MeshComplex_3InTriangulation_3`. -\cgalModels `MeshFacetCriteria_3` +\cgalModels{MeshFacetCriteria_3} \sa `CGAL::Mesh_facet_topology` \sa `MeshCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_3.h b/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_3.h index a084e25bfcf..de4489b7cd7 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_3.h @@ -24,7 +24,7 @@ the intersection tests and intersection computations for polyhedral boundary surfaces. This parameter has to be instantiated with a model of the concept `IntersectionGeometricTraits_3`. -\cgalModels `MeshDomain_3` +\cgalModels{MeshDomain_3} \sa `IntersectionGeometricTraits_3` \sa `CGAL::make_mesh_3()`. diff --git a/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_with_features_3.h b/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_with_features_3.h index 8ee1140044c..8951889d690 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_with_features_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Polyhedral_mesh_domain_with_features_3.h @@ -20,7 +20,7 @@ and functors required to implement the intersection tests and intersection compu for polyhedral boundary surfaces. This parameter has to be instantiated with a model of the concept `IntersectionGeometricTraits_3`. -\cgalModels `MeshDomainWithFeatures_3` +\cgalModels{MeshDomainWithFeatures_3} \sa `CGAL::Mesh_domain_with_polyline_features_3` \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Mesh_3/doc/Mesh_3/CGAL/Triangle_accessor_3.h b/Mesh_3/doc/Mesh_3/CGAL/Triangle_accessor_3.h index e72ee14e286..dcdc0175f1d 100644 --- a/Mesh_3/doc/Mesh_3/CGAL/Triangle_accessor_3.h +++ b/Mesh_3/doc/Mesh_3/CGAL/Triangle_accessor_3.h @@ -14,7 +14,7 @@ specialization of this class to handle one's own polyhedron data structure. \tparam K is the geometric traits class. -\cgalModels `TriangleAccessor_3` +\cgalModels{TriangleAccessor_3} \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Mesh_3/include/CGAL/Compact_mesh_cell_base_3.h b/Mesh_3/include/CGAL/Compact_mesh_cell_base_3.h index d30acbcb141..5dad6a137da 100644 --- a/Mesh_3/include/CGAL/Compact_mesh_cell_base_3.h +++ b/Mesh_3/include/CGAL/Compact_mesh_cell_base_3.h @@ -724,7 +724,7 @@ belong. That parameter is only used by the rebind mechanism (see `::TriangulationDSCellBase_3::Rebind_TDS`). Users should always use the default parameter value `void`. -\cgalModels `MeshCellBase_3` +\cgalModels{MeshCellBase_3} \sa `CGAL::Mesh_complex_3_in_triangulation_3` \sa `CGAL::Mesh_cell_base_3` diff --git a/Mesh_3/include/CGAL/Labeled_mesh_domain_3.h b/Mesh_3/include/CGAL/Labeled_mesh_domain_3.h index 50d211ccc1d..bde7c96a2c3 100644 --- a/Mesh_3/include/CGAL/Labeled_mesh_domain_3.h +++ b/Mesh_3/include/CGAL/Labeled_mesh_domain_3.h @@ -338,7 +338,7 @@ if there are several components to mesh. The function type can be any model of the concept `Callable` compatible with the signature `Subdomain_index(const Point_3&)`: it can be a function, a function object, a lambda expression... that takes a `%Point_3` as argument, and returns a type convertible to `Subdomain_index`. -\cgalModels `MeshDomain_3` +\cgalModels{MeshDomain_3} \sa `Implicit_multi_domain_to_labeling_function_wrapper` \sa `CGAL::make_mesh_3()`. diff --git a/Mesh_3/include/CGAL/Mesh_cell_base_3.h b/Mesh_3/include/CGAL/Mesh_cell_base_3.h index b52243fbbc2..947c9a5d4f5 100644 --- a/Mesh_3/include/CGAL/Mesh_cell_base_3.h +++ b/Mesh_3/include/CGAL/Mesh_cell_base_3.h @@ -117,7 +117,7 @@ of the concept `MeshDomain_3`. of the concept `RegularTriangulationCellBaseWithWeightedCircumcenter_3` and defaults to `Regular_triangulation_cell_base_with_weighted_circumcenter_3`. -\cgalModels `MeshCellBase_3` +\cgalModels{MeshCellBase_3} \sa `CGAL::Mesh_complex_3_in_triangulation_3` \sa `CGAL::Compact_mesh_cell_base_3` diff --git a/Mesh_3/include/CGAL/Mesh_constant_domain_field_3.h b/Mesh_3/include/CGAL/Mesh_constant_domain_field_3.h index 68cb73899a8..da317cfc29b 100644 --- a/Mesh_3/include/CGAL/Mesh_constant_domain_field_3.h +++ b/Mesh_3/include/CGAL/Mesh_constant_domain_field_3.h @@ -44,7 +44,7 @@ namespace CGAL { * @tparam Index_ is the type of index of the vertices of the triangulation. * It must match the type `%Index` of the model of `MeshDomain_3` used in the meshing process. * -* @cgalModels `MeshDomainField_3` +* @cgalModels{MeshDomainField_3} */ template class Mesh_constant_domain_field_3 diff --git a/Mesh_3/include/CGAL/Mesh_criteria_3.h b/Mesh_3/include/CGAL/Mesh_criteria_3.h index a6220203a64..96511da5520 100644 --- a/Mesh_3/include/CGAL/Mesh_criteria_3.h +++ b/Mesh_3/include/CGAL/Mesh_criteria_3.h @@ -146,7 +146,7 @@ where `C3T3` is the model of `MeshComplex_3InTriangulation_3` used in the mesh generation process, and `C3T3::Triangulation` its nested triangulation type. -\cgalModels `MeshCriteria_3` and `MeshCriteriaWithFeatures_3` +\cgalModels{MeshCriteria_3,MeshCriteriaWithFeatures_3} \cgalHeading{Example} diff --git a/Mesh_3/include/CGAL/Mesh_domain_with_polyline_features_3.h b/Mesh_3/include/CGAL/Mesh_domain_with_polyline_features_3.h index 00aa58d54cd..4e7ebb4e515 100644 --- a/Mesh_3/include/CGAL/Mesh_domain_with_polyline_features_3.h +++ b/Mesh_3/include/CGAL/Mesh_domain_with_polyline_features_3.h @@ -526,7 +526,7 @@ whose endpoints are the added corners. of the domain which should be extended. It has to be a model of the `MeshDomain_3` concept. -\cgalModels `MeshDomainWithFeatures_3` +\cgalModels{MeshDomainWithFeatures_3} \sa `MeshDomain_3` \sa `MeshPolyline_3` diff --git a/Mesh_3/include/CGAL/Mesh_edge_criteria_3.h b/Mesh_3/include/CGAL/Mesh_edge_criteria_3.h index 8846555dc6b..f85f3a82ec8 100644 --- a/Mesh_3/include/CGAL/Mesh_edge_criteria_3.h +++ b/Mesh_3/include/CGAL/Mesh_edge_criteria_3.h @@ -91,7 +91,7 @@ namespace internal { The function object class `Mesh_edge_criteria_3` is a model of `MeshEdgeCriteria_3`. It provides a bound for the size criterion. -\cgalModels `MeshEdgeCriteria_3` +\cgalModels{MeshEdgeCriteria_3} \sa `MeshCriteria_3` \sa `CGAL::Mesh_criteria_3` diff --git a/Mesh_3/include/CGAL/Mesh_vertex_base_3.h b/Mesh_3/include/CGAL/Mesh_vertex_base_3.h index 1dbfac05a50..2cf97e4bdc1 100644 --- a/Mesh_3/include/CGAL/Mesh_vertex_base_3.h +++ b/Mesh_3/include/CGAL/Mesh_vertex_base_3.h @@ -309,7 +309,7 @@ of the concept `MeshDomain_3`. of the concept `RegularTriangulationVertexBase_3` and defaults to `Regular_triangulation_vertex_base_3`. -\cgalModels `MeshVertexBase_3` +\cgalModels{MeshVertexBase_3} \sa `CGAL::Mesh_complex_3_in_triangulation_3` */ diff --git a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h index ce6de8775be..e56b1cac8fb 100644 --- a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h +++ b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h @@ -91,7 +91,7 @@ the intersection tests and intersection computations for polyhedral boundary surfaces. This parameter has to be instantiated with a model of the concept `IntersectionGeometricTraits_3`. -\cgalModels `MeshDomainWithFeatures_3` +\cgalModels{MeshDomainWithFeatures_3} \sa `IntersectionGeometricTraits_3` \sa `CGAL::make_mesh_3()`. diff --git a/Mesh_3/include/CGAL/Sizing_field_with_aabb_tree.h b/Mesh_3/include/CGAL/Sizing_field_with_aabb_tree.h index b3a0379c989..98876732ded 100644 --- a/Mesh_3/include/CGAL/Sizing_field_with_aabb_tree.h +++ b/Mesh_3/include/CGAL/Sizing_field_with_aabb_tree.h @@ -59,7 +59,7 @@ namespace CGAL { * and derive from `CGAL::Polyhedral_mesh_domain_with_features_3` -* @cgalModels `MeshDomainField_3` +* @cgalModels{MeshDomainField_3} */ template `. -\cgalModels `PolygonConvexDecomposition_2` +\cgalModels{PolygonConvexDecomposition_2} \sa `CGAL::greene_approx_convex_partition_2()` @@ -47,7 +47,7 @@ optimal decomposition. \tparam Container must be a container that can be used for the polygon. It is by default `std::vector`. -\cgalModels `PolygonConvexDecomposition_2` +\cgalModels{PolygonConvexDecomposition_2} \sa `CGAL::approx_convex_partition_2()` @@ -77,7 +77,7 @@ the worst case, where \f$ n\f$ is the size of the input polygon. \tparam Container must be a container that can be used for the polygon. It is by default `std::vector`. -\cgalModels `PolygonConvexDecomposition_2` +\cgalModels{PolygonConvexDecomposition_2} \sa `CGAL::optimal_convex_partition_2()` diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_nop_decomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_nop_decomposition_2.h index b2843d722dc..7bace4bd09d 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_nop_decomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_nop_decomposition_2.h @@ -8,7 +8,7 @@ decomposition of a polygon, which merely passes the input polygon to the list of output convex polygons. It should be used when it is known that the input polygon is convex to start with. -\cgalModels `PolygonConvexDecomposition_2` +\cgalModels{PolygonConvexDecomposition_2} */ template diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_triangulation_decomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_triangulation_decomposition_2.h index 4dd0cf19ca0..a49e176adcf 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_triangulation_decomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_triangulation_decomposition_2.h @@ -8,7 +8,7 @@ decomposition of a polygon or a polygon with holes into triangles using the Delaunay constrained triangulation functionality of the \ref Chapter_2D_Triangulations "2D Triangulation" package. -\cgalModels `PolygonWithHolesConvexDecomposition_2` +\cgalModels{PolygonWithHolesConvexDecomposition_2} */ template diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_vertical_decomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_vertical_decomposition_2.h index 132f04b2963..a04aada1749 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_vertical_decomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Polygon_vertical_decomposition_2.h @@ -12,7 +12,7 @@ The algorithm operates in \f$ O(n \log n)\f$ time and takes \f$ O(n)\f$ space at the worst case, where \f$ n\f$ is the size of the input polygon. -\cgalModels `PolygonWithHolesConvexDecomposition_2` +\cgalModels{PolygonWithHolesConvexDecomposition_2} */ template diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Small_side_angle_bisector_decomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Small_side_angle_bisector_decomposition_2.h index 8688bbd2de9..09cc436f10c 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Small_side_angle_bisector_decomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/CGAL/Small_side_angle_bisector_decomposition_2.h @@ -15,7 +15,7 @@ the angle bisector of the reflex vertex. The algorithm operates in \f$ O(n^2)\f$ time and takes \f$ O(n)\f$ space at the worst case, where \f$ n\f$ is the size of the input polygon. -\cgalModels `PolygonConvexDecomposition_2` +\cgalModels{PolygonConvexDecomposition_2} */ template diff --git a/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h b/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h index 89f0849e800..a02143d5231 100644 --- a/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h +++ b/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h @@ -10,7 +10,7 @@ functionality, such as handles, iterators, and circulators. Specifically, for a `key` value the expression `&*key` must return a unique address. -\cgalModels `UniqueHashFunction` +\cgalModels{UniqueHashFunction} \sa `CGAL::Unique_hash_map` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Modular_traits.h b/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Modular_traits.h index afc8672cc4b..5814ee5e967 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Modular_traits.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Modular_traits.h @@ -7,7 +7,7 @@ namespace CGAL { An instance of `Modular_traits` is a model of `ModularTraits`, where T is the associated type. -\cgalModels `ModularTraits` +\cgalModels{ModularTraits} */ template< typename T > diff --git a/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Residue.h b/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Residue.h index 706830fcc4f..02011c98a2c 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Residue.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/CGAL/Residue.h @@ -43,7 +43,7 @@ penalty. Hence, it may be advisable to configure \cgal with `CGAL_HAS_NO_THREADS`. See Section \ref Preliminaries_thread_safety "Thread Safety" in the preliminaries. -\cgalModels `Field` +\cgalModels{Field} */ diff --git a/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h b/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h index 4bb5cb0eaca..4632460207d 100644 --- a/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h +++ b/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h @@ -8,7 +8,7 @@ The class `Extended_cartesian` serves as a traits class for the class `Nef_polyhedron_2`. It uses a polynomial component representation based on a field number type `FT`. -\cgalModels `ExtendedKernelTraits_2` +\cgalModels{ExtendedKernelTraits_2} \tparam FT must be a model of `FieldNumberType`. diff --git a/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h b/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h index ae3aec7f350..bd26fea58ac 100644 --- a/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h +++ b/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h @@ -8,7 +8,7 @@ The class `Extended_homogeneous` serves as a traits class for the class `Nef_polyhedron_2`. It uses a polynomial component representation based on a Euclidean ring number type `RT`. -\cgalModels `ExtendedKernelTraits_2` +\cgalModels{ExtendedKernelTraits_2} \tparam RT must be a model of `RingNumberType`. diff --git a/Nef_2/doc/Nef_2/CGAL/Filtered_extended_homogeneous.h b/Nef_2/doc/Nef_2/CGAL/Filtered_extended_homogeneous.h index 63e3cda8e22..064f786c8b4 100644 --- a/Nef_2/doc/Nef_2/CGAL/Filtered_extended_homogeneous.h +++ b/Nef_2/doc/Nef_2/CGAL/Filtered_extended_homogeneous.h @@ -8,7 +8,7 @@ The class `Filtered_extended_homogeneous` serves as a traits class for the class `Nef_polyhedron_2`. It uses a polynomial component representation based on a ring number type `RT`. -\cgalModels `ExtendedKernelTraits_2` +\cgalModels{ExtendedKernelTraits_2} \tparam RT must be a model of `RingNumberType`. diff --git a/Number_types/doc/Number_types/CGAL/CORE_BigFloat.h b/Number_types/doc/Number_types/CGAL/CORE_BigFloat.h index 754985917d9..f6a7d5f1576 100644 --- a/Number_types/doc/Number_types/CGAL/CORE_BigFloat.h +++ b/Number_types/doc/Number_types/CGAL/CORE_BigFloat.h @@ -14,9 +14,7 @@ This number type is provided by the \core library \cgalCite{klpy-clp-99}. \cgal defines the necessary functions so that this class complies to the requirements on number types. -\cgalModels `FieldWithKthRoot` -\cgalModels `RealEmbeddable` -\cgalModels `FromDoubleConstructible` +\cgalModels{FieldWithKthRoot,RealEmbeddable,FromDoubleConstructible} */ diff --git a/Number_types/doc/Number_types/CGAL/CORE_BigInt.h b/Number_types/doc/Number_types/CGAL/CORE_BigInt.h index 6e3f81effc1..2fcd05b6b7f 100644 --- a/Number_types/doc/Number_types/CGAL/CORE_BigInt.h +++ b/Number_types/doc/Number_types/CGAL/CORE_BigInt.h @@ -12,8 +12,7 @@ This number type is provided by the \core library \cgalCite{klpy-clp-99}. \cgal defines the necessary functions so that this class complies to the requirements on number types. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} */ diff --git a/Number_types/doc/Number_types/CGAL/CORE_BigRat.h b/Number_types/doc/Number_types/CGAL/CORE_BigRat.h index 672adee91df..12c57a6c30e 100644 --- a/Number_types/doc/Number_types/CGAL/CORE_BigRat.h +++ b/Number_types/doc/Number_types/CGAL/CORE_BigRat.h @@ -10,10 +10,7 @@ This number type is provided by the \core library \cgalCite{klpy-clp-99}. \cgal defines the necessary functions so that this class complies to the requirements on number types. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` -\cgalModels `FromDoubleConstructible` +\cgalModels{Field,RealEmbeddable,Fraction,FromDoubleConstructible} */ diff --git a/Number_types/doc/Number_types/CGAL/CORE_Expr.h b/Number_types/doc/Number_types/CGAL/CORE_Expr.h index ac6805b8914..bbe851d5fc3 100644 --- a/Number_types/doc/Number_types/CGAL/CORE_Expr.h +++ b/Number_types/doc/Number_types/CGAL/CORE_Expr.h @@ -13,9 +13,7 @@ This number type is provided by the \cgal defines the necessary functions so that this class complies to the requirements on number types. -\cgalModels `FieldWithRootOf` -\cgalModels `RealEmbeddable` -\cgalModels `FromDoubleConstructible` +\cgalModels{FieldWithRootOf,RealEmbeddable,FromDoubleConstructible} */ class Expr { diff --git a/Number_types/doc/Number_types/CGAL/Gmpfi.h b/Number_types/doc/Number_types/CGAL/Gmpfi.h index 3b54efc175f..b48623b2212 100644 --- a/Number_types/doc/Number_types/CGAL/Gmpfi.h +++ b/Number_types/doc/Number_types/CGAL/Gmpfi.h @@ -18,8 +18,7 @@ This type is `ImplicitInteroperable` with `Gmpfr`, `Gmpz`, `Gmpq`, long, unsigned long, int, double and long double. -\cgalModels `FieldWithKthRoot` -\cgalModels `RealEmbeddable` +\cgalModels{FieldWithKthRoot,RealEmbeddable} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/Gmpfr.h b/Number_types/doc/Number_types/CGAL/Gmpfr.h index c664a209f0f..78ee816943f 100644 --- a/Number_types/doc/Number_types/CGAL/Gmpfr.h +++ b/Number_types/doc/Number_types/CGAL/Gmpfr.h @@ -23,8 +23,7 @@ used is `std::float_round_style`. This type is `ImplicitInteroperable` with `Gmpz`, long, unsigned long, int, double and long double. -\cgalModels `FieldWithKthRoot` -\cgalModels `RealEmbeddable` +\cgalModels{FieldWithKthRoot,RealEmbeddable} \cgalHeading{Comparisons} diff --git a/Number_types/doc/Number_types/CGAL/Gmpq.h b/Number_types/doc/Number_types/CGAL/Gmpq.h index c399e69e83d..f885758460f 100644 --- a/Number_types/doc/Number_types/CGAL/Gmpq.h +++ b/Number_types/doc/Number_types/CGAL/Gmpq.h @@ -7,9 +7,7 @@ namespace CGAL { An object of the class `Gmpq` is an arbitrary precision rational number based on the \gmp library. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` +\cgalModels{Field,RealEmbeddable,Fraction} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/Gmpz.h b/Number_types/doc/Number_types/CGAL/Gmpz.h index 2eb6873a837..b110329d7d3 100644 --- a/Number_types/doc/Number_types/CGAL/Gmpz.h +++ b/Number_types/doc/Number_types/CGAL/Gmpz.h @@ -7,8 +7,7 @@ namespace CGAL { An object of the class `Gmpz` is an arbitrary precision integer based on the \gmp Library. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/Gmpzf.h b/Number_types/doc/Number_types/CGAL/Gmpzf.h index fd0e02c8710..876bd37069f 100644 --- a/Number_types/doc/Number_types/CGAL/Gmpzf.h +++ b/Number_types/doc/Number_types/CGAL/Gmpzf.h @@ -11,8 +11,7 @@ is of type `long`. This type can be considered exact, even if the exponent is not a multiple-precision number. This number type offers functionality very similar to `MP_Float` but is generally faster. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/Interval_nt.h b/Number_types/doc/Number_types/CGAL/Interval_nt.h index 97c5dd7a45c..89dad6cced3 100644 --- a/Number_types/doc/Number_types/CGAL/Interval_nt.h +++ b/Number_types/doc/Number_types/CGAL/Interval_nt.h @@ -46,8 +46,7 @@ take care about setting the rounding mode towards plus infinity before doing any computations with the interval class. He can do so using the `Protect_FPU_rounding` class for example. -\cgalModels `FieldWithSqrt` -\cgalModels `RealEmbeddable` +\cgalModels{FieldWithSqrt,RealEmbeddable} \cgalHeading{Example} diff --git a/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h b/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h index 03b0097a903..8d225da3b08 100644 --- a/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h +++ b/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h @@ -26,9 +26,8 @@ least model of concept `IntegralDomainWithoutDivision`. Note that some filtering mechanism is available at the predicate level using `Filtered_predicate` and `Filtered_kernel`. -\cgalModels `IntegralDomainWithoutDivision` same as `NT` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction`, if `NT` is a `Fraction` +\cgalModels{IntegralDomainWithoutDivision same as `NT`,RealEmbeddable, + Fraction, if `NT` is a `Fraction`} \cgalHeading{Example} diff --git a/Number_types/doc/Number_types/CGAL/MP_Float.h b/Number_types/doc/Number_types/CGAL/MP_Float.h index c5fd2d19939..6f3b097d71b 100644 --- a/Number_types/doc/Number_types/CGAL/MP_Float.h +++ b/Number_types/doc/Number_types/CGAL/MP_Float.h @@ -18,8 +18,7 @@ limited by the available memory, the exponent is currently represented by a (integral valued) `double`, which can overflow in some circumstances. We plan to also have a multiprecision exponent to fix this issue. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/Mpzf.h b/Number_types/doc/Number_types/CGAL/Mpzf.h index 6844b33bdac..0de6ce167cd 100644 --- a/Number_types/doc/Number_types/CGAL/Mpzf.h +++ b/Number_types/doc/Number_types/CGAL/Mpzf.h @@ -14,8 +14,7 @@ normalized finite floating point number represents exactly that number. This number type offers functionality very similar to `MP_Float` and `Gmpzf` but is faster. -\cgalModels `IntegralDomainWithoutDivision` -\cgalModels `RealEmbeddable` +\cgalModels{IntegralDomainWithoutDivision,RealEmbeddable} \cgalHeading{Implementation} diff --git a/Number_types/doc/Number_types/CGAL/NT_converter.h b/Number_types/doc/Number_types/CGAL/NT_converter.h index 874d6b7f78f..d0d649f6df3 100644 --- a/Number_types/doc/Number_types/CGAL/NT_converter.h +++ b/Number_types/doc/Number_types/CGAL/NT_converter.h @@ -5,7 +5,7 @@ namespace CGAL { A number type converter usable as default, for `Cartesian_converter` and `Homogeneous_converter`. -\cgalModels `AdaptableFunctor` +\cgalModels{AdaptableFunctor} */ template < class NT1, class NT2 > diff --git a/Number_types/doc/Number_types/CGAL/Number_type_checker.h b/Number_types/doc/Number_types/CGAL/Number_type_checker.h index 06002e878de..b28eb4db292 100644 --- a/Number_types/doc/Number_types/CGAL/Number_type_checker.h +++ b/Number_types/doc/Number_types/CGAL/Number_type_checker.h @@ -19,8 +19,7 @@ as first argument, and `NT2` as second. The `Comparator` parameter has a default value which is a functor calling `operator==` between the two arguments. -\cgalModels `IntegralDomainWithoutDivision` (same as `NT1`) -\cgalModels `RealEmbeddable` +\cgalModels{IntegralDomainWithoutDivision (same as `NT1`),RealEmbeddable} \cgalHeading{Operations} diff --git a/Number_types/doc/Number_types/CGAL/Quotient.h b/Number_types/doc/Number_types/CGAL/Quotient.h index f24d5b3b7d5..f32d724806f 100644 --- a/Number_types/doc/Number_types/CGAL/Quotient.h +++ b/Number_types/doc/Number_types/CGAL/Quotient.h @@ -15,9 +15,7 @@ A `Quotient` `q` is represented as a pair of \tparam NT must be at least model of concept `IntegralDomainWithoutDivision` and a model of concept `RealEmbeddable`. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` +\cgalModels{Field,RealEmbeddable,Fraction} \cgalHeading{Operations} diff --git a/Number_types/doc/Number_types/CGAL/Sqrt_extension.h b/Number_types/doc/Number_types/CGAL/Sqrt_extension.h index a52f55780dc..494da54aa4b 100644 --- a/Number_types/doc/Number_types/CGAL/Sqrt_extension.h +++ b/Number_types/doc/Number_types/CGAL/Sqrt_extension.h @@ -87,14 +87,14 @@ The fourth template argument, `FilterPredicates`, triggers an internal filter th In case `NT` is not `RealEmbeddable`, `DifferentExtensionComparable` as well as `FilterPredicates` have no effect. -\cgalModels `Assignable` -\cgalModels `CopyConstructible` -\cgalModels `DefaultConstructible` -\cgalModels `EqualityComparable` -\cgalModels `ImplicitInteroperable` with `int` -\cgalModels `ImplicitInteroperable` with `NT` -\cgalModels `Fraction` if NT is a `Fraction` -\cgalModels `RootOf_2` +\cgalModelsBare{`Assignable`\n + `CopyConstructible`\n + `DefaultConstructible`\n + `EqualityComparable`\n + `ImplicitInteroperable` with `int`\n + `ImplicitInteroperable` with `NT`\n + `Fraction` if NT is a `Fraction`\n + `RootOf_2`} \sa `IntegralDomainWithoutDivision` \sa `IntegralDomain` diff --git a/Number_types/doc/Number_types/CGAL/double.h b/Number_types/doc/Number_types/CGAL/double.h index c38a596c0cc..5c48d4332c8 100644 --- a/Number_types/doc/Number_types/CGAL/double.h +++ b/Number_types/doc/Number_types/CGAL/double.h @@ -7,8 +7,7 @@ type `double` is a model of the concepts `RealEmbeddable` and `Field`. Due to rounding errors and overflow `double` is considered as not exact. -\cgalModels `FieldWithSqrt` -\cgalModels `RealEmbeddable` +\cgalModels{FieldWithSqrt,RealEmbeddable} */ diff --git a/Number_types/doc/Number_types/CGAL/float.h b/Number_types/doc/Number_types/CGAL/float.h index 26028a3a46e..84f782c4d82 100644 --- a/Number_types/doc/Number_types/CGAL/float.h +++ b/Number_types/doc/Number_types/CGAL/float.h @@ -9,8 +9,7 @@ This header provides all necessary functions so the fundamental type `FieldWithSqrt`. Due to rounding errors and overflow `float` is considered as not exact. -\cgalModels `FieldWithSqrt` -\cgalModels `RealEmbeddable` +\cgalModels{FieldWithSqrt,RealEmbeddable} */ diff --git a/Number_types/doc/Number_types/CGAL/gmpxx.h b/Number_types/doc/Number_types/CGAL/gmpxx.h index 4d93317f45d..b6c19f42328 100644 --- a/Number_types/doc/Number_types/CGAL/gmpxx.h +++ b/Number_types/doc/Number_types/CGAL/gmpxx.h @@ -9,9 +9,7 @@ provided by \gmp. CGAL provides the necessary functions to make it compliant to the number type concept. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` +\cgalModels{Field,RealEmbeddable,Fraction} See the \gmp documentation for additional details. @@ -31,8 +29,7 @@ provided by \gmp. CGAL provides the necessary functions to make it compliant to the number type concept. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} See the \gmp documentation for additional details. diff --git a/Number_types/doc/Number_types/CGAL/leda_bigfloat.h b/Number_types/doc/Number_types/CGAL/leda_bigfloat.h index 41c8e6b5425..8fbca4b8517 100644 --- a/Number_types/doc/Number_types/CGAL/leda_bigfloat.h +++ b/Number_types/doc/Number_types/CGAL/leda_bigfloat.h @@ -12,9 +12,7 @@ Rounding mode and precision (i.e.\ mantissa length) of For more details on the number types of \leda we refer to the \leda manual \cgalCite{cgal:as-lum}. -\cgalModels `FieldWithKthRoot` -\cgalModels `RealEmbeddable` -\cgalModels `FromDoubleConstructible` +\cgalModels{FieldWithKthRoot,RealEmbeddable,FromDoubleConstructible} */ diff --git a/Number_types/doc/Number_types/CGAL/leda_integer.h b/Number_types/doc/Number_types/CGAL/leda_integer.h index f0f5de4602c..ad7009c6fd2 100644 --- a/Number_types/doc/Number_types/CGAL/leda_integer.h +++ b/Number_types/doc/Number_types/CGAL/leda_integer.h @@ -8,8 +8,7 @@ The class `leda_integer` is a wrapper class that provides the functions needed to use the number type `leda::integer`, representing exact multiprecision integers provided by \leda. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} For more details on the number types of \leda we refer to the \leda manual \cgalCite{cgal:as-lum}. diff --git a/Number_types/doc/Number_types/CGAL/leda_rational.h b/Number_types/doc/Number_types/CGAL/leda_rational.h index 7c2add08b97..8cfc60ea942 100644 --- a/Number_types/doc/Number_types/CGAL/leda_rational.h +++ b/Number_types/doc/Number_types/CGAL/leda_rational.h @@ -7,10 +7,7 @@ The class `leda_rational` is a wrapper class that provides the functions needed to use the number type `rational`, representing exact multiprecision rational numbers provided by \leda. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` -\cgalModels `FromDoubleConstructible` +\cgalModels{Field,RealEmbeddable,Fraction,FromDoubleConstructible} For more details on the number types of \leda we refer to the \leda manual \cgalCite{cgal:as-lum}. */ diff --git a/Number_types/doc/Number_types/CGAL/leda_real.h b/Number_types/doc/Number_types/CGAL/leda_real.h index f13dfa7aa72..131ba0839e6 100644 --- a/Number_types/doc/Number_types/CGAL/leda_real.h +++ b/Number_types/doc/Number_types/CGAL/leda_real.h @@ -12,9 +12,7 @@ numbers that contains integers, and which is closed by the operations Operations and comparisons between objects of this type are guaranteed to be exact. -\cgalModels `FieldWithRootOf` -\cgalModels `RealEmbeddable` -\cgalModels `FromDoubleConstructible` +\cgalModels{FieldWithRootOf,RealEmbeddable,FromDoubleConstructible} For more details on the number types of \leda we refer to the \leda manual \cgalCite{cgal:as-lum}. diff --git a/Number_types/doc/Number_types/CGAL/long_long.h b/Number_types/doc/Number_types/CGAL/long_long.h index 750c18fdfa9..be91260dc59 100644 --- a/Number_types/doc/Number_types/CGAL/long_long.h +++ b/Number_types/doc/Number_types/CGAL/long_long.h @@ -5,5 +5,4 @@ /// type `long long int` is an `RealEmbeddable` `EuclideanRing`. Due /// to overflow `long long int` is considered as not exact. /// -/// \cgalModels `EuclideanRing` -/// \cgalModels `RealEmbeddable` +/// \cgalModels{EuclideanRing,cgalModels RealEmbeddable} diff --git a/Number_types/doc/Number_types/CGAL/utils_classes.h b/Number_types/doc/Number_types/CGAL/utils_classes.h index 0e6ef4fc72c..ac0a83c6191 100644 --- a/Number_types/doc/Number_types/CGAL/utils_classes.h +++ b/Number_types/doc/Number_types/CGAL/utils_classes.h @@ -11,7 +11,7 @@ For example, an expression like `NT(0)/NT(0)` can result in an invalid number. Routines may have as a precondition that all values are valid. -\cgalModels `AdaptableFunctor` +\cgalModels{AdaptableFunctor} */ template< typename T > @@ -43,7 +43,7 @@ The default value for `Less` is `std::less`. Note that `T` must be a model of `LessThanComparable` in case `std::less` is used. -\cgalModels `AdaptableFunctor` +\cgalModels{AdaptableFunctor} */ template< typename T, typename Less > @@ -90,7 +90,7 @@ The default value for `Less` is `std::less`. Note that `T` must be a model of `LessThanComparable` in case `std::less` is used. -\cgalModels `AdaptableFunctor` +\cgalModels{AdaptableFunctor} */ template< typename T, typename Less > diff --git a/Number_types/include/CGAL/Exact_algebraic.h b/Number_types/include/CGAL/Exact_algebraic.h index 4abdf596784..8a911b0b102 100644 --- a/Number_types/include/CGAL/Exact_algebraic.h +++ b/Number_types/include/CGAL/Exact_algebraic.h @@ -37,10 +37,7 @@ It is a typedef of another number type. Its exact definition depends on the availability the third-party libraries \core, and \leda. \cgal must be configured with at least one of those libraries. -\cgalModels `FieldWithSqrt` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` -\cgalModels `FromDoubleConstructible` +\cgalModels{FieldWithSqrt,RealEmbeddable,Fraction,FromDoubleConstructible} */ #if DOXYGEN_RUNNING diff --git a/Number_types/include/CGAL/Exact_integer.h b/Number_types/include/CGAL/Exact_integer.h index 3ba3fb9816a..614045bbbae 100644 --- a/Number_types/include/CGAL/Exact_integer.h +++ b/Number_types/include/CGAL/Exact_integer.h @@ -30,8 +30,7 @@ It is a typedef of another number type. Its exact definition depends on the availability the third-party libraries \gmp, \core, and \leda. \cgal must be configured with at least one of those libraries. -\cgalModels `EuclideanRing` -\cgalModels `RealEmbeddable` +\cgalModels{EuclideanRing,RealEmbeddable} */ #if DOXYGEN_RUNNING diff --git a/Number_types/include/CGAL/Exact_rational.h b/Number_types/include/CGAL/Exact_rational.h index f07c61d42a9..903b64b6518 100644 --- a/Number_types/include/CGAL/Exact_rational.h +++ b/Number_types/include/CGAL/Exact_rational.h @@ -30,10 +30,7 @@ It is a typedef of another number type. Its exact definition depends on the availability the third-party libraries \gmp, \core, and \leda. \cgal must be configured with at least one of those libraries. -\cgalModels `Field` -\cgalModels `RealEmbeddable` -\cgalModels `Fraction` -\cgalModels `FromDoubleConstructible` +\cgalModels{Field,RealEmbeddable,Fraction,FromDoubleConstructible} */ #if DOXYGEN_RUNNING diff --git a/Optimal_bounding_box/include/CGAL/Optimal_bounding_box/Oriented_bounding_box_traits_3.h b/Optimal_bounding_box/include/CGAL/Optimal_bounding_box/Oriented_bounding_box_traits_3.h index 01cd1df588c..4ce23d3d00e 100644 --- a/Optimal_bounding_box/include/CGAL/Optimal_bounding_box/Oriented_bounding_box_traits_3.h +++ b/Optimal_bounding_box/include/CGAL/Optimal_bounding_box/Oriented_bounding_box_traits_3.h @@ -36,7 +36,7 @@ namespace CGAL { /// /// \tparam K must be a model of `Kernel` /// -/// \cgalModels `OrientedBoundingBoxTraits_3` +/// \cgalModels{OrientedBoundingBoxTraits_3} /// template class Oriented_bounding_box_traits_3 diff --git a/Orthtree/include/CGAL/Orthtree/Node.h b/Orthtree/include/CGAL/Orthtree/Node.h index a16d2fff192..777066a295d 100644 --- a/Orthtree/include/CGAL/Orthtree/Node.h +++ b/Orthtree/include/CGAL/Orthtree/Node.h @@ -77,7 +77,7 @@ struct Node_access A `Node` is a lightweight object and thus generally passed by copy. It is also a model of `ConstRange` with value type `Traits::Point_d`. - \cgalModels `ConstRange` + \cgalModels{ConstRange} */ template class Orthtree::Node diff --git a/Orthtree/include/CGAL/Orthtree/Traversals.h b/Orthtree/include/CGAL/Orthtree/Traversals.h index 885af4f9b4d..1ab9b77ccea 100644 --- a/Orthtree/include/CGAL/Orthtree/Traversals.h +++ b/Orthtree/include/CGAL/Orthtree/Traversals.h @@ -123,7 +123,7 @@ Node first_child_at_depth(Node n, std::size_t depth) { A preorder traversal starts from the root towards the leaves. - \cgalModels `OrthtreeTraversal` + \cgalModels{OrthtreeTraversal} */ struct Preorder_traversal { @@ -156,7 +156,7 @@ struct Preorder_traversal { A postorder traversal starts from the leaves towards the root. - \cgalModels `OrthtreeTraversal` + \cgalModels{OrthtreeTraversal} */ struct Postorder_traversal { @@ -184,7 +184,7 @@ struct Postorder_traversal { All non-leave nodes are ignored. - \cgalModels `OrthtreeTraversal` + \cgalModels{OrthtreeTraversal} */ struct Leaves_traversal { @@ -213,7 +213,7 @@ struct Leaves_traversal { All trees at another depth are ignored. If the selected depth is higher than the maximum depth of the orthtree, no node will be traversed. - \cgalModels `OrthtreeTraversal` + \cgalModels{OrthtreeTraversal} */ struct Level_traversal { diff --git a/Orthtree/include/CGAL/Orthtree_traits_2.h b/Orthtree/include/CGAL/Orthtree_traits_2.h index 0ef87d2ce6e..b849ae450f5 100644 --- a/Orthtree/include/CGAL/Orthtree_traits_2.h +++ b/Orthtree/include/CGAL/Orthtree_traits_2.h @@ -28,7 +28,7 @@ namespace CGAL \tparam GeomTraits model of `Kernel`. - \cgalModels `OrthtreeTraits` + \cgalModels{OrthtreeTraits} \sa `CGAL::Quadtree` \sa `CGAL::Orthtree_traits_3` \sa `CGAL::Orthtree_traits_d` diff --git a/Orthtree/include/CGAL/Orthtree_traits_3.h b/Orthtree/include/CGAL/Orthtree_traits_3.h index 7cfb0723b27..c50028fb8f2 100644 --- a/Orthtree/include/CGAL/Orthtree_traits_3.h +++ b/Orthtree/include/CGAL/Orthtree_traits_3.h @@ -28,7 +28,7 @@ namespace CGAL \tparam GeomTraits model of `Kernel`. - \cgalModels `OrthtreeTraits` + \cgalModels{OrthtreeTraits} \sa `CGAL::Octree` \sa `CGAL::Orthtree_traits_2` \sa `CGAL::Orthtree_traits_d` diff --git a/Orthtree/include/CGAL/Orthtree_traits_d.h b/Orthtree/include/CGAL/Orthtree_traits_d.h index 5415487afed..4f48caba07f 100644 --- a/Orthtree/include/CGAL/Orthtree_traits_d.h +++ b/Orthtree/include/CGAL/Orthtree_traits_d.h @@ -28,7 +28,7 @@ namespace CGAL \tparam GeomTraits model of `Kernel`. \tparam DimensionTag specialization of `CGAL::Dimension_tag`. - \cgalModels `OrthtreeTraits` + \cgalModels{OrthtreeTraits} \sa `CGAL::Orthtree` \sa `CGAL::Orthtree_traits_2` \sa `CGAL::Orthtree_traits_3` diff --git a/Partition_2/doc/Partition_2/CGAL/Partition_is_valid_traits_2.h b/Partition_2/doc/Partition_2/CGAL/Partition_is_valid_traits_2.h index 9bf0e53abf0..d08e20e0a0a 100644 --- a/Partition_2/doc/Partition_2/CGAL/Partition_is_valid_traits_2.h +++ b/Partition_2/doc/Partition_2/CGAL/Partition_is_valid_traits_2.h @@ -7,7 +7,7 @@ Class that derives a traits class for `partition_is_valid_2()` from a given traits class by defining the validity testing function object in terms of a supplied template parameter. -\cgalModels `PartitionIsValidTraits_2` +\cgalModels{PartitionIsValidTraits_2} \sa `CGAL::Is_convex_2` \sa `CGAL::Is_vacuously_valid` diff --git a/Partition_2/doc/Partition_2/CGAL/Partition_traits_2.h b/Partition_2/doc/Partition_2/CGAL/Partition_traits_2.h index 5fe96c19873..577eccd5d4f 100644 --- a/Partition_2/doc/Partition_2/CGAL/Partition_traits_2.h +++ b/Partition_2/doc/Partition_2/CGAL/Partition_traits_2.h @@ -10,11 +10,7 @@ Traits class that can be used with all the \tparam R a representation class \tparam PointPropertyMap a property map that maps to points of type `R::Point_2` -\cgalModels `ConvexPartitionIsValidTraits_2` -\cgalModels `IsYMonotoneTraits_2` -\cgalModels `OptimalConvexPartitionTraits_2` -\cgalModels `PartitionTraits_2` -\cgalModels `YMonotonePartitionIsValidTraits_2` +\cgalModels{ConvexPartitionIsValidTraits_2,IsYMonotoneTraits_2,OptimalConvexPartitionTraits_2,PartitionTraits_2,YMonotonePartitionIsValidTraits_2} \sa `CGAL::approx_convex_partition_2()` \sa `CGAL::convex_partition_is_valid_2()` diff --git a/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h b/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h index 4cd55a93376..7ac8543cb2e 100644 --- a/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h +++ b/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h @@ -6,7 +6,7 @@ namespace CGAL { Function object class for testing if a sequence of points represents a convex polygon or not. -\cgalModels `PolygonIsValid` +\cgalModels{PolygonIsValid} \sa `CGAL::convex_partition_is_valid_2()` \sa `CGAL::Partition_is_valid_traits_2` @@ -55,7 +55,7 @@ namespace CGAL { Function object class that indicates all sequences of points are valid. -\cgalModels `PolygonIsValid` +\cgalModels{PolygonIsValid} \sa `CGAL::partition_is_valid_2()` \sa `CGAL::Partition_is_valid_traits_2` @@ -103,7 +103,7 @@ namespace CGAL { Function object class that tests whether a sequence of points represents a \f$ y\f$-monotone polygon or not. -\cgalModels `PolygonIsValid` +\cgalModels{PolygonIsValid} \sa `CGAL::convex_partition_is_valid_2()` \sa `CGAL::Partition_is_valid_traits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_Delaunay_triangulation_traits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_Delaunay_triangulation_traits_2.h index 0f72f4c2b15..30a16b19ab8 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_Delaunay_triangulation_traits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_Delaunay_triangulation_traits_2.h @@ -21,7 +21,7 @@ predicates. This holds implicitly for `CGAL::Exact_predicates_inexact_constructions_kernel`, as it is an instantiation of `CGAL::Filtered_kernel`. -\cgalModels `::Periodic_2DelaunayTriangulationTraits_2` +\cgalModels{::Periodic_2DelaunayTriangulationTraits_2} */ template< typename Traits, typename Periodic_2Offset_2 > class Periodic_2_Delaunay_triangulation_traits_2 diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_2.h index af9757a095f..2b5c9f6c097 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_2.h @@ -210,7 +210,7 @@ public: The vertices and faces of the triangulations are accessed through `handles`, `iterators` and `circulators`. The handles are %CGAL - \ref models "models" of + models of the concept `Handle` which basically offers the two dereference operators and `->`. The iterators and circulators are all bidirectional and non-mutable. The circulators and iterators are diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_face_base_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_face_base_2.h index 2f2cc601cf1..5674d7086f5 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_face_base_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_face_base_2.h @@ -29,7 +29,7 @@ the offset corresponding to vertex \f$ i\f$. The implementation of `has_zero_offsets()` results in checking whether all offsets are zero. -\cgalModels `::Periodic_2TriangulationFaceBase_2` +\cgalModels{::Periodic_2TriangulationFaceBase_2} \sa `CGAL::Triangulation_face_base_2` \sa `CGAL::Triangulation_face_base_with_info_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_traits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_traits_2.h index e14eab6d490..b0bbb524f12 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_traits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_traits_2.h @@ -20,7 +20,7 @@ will be used if the flag `Traits::Has_static_filters` exists and is `true`. By default, this holds for `CGAL::Exact_predicates_inexact_constructions_kernel` and `CGAL::Exact_predicates_exact_constructions_kernel`. -\cgalModels `Periodic_2TriangulationTraits_2` +\cgalModels{Periodic_2TriangulationTraits_2} */ template< typename Traits, typename Periodic_2Offset_2 > diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_vertex_base_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_vertex_base_2.h index 6ead6620b64..961222f0561 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_vertex_base_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/CGAL/Periodic_2_triangulation_vertex_base_2.h @@ -19,7 +19,7 @@ class to which the additional information for the periodic vertex is added and should be a model of `TriangulationDSVertexBase_2` -\cgalModels `Periodic_2TriangulationVertexBase_2` +\cgalModels{Periodic_2TriangulationVertexBase_2} \sa `CGAL::Periodic_2_triangulation_face_base_2` \sa `CGAL::Triangulation_vertex_base_2` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_traits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_traits_3.h index d5c6de09876..c13dbfc5ee9 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_traits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_traits_3.h @@ -16,7 +16,7 @@ will be used if the flag `Traits::Has_static_filters` exists and is `true`. By default, this holds for `CGAL::Exact_predicates_inexact_constructions_kernel` and `CGAL::Exact_predicates_exact_constructions_kernel`. -\cgalModels `Periodic_3DelaunayTriangulationTraits_3` +\cgalModels{Periodic_3DelaunayTriangulationTraits_3} */ template< typename Traits, typename Offset > class Periodic_3_Delaunay_triangulation_traits_3 diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_offset_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_offset_3.h index 87f1a0c5552..da581a53cef 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_offset_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_offset_3.h @@ -7,7 +7,7 @@ namespace CGAL { The class `Periodic_3_offset_3` is a model of the concept `Periodic_3Offset_3`. -\cgalModels `Periodic_3Offset_3` +\cgalModels{Periodic_3Offset_3} */ diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_regular_triangulation_traits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_regular_triangulation_traits_3.h index acfe43f7c32..0802beeee19 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_regular_triangulation_traits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_regular_triangulation_traits_3.h @@ -15,7 +15,7 @@ and is `true`), this class automatically provides filtered predicates. By default, this holds for `CGAL::Exact_predicates_inexact_constructions_kernel` and `CGAL::Exact_predicates_exact_constructions_kernel`. -\cgalModels `Periodic_3RegularTriangulationTraits_3` +\cgalModels{Periodic_3RegularTriangulationTraits_3} */ template< typename Traits, typename Offset > class Periodic_3_regular_triangulation_traits_3 : diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_cell_base_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_cell_base_3.h index efb25f6c201..58e3e90e2e3 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_cell_base_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_cell_base_3.h @@ -9,7 +9,7 @@ the concept `Periodic_3TriangulationDSCellBase_3` to be used by `Triangulation_data_structure_3` to represent cells of a periodic triangulation. -\cgalModels `Periodic_3TriangulationDSCellBase_3` +\cgalModels{Periodic_3TriangulationDSCellBase_3} \sa `CGAL::Periodic_3_triangulation_ds_vertex_base_3` \sa `CGAL::Triangulation_cell_base_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_vertex_base_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_vertex_base_3.h index a712381ffda..92c3fc05704 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_vertex_base_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_ds_vertex_base_3.h @@ -9,7 +9,7 @@ of the concept `Periodic_3TriangulationDSVertexBase_3` to be used by `Triangulation_data_structure_3` to represent vertices of a periodic triangulation. -\cgalModels `Periodic_3TriangulationDSVertexBase_3` +\cgalModels{Periodic_3TriangulationDSVertexBase_3} \sa `CGAL::Periodic_3_triangulation_ds_cell_base_3` \sa `CGAL::Triangulation_vertex_base_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_traits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_traits_3.h index 815940b5911..5c62f819857 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_traits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_traits_3.h @@ -16,7 +16,7 @@ will be used if the flag `Traits::Has_static_filters` exists and is `true`. By default, this holds for `CGAL::Exact_predicates_inexact_constructions_kernel` and `CGAL::Exact_predicates_exact_constructions_kernel`. -\cgalModels `Periodic_3TriangulationTraits_3` +\cgalModels{Periodic_3TriangulationTraits_3} */ template< typename Traits, typename Offset > class Periodic_3_triangulation_traits_3 : public Traits { diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h index 4f15616d8fe..489d75ef26f 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h @@ -10,7 +10,7 @@ namespace CGAL The class `Periodic_4_hyperbolic_Delaunay_triangulation_traits_2` is the default traits class for the class `Periodic_4_hyperbolic_Delaunay_triangulation_2`. -\cgalModels `Periodic_4HyperbolicDelaunayTriangulationTraits_2` +\cgalModels{Periodic_4HyperbolicDelaunayTriangulationTraits_2} \sa `Periodic_4_hyperbolic_Delaunay_triangulation_2` */ diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_face_base_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_face_base_2.h index c21e673c91c..3ddf15a4a75 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_face_base_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_face_base_2.h @@ -21,7 +21,7 @@ concept `Periodic_4HyperbolicTriangulationFaceBase_2`. It accepts two template p data structure of a periodic hyperbolic triangulation, or used as a base class to derive other base vertex classes tuned for specific applications. -\cgalModels `Periodic_4HyperbolicTriangulationFaceBase_2` +\cgalModels{Periodic_4HyperbolicTriangulationFaceBase_2} \sa `Periodic_4_hyperbolic_triangulation_vertex_base_2` */ diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_vertex_base_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_vertex_base_2.h index 9d2804d744f..44ddebfe575 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_vertex_base_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/CGAL/Periodic_4_hyperbolic_triangulation_vertex_base_2.h @@ -21,7 +21,7 @@ concept `Periodic_4HyperbolicTriangulationVertexBase_2`. It accepts two template data structure of a periodic hyperbolic triangulation, or used as a base class to derive other base vertex classes tuned for specific applications. -\cgalModels `Periodic_4HyperbolicTriangulationVertexBase_2` +\cgalModels{Periodic_4HyperbolicTriangulationVertexBase_2} \sa `Periodic_4_hyperbolic_triangulation_face_base_2` */ diff --git a/Point_set_3/include/CGAL/Point_set_3.h b/Point_set_3/include/CGAL/Point_set_3.h index 70cd87aee04..62ef14a946f 100644 --- a/Point_set_3/include/CGAL/Point_set_3.h +++ b/Point_set_3/include/CGAL/Point_set_3.h @@ -114,7 +114,7 @@ namespace internal { \tparam Point Point type \tparam Vector Normal vector type - \cgalModels `Range` + \cgalModels{Range} */ template diff --git a/Poisson_surface_reconstruction_3/include/CGAL/Poisson_reconstruction_function.h b/Poisson_surface_reconstruction_3/include/CGAL/Poisson_reconstruction_function.h index 9c2c5885fec..68c71a27151 100644 --- a/Poisson_surface_reconstruction_3/include/CGAL/Poisson_reconstruction_function.h +++ b/Poisson_surface_reconstruction_3/include/CGAL/Poisson_reconstruction_function.h @@ -145,7 +145,7 @@ Delaunay triangulation instead of an adaptive octree. \tparam Gt Geometric traits class. -\cgalModels `ImplicitFunction` +\cgalModels{ImplicitFunction} */ template diff --git a/Polygon/include/CGAL/General_polygon_with_holes_2.h b/Polygon/include/CGAL/General_polygon_with_holes_2.h index ae37e05eba9..42173fc2ad6 100644 --- a/Polygon/include/CGAL/General_polygon_with_holes_2.h +++ b/Polygon/include/CGAL/General_polygon_with_holes_2.h @@ -34,7 +34,7 @@ namespace CGAL { * * \tparam Polygon_ must have input and output operators. * - * \cgalModels `GeneralPolygonWithHoles_2` + * \cgalModels{GeneralPolygonWithHoles_2} */ template class General_polygon_with_holes_2 { diff --git a/Polygon/include/CGAL/Polygon_with_holes_2.h b/Polygon/include/CGAL/Polygon_with_holes_2.h index 3e4eb83c0a9..e41104c943a 100644 --- a/Polygon/include/CGAL/Polygon_with_holes_2.h +++ b/Polygon/include/CGAL/Polygon_with_holes_2.h @@ -33,7 +33,7 @@ types (`Kernel` and `Container`) that are used to instantiate the type `Polygon_2`. The latter is used to represents the outer boundary and the boundary of the holes (if any exist). -\cgalModels `GeneralPolygonWithHoles_2` +\cgalModels{GeneralPolygonWithHoles_2} */ template ` \sa `CGAL::Polyhedron_min_items_3` diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_min_items_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_min_items_3.h index d568e954d92..37febfd3ac0 100644 --- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_min_items_3.h +++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_min_items_3.h @@ -11,7 +11,7 @@ must provide the respective type for the point. Vertices and facets both do not contain a halfedge handle to an incident halfedge. -\cgalModels `PolyhedronItems_3` +\cgalModels{PolyhedronItems_3} \sa `CGAL::Polyhedron_3` \sa `CGAL::Polyhedron_items_3` diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h index e1d67569768..f7e7442bdd5 100644 --- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h +++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h @@ -10,7 +10,7 @@ in the polyhedral surface data structure `Polyhedron_3` in terms of the \cgal `Kernel`. It keeps a local copy of the kernel which makes it suitable for kernels with local state. -\cgalModels `PolyhedronTraits_3` +\cgalModels{PolyhedronTraits_3} \sa `CGAL::Polyhedron_traits_with_normals_3` diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h index a049527067f..98954d5ca2d 100644 --- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h +++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h @@ -12,7 +12,7 @@ normal vector from `Kernel` for the plane equation in facets. It keeps a local copy of the kernel which makes it suitable for kernels with local state. -\cgalModels `PolyhedronTraits_3` +\cgalModels{PolyhedronTraits_3} \sa `CGAL::Polyhedron_traits_3` diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h index fd1e9ccc0de..8cfe6fa2a55 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a cost function which calculates the cost as the square of the distance between the original and simplified polylines, /// possibly scaled based on a factor. /// -/// \cgalModels `PolylineSimplificationCostFunction`. +/// \cgalModels{PolylineSimplificationCostFunction.} template class Hybrid_squared_distance_cost { diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Scaled_squared_distance_cost.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Scaled_squared_distance_cost.h index 8a697736461..d2b04efbcbe 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Scaled_squared_distance_cost.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Scaled_squared_distance_cost.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a cost function which calculates the cost as a scaled variant of the square of the distance between the original and simplified polylines. /// -/// \cgalModels `PolylineSimplificationCostFunction` +/// \cgalModels{ PolylineSimplificationCostFunction} class Scaled_squared_distance_cost { diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h index 4110a771821..128327f64c7 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h @@ -34,7 +34,7 @@ namespace Polyline_simplification_2 /// This class is a cost function which calculates the cost as the square of the distance between the original and simplified polylines. /// -/// \cgalModels `PolylineSimplificationCostFunction`. +/// \cgalModels{PolylineSimplificationCostFunction.} class Squared_distance_cost { diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h index e1ab3d7fc01..ed886701afd 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h @@ -28,7 +28,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the cost for /// simplifying a vertex is greater than a certain threshold. /// -/// \cgalModels `PolylineSimplificationStopPredicate`. +/// \cgalModels{PolylineSimplificationStopPredicate.} class Stop_above_cost_threshold { public : diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h index 2c98b695a20..9de0bb1888d 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the percentage /// of remaining vertices is smaller than a certain threshold. /// -/// \cgalModels `PolylineSimplificationStopPredicate`. +/// \cgalModels{PolylineSimplificationStopPredicate.} class Stop_below_count_ratio_threshold { public : diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h index 63e9ce6cc03..072b68166ae 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the number of /// vertices is smaller than a certain threshold. /// -/// \cgalModels `PolylineSimplificationStopPredicate`. +/// \cgalModels{PolylineSimplificationStopPredicate.} class Stop_below_count_threshold { public : diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Vertex_base_2.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Vertex_base_2.h index d5f2856e239..5b1d5c25463 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Vertex_base_2.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Vertex_base_2.h @@ -25,7 +25,7 @@ namespace Polyline_simplification_2 { /// A vertex base class with data members needed by the simplification algorithm. /// \tparam Vb must be a model of the concept `TriangulationVertexBase_2` -/// \cgalModels `PolylineSimplificationVertexBase_2`. +/// \cgalModels{PolylineSimplificationVertexBase_2} template > class Vertex_base_2 : public Vb diff --git a/Polynomial/doc/Polynomial/CGAL/Exponent_vector.h b/Polynomial/doc/Polynomial/CGAL/Exponent_vector.h index 77868373ab9..ff9105c68fb 100644 --- a/Polynomial/doc/Polynomial/CGAL/Exponent_vector.h +++ b/Polynomial/doc/Polynomial/CGAL/Exponent_vector.h @@ -21,12 +21,7 @@ the lexicographic order starts the comparison at the last entry. This reflects the fact that the last entry corresponds to the outermost variable of a multivariate polynomial. -\cgalModels `RandomAccessContainer` -\cgalModels `DefaultConstructible` -\cgalModels `Assignable` -\cgalModels `CopyConstructible` -\cgalModels `EqualityComparable` -\cgalModels `LessThanComparable` +\cgalModels{RandomAccessContainer,DefaultConstructible,Assignable,CopyConstructible,EqualityComparable,LessThanComparable} \sa `Polynomial_d` \sa `PolynomialTraits_d` diff --git a/Polynomial/doc/Polynomial/CGAL/Polynomial.h b/Polynomial/doc/Polynomial/CGAL/Polynomial.h index 15c657b628d..77d9235aa0e 100644 --- a/Polynomial/doc/Polynomial/CGAL/Polynomial.h +++ b/Polynomial/doc/Polynomial/CGAL/Polynomial.h @@ -53,16 +53,16 @@ the coefficient sequence does not contain leading zero coefficients (where leading means at the high-degree end), with the exception that the zero polynomial is represented by a single zero coefficient. -\cgalModels `Polynomial_d` -\cgalModels `Assignable` -\cgalModels `CopyConstructible` -\cgalModels `DefaultConstructible` -\cgalModels `EqualityComparable` -\cgalModels `ImplicitInteroperable` with int -\cgalModels `ImplicitInteroperable` with Coeff -\cgalModels `Fraction` if Coeff is model of `Fraction` -\cgalModels `LessThanComparable` if Coeff is model of `LessThanComparable` -\cgalModels `Modularizable` if `Coeff` is model of `Modularizable` +\cgalModelsBare{`Polynomial_d`\n + `Assignable`\n + `CopyConstructible`\n + `DefaultConstructible`\n + `EqualityComparable`\n + `ImplicitInteroperable` with int\n + `ImplicitInteroperable` with Coeff\n + `Fraction` if Coeff is model of `Fraction`\n + `LessThanComparable` if Coeff is model of `LessThanComparable`\n + `Modularizable` if `Coeff` is model of `Modularizable`} */ template< typename Coeff > class Polynomial { diff --git a/Polynomial/doc/Polynomial/CGAL/Polynomial_traits_d.h b/Polynomial/doc/Polynomial/CGAL/Polynomial_traits_d.h index 08bd67675a0..1ca6805a816 100644 --- a/Polynomial/doc/Polynomial/CGAL/Polynomial_traits_d.h +++ b/Polynomial/doc/Polynomial/CGAL/Polynomial_traits_d.h @@ -6,7 +6,7 @@ namespace CGAL { A model of concept `PolynomialTraits_d` -\cgalModels `PolynomialTraits_d` +\cgalModels{PolynomialTraits_d} */ template< typename Polynomial_d > diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_2.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_2.h index cd0d661178b..b5e189e51ce 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_2.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_2.h @@ -12,7 +12,7 @@ optimisation algorithms using the two-dimensional \cgal kernel. \tparam ET NT must be models for `RingNumberType`. Their default is `K::RT`. -\cgalModels `PolytopeDistanceDTraits` +\cgalModels{PolytopeDistanceDTraits} \sa `CGAL::Polytope_distance_d` \sa `CGAL::Polytope_distance_d_traits_3` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_3.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_3.h index ab873c594a5..207b4a8bd7b 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_3.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_3.h @@ -13,7 +13,7 @@ optimisation algorithms using the three-dimensional \cgal kernel. \tparam ET NT must be models for `RingNumberType`. Their default is `K::RT`. -\cgalModels `PolytopeDistanceDTraits` +\cgalModels{PolytopeDistanceDTraits} \sa `CGAL::Polytope_distance_d` \sa `CGAL::Polytope_distance_d_traits_2` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_d.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_d.h index 536d2e43b33..37ad80ae56b 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_d.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d_traits_d.h @@ -13,7 +13,7 @@ optimisation algorithms using the \f$ d\f$-dimensional \cgal kernel. \tparam ET NT must be models for `RingNumberType`. Their default is `K::RT`. -\cgalModels `PolytopeDistanceDTraits` +\cgalModels{PolytopeDistanceDTraits} \sa `CGAL::Polytope_distance_d` \sa `CGAL::Polytope_distance_d_traits_2` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_default_traits_3.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_default_traits_3.h index 508bad703bb..7fa7e77385c 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_default_traits_3.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_default_traits_3.h @@ -9,7 +9,7 @@ using the three-dimensional \cgal kernel. \tparam K must be a model for `Kernel`. -\cgalModels `WidthTraits_3` +\cgalModels{WidthTraits_3} \sa `CGAL::Width_3` \sa `WidthTraits_3` diff --git a/Property_map/include/CGAL/property_map.h b/Property_map/include/CGAL/property_map.h index 12fd06503fe..735c1f5da49 100644 --- a/Property_map/include/CGAL/property_map.h +++ b/Property_map/include/CGAL/property_map.h @@ -102,7 +102,7 @@ make_OR_property_map(const PM1& pm1, const PM2& pm2) /// Property map that accesses a value from an iterator /// -/// \cgalModels `ReadablePropertyMap` +/// \cgalModels{ReadablePropertyMap} /// /// \tparam InputIterator an input iterator /// \endcond @@ -287,7 +287,7 @@ make_compose_property_map(const KeyMap& km, const ValueMap& vm) /// Property map that converts a `T*` pointer (or in general an iterator /// over `T` elements) to the `T` object. /// -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} template struct Dereference_property_map : public boost::put_get_helper::reference, Dereference_property_map > @@ -319,7 +319,7 @@ make_dereference_property_map(Iter) /// A `LvaluePropertyMap` property map mapping a key to itself (by reference). /// It is mutable if `T` is not `const` and non-mutable otherwise. /// -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} template struct Identity_property_map { @@ -385,7 +385,7 @@ Identity_property_map /// \ingroup PkgPropertyMapRef /// Property map that accesses the first item of a `std::pair`. /// \tparam Pair Instance of `std::pair`. -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} /// /// \sa `CGAL::Second_of_pair_property_map` template @@ -425,7 +425,7 @@ First_of_pair_property_map /// /// \tparam Pair Instance of `std::pair`. /// -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} /// /// \sa `CGAL::First_of_pair_property_map` template @@ -466,7 +466,7 @@ Second_of_pair_property_map /// \tparam N %Index of the item to access. /// \tparam Tuple Instance of `boost::tuple` or `std::tuple`. /// -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} template struct Nth_of_tuple_property_map { @@ -611,7 +611,7 @@ make_property_map(const std::vector& v) /// Note that this value is chosen when the map is constructed and cannot /// be changed afterwards. Specifically, the free function `put()` does nothing. /// -/// \cgalModels `ReadWritePropertyMap` +/// \cgalModels{ReadWritePropertyMap} template struct Constant_property_map { @@ -640,7 +640,7 @@ struct Constant_property_map /// return `true` if the key is inside the set and `false` otherwise. The `put` /// function will insert an element in the set if `true` is passed and erase it /// otherwise. -/// \cgalModels `ReadWritePropertyMap` +/// \cgalModels{ReadWritePropertyMap} template struct Boolean_property_map { @@ -688,7 +688,7 @@ make_boolean_property_map(Set& set_) /// a geometric object of the same type as `GeomObject` but possibly from /// another kernel. /// Conversions between the two geometric objects are done using `Cartesian_converter`. -/// \cgalModels `ReadWritePropertyMap` +/// \cgalModels{ReadWritePropertyMap} template struct Cartesian_converter_property_map { @@ -726,7 +726,7 @@ make_cartesian_converter_property_map(Vpm vpm) /// \ingroup PkgPropertyMapRef /// A property map with `std::size_t` as key-type that can be used /// to access the i'th element in a container with random access. -/// \cgalModels `LvaluePropertyMap`, constness being than of `Container`. +/// \cgalModels{LvaluePropertyMap constness being than of `Container`.} template class Random_access_property_map { diff --git a/QP_solver/doc/QP_solver/CGAL/QP_models.h b/QP_solver/doc/QP_solver/CGAL/QP_models.h index 892d0027947..bfb7416a602 100644 --- a/QP_solver/doc/QP_solver/CGAL/QP_models.h +++ b/QP_solver/doc/QP_solver/CGAL/QP_models.h @@ -42,8 +42,7 @@ namespace CGAL { some container; an instance of the class `Const_oneset_iterator`, constructed from the value in question, does the job more efficiently. - \cgalModels `QuadraticProgram` - \cgalModels `LinearProgram` + \cgalModels{QuadraticProgram,LinearProgram} \cgalHeading{Example} @@ -296,10 +295,7 @@ make_quadratic_program_from_iterators ( some container; an instance of the class `Const_oneset_iterator`, constructed from the value in question, does the job more efficiently. - \cgalModels `QuadraticProgram` - \cgalModels `LinearProgram` - \cgalModels `NonnegativeQuadraticProgram` - \cgalModels `NonnegativeLinearProgram` + \cgalModels{QuadraticProgram,LinearProgram,NonnegativeQuadraticProgram,NonnegativeLinearProgram} \cgalHeading{Example} @@ -378,8 +374,7 @@ public: some container; an instance of the class `Const_oneset_iterator`, constructed from the value in question, does the job more efficiently. - \cgalModels `QuadraticProgram` - \cgalModels `NonnegativeQuadraticProgram` + \cgalModels{QuadraticProgram,NonnegativeQuadraticProgram} \cgalHeading{Example} @@ -467,7 +462,7 @@ public: some container; an instance of the class `Const_oneset_iterator`, constructed from the value in question, does the job more efficiently. - \cgalModels `QuadraticProgram` + \cgalModels{QuadraticProgram} \cgalHeading{Example} @@ -560,10 +555,7 @@ public: into type `NT`. The constructed program can be further manipulated by using the set-methods below. - \cgalModels `QuadraticProgram` - \cgalModels `LinearProgram` - \cgalModels `NonnegativeQuadraticProgram` - \cgalModels `NonnegativeLinearProgram` + \cgalModels{QuadraticProgram,LinearProgram,NonnegativeQuadraticProgram,NonnegativeLinearProgram} \cgalHeading{Example} @@ -771,10 +763,7 @@ namespace CGAL { If you want to read a quadratic program in `MPSFormat` from a stream, please use the model `Quadratic_program_from_mps`. - \cgalModels `QuadraticProgram` - \cgalModels `LinearProgram` - \cgalModels `NonnegativeQuadraticProgram` - \cgalModels `NonnegativeLinearProgram` + \cgalModels{QuadraticProgram,LinearProgram,NonnegativeQuadraticProgram,NonnegativeLinearProgram} \cgalHeading{Example} diff --git a/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h b/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h index 643de3ff7da..0a5c70bfa60 100644 --- a/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h +++ b/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h @@ -170,7 +170,7 @@ namespace CGAL { if the domain used for mesh generation does not include 0 and 1-dimensionnal features (i.e is only a model of the concept `MeshDomain_3`). - \cgalModels `MeshComplexWithFeatures_3InTriangulation_3` + \cgalModels{MeshComplexWithFeatures_3InTriangulation_3} \sa \link make_mesh_3() `CGAL::make_mesh_3()`\endlink \sa \link refine_mesh_3() `CGAL::refine_mesh_3()`\endlink diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h index ee49f572236..0001e33ed67 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h @@ -363,7 +363,7 @@ assigned to a non surface facet. It must match the `Surface_patch_index` of the model of the `MeshDomain_3` concept when used for mesh generation. -\cgalModels `SimplicialMeshCellBase_3` +\cgalModels{SimplicialMeshCellBase_3} \sa `CGAL::Mesh_complex_3_in_triangulation_3` \sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h index 3f1a9c92d42..35127d01405 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h @@ -36,7 +36,7 @@ namespace CGAL { //Class Simplicial_mesh_vertex_3 //Adds information to Vb about the localization of the vertex in regards //to the 3D input complex. -//\cgalModels `SimplicialMeshVertexBase_3` +//\cgalModels{SimplicialMeshVertexBase_3} template`. -\cgalModels `SimplicialMeshVertexBase_3` +\cgalModels{SimplicialMeshVertexBase_3} \sa `CGAL::Mesh_complex_3_in_triangulation_3` \sa \link Mesh_vertex_base_3 `CGAL::Mesh_vertex_base_3`\endlink diff --git a/STL_Extension/doc/STL_Extension/CGAL/Complexity_tags.h b/STL_Extension/doc/STL_Extension/CGAL/Complexity_tags.h index 2c54537b8a4..3f39efc663b 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/Complexity_tags.h +++ b/STL_Extension/doc/STL_Extension/CGAL/Complexity_tags.h @@ -13,8 +13,7 @@ For example, passing `Location_policy` as parameter to -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Location_policy` \sa `Fast` @@ -45,8 +44,7 @@ more memory usage. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Location_policy` \sa `Compact` diff --git a/STL_Extension/doc/STL_Extension/CGAL/Default.h b/STL_Extension/doc/STL_Extension/CGAL/Default.h index 4f58c260c36..4fcb285014e 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/Default.h +++ b/STL_Extension/doc/STL_Extension/CGAL/Default.h @@ -26,8 +26,7 @@ same when instantiating it using `Default` instead of the type of the default argument, even though their interfaces will otherwise be the same. This may have consequences in some cases. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} In order to help the template class writer, `Default` provides a convenient way to extract the desired type for a template parameter which may be defaulted diff --git a/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h b/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h index 799cb42dc3b..ae8e77ff775 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h +++ b/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h @@ -51,8 +51,7 @@ For example, passing `Location_policy` as parameter to `Tag` can only be either `Fast` or `Compact` currently. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Compact` \sa `Fast` diff --git a/STL_Extension/doc/STL_Extension/CGAL/Spatial_lock_grid_3.h b/STL_Extension/doc/STL_Extension/CGAL/Spatial_lock_grid_3.h index 2d9b53b1048..02e5305d4e6 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/Spatial_lock_grid_3.h +++ b/STL_Extension/doc/STL_Extension/CGAL/Spatial_lock_grid_3.h @@ -26,7 +26,7 @@ block (spin) if the thread owning the lock has a lower \"ID\" (each thread is given an arbitrary ID) or return immediately otherwise. It uses atomics to perform lock operations. -\cgalModels `SurjectiveLockDataStructure` +\cgalModels{SurjectiveLockDataStructure} */ template diff --git a/STL_Extension/doc/STL_Extension/CGAL/function_objects.h b/STL_Extension/doc/STL_Extension/CGAL/function_objects.h index 36f7ba21155..29749667ac9 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/function_objects.h +++ b/STL_Extension/doc/STL_Extension/CGAL/function_objects.h @@ -13,7 +13,7 @@ its argument. -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1021,7 +1021,7 @@ The class `Dereference` dereferences a pointer -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Value > @@ -1091,7 +1091,7 @@ The class `Get_address` gets the address of an lvalue -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1161,7 +1161,7 @@ on `Value`. -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Value > @@ -1230,7 +1230,7 @@ The class `Project_facet` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Node > @@ -1299,7 +1299,7 @@ The class `Project_next` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1368,7 +1368,7 @@ The class `Project_next_opposite` calls the member functions -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Node > @@ -1438,7 +1438,7 @@ The class `Project_normal` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1509,7 +1509,7 @@ The class `Project_opposite_prev` calls the member functions -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1580,7 +1580,7 @@ The class `Project_plane` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ @@ -1651,7 +1651,7 @@ The class `Project_point` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Node > @@ -1721,7 +1721,7 @@ The class `Project_prev` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Node > @@ -1791,7 +1791,7 @@ The class `Project_vertex` calls the member function -\cgalModels `ProjectionObject` +\cgalModels{ProjectionObject} */ template< typename Node > diff --git a/STL_Extension/doc/STL_Extension/CGAL/iterator.h b/STL_Extension/doc/STL_Extension/CGAL/iterator.h index fdc82bb1ffd..2de6a6031cc 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/iterator.h +++ b/STL_Extension/doc/STL_Extension/CGAL/iterator.h @@ -12,7 +12,7 @@ specific object of type `T`. -\cgalModels `RandomAccessIterator` +\cgalModels{RandomAccessIterator} \sa `CGAL::Emptyset_iterator` \sa `CGAL::Oneset_iterator` @@ -54,7 +54,7 @@ from input iterators. -\cgalModels `InputIterator` +\cgalModels{InputIterator} \cgalHeading{Requirements} @@ -116,7 +116,7 @@ must be a subset of the parameters of `V`. Should the \tparam V must be a `std::tuple<...>` of the types of values to be accepted and dispatched. \tparam O must be a `std::tuple<...>` of the types of corresponding output iterators. -\cgalModels `OutputIterator` +\cgalModels{OutputIterator} \cgalExample{STL_Extension/Dispatch_output_iterator.cpp} @@ -206,7 +206,7 @@ can be a list of arbitrary types. \tparam V must be a `std::tuple<...>` of the types of values to be accepted and dispatched. \tparam O must be a `std::tuple<...>` of the types of corresponding output iterators. -\cgalModels `OutputIterator` +\cgalModels{OutputIterator} \sa `CGAL::Dispatch_or_drop_output_iterator` */ @@ -285,7 +285,7 @@ think of it as being connected to /dev/null. -\cgalModels `OutputIterator` +\cgalModels{OutputIterator} \sa `CGAL::Oneset_iterator` \sa `CGAL::Const_oneset_iterator` @@ -395,7 +395,7 @@ to `std::insert_iterator`, but differs in that it calls the `insert()` function of the container without the iterator additional argument. -\cgalModels `OutputIterator` +\cgalModels{OutputIterator} \tparam Container provides a member function `insert(const Container::const_reference&)`. @@ -536,7 +536,7 @@ object. -\cgalModels `InputIterator` +\cgalModels{InputIterator} \sa `CGAL::Creator_1` @@ -595,7 +595,7 @@ The class `Join_input_iterator_2` joins two iterators. The result is again an it iterator category type as the original iterator) that reads an object from the stream and applies a function object to that object. -\cgalModels `InputIterator` +\cgalModels{InputIterator} */ @@ -646,7 +646,7 @@ The class `Join_input_iterator_3` joins three iterators. The result is again an iterator category type as the original iterator) that reads an object from the stream and applies a function object to that object. -\cgalModels `InputIterator` +\cgalModels{InputIterator} */ @@ -740,7 +740,7 @@ pointer to the referred object. -\cgalModels `BidirectionalIterator` +\cgalModels{BidirectionalIterator} \sa `CGAL::Emptyset_iterator` \sa `CGAL::Const_oneset_iterator` diff --git a/STL_Extension/doc/STL_Extension/CGAL/tags.h b/STL_Extension/doc/STL_Extension/CGAL/tags.h index 7a085e194be..91b0ca5532d 100644 --- a/STL_Extension/doc/STL_Extension/CGAL/tags.h +++ b/STL_Extension/doc/STL_Extension/CGAL/tags.h @@ -58,7 +58,7 @@ typedef CGAL::Boolean_tag Tag_true; \ingroup PkgSTLExtensionUtilities Class indicating the absence of a functor. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `AlgebraicStructureTraits` \sa `RealEmbeddableTraits` @@ -93,7 +93,7 @@ struct Parallel_if_available_tag {}; General tag indicating that non of any other possible tags is valid. -\cgalModels `DefaultConstructible` +\cgalModels{DefaultConstructible} \sa `AlgebraicStructureTraits` diff --git a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Advancing_front_mesher.h b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Advancing_front_mesher.h index 35e133c3901..37e4644e529 100644 --- a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Advancing_front_mesher.h +++ b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Advancing_front_mesher.h @@ -33,7 +33,7 @@ namespace Scale_space_reconstruction_3 * with the possibility of using an upper bound on the length of the * produced facets. * - * \cgalModels CGAL::Scale_space_reconstruction_3::Mesher + * \cgalModels{CGAL::Scale_space_reconstruction_3::Mesher} * * \tparam Geom_traits geometric traits class. It must be a * model of `DelaunayTriangulationTraits_3`. It must have a diff --git a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Alpha_shape_mesher.h b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Alpha_shape_mesher.h index 2a55578de06..d0f393c0821 100644 --- a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Alpha_shape_mesher.h +++ b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Alpha_shape_mesher.h @@ -47,7 +47,7 @@ namespace Scale_space_reconstruction_3 * component of the surface where connected facets are locally oriented * towards the same side of the surface. * - * \cgalModels CGAL::Scale_space_reconstruction_3::Mesher + * \cgalModels{CGAL::Scale_space_reconstruction_3::Mesher} * * \tparam Geom_traits is the geometric traits class. It must be a * model of `DelaunayTriangulationTraits_3`. It must have a diff --git a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Jet_smoother.h b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Jet_smoother.h index cf34380ca1b..40c28918831 100644 --- a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Jet_smoother.h +++ b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Jet_smoother.h @@ -32,7 +32,7 @@ namespace Scale_space_reconstruction_3 * %Smoother for scale space reconstruction based on * `CGAL::jet_smooth_point_set()`. * - * \cgalModels CGAL::Scale_space_reconstruction_3::Smoother + * \cgalModels{CGAL::Scale_space_reconstruction_3::Smoother} * * \tparam Geom_traits geometric traits class. It must be a * model of `DelaunayTriangulationTraits_3`. It must have a diff --git a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Weighted_PCA_smoother.h b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Weighted_PCA_smoother.h index af9cda15c2d..648b8480886 100644 --- a/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Weighted_PCA_smoother.h +++ b/Scale_space_reconstruction_3/include/CGAL/Scale_space_reconstruction_3/Weighted_PCA_smoother.h @@ -41,7 +41,7 @@ namespace Scale_space_reconstruction_3 * %Smoother for scale space reconstruction based on a principal * component analysis weighted by the local density of points. * - * \cgalModels CGAL::Scale_space_reconstruction_3::Smoother + * \cgalModels{CGAL::Scale_space_reconstruction_3::Smoother} * * \tparam Geom_traits geometric traits class. It must be a * model of `DelaunayTriangulationTraits_3`. It must have a diff --git a/SearchStructures/doc/SearchStructures/CGAL/Range_segment_tree_traits.h b/SearchStructures/doc/SearchStructures/CGAL/Range_segment_tree_traits.h index 81615c89fcd..bee9d44eb49 100644 --- a/SearchStructures/doc/SearchStructures/CGAL/Range_segment_tree_traits.h +++ b/SearchStructures/doc/SearchStructures/CGAL/Range_segment_tree_traits.h @@ -8,7 +8,7 @@ The class `Range_segment_tree_set_traits_2` is a range and segment tree traits c 2-dimensional point class from the \cgal kernel. The class is parameterized with a representation class `R`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R > @@ -42,7 +42,7 @@ The class `Range_segment_tree_set_traits_3` is a range and segment tree traits c point class from the \cgal kernel. The class is parameterized with a representation class `R`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R > @@ -78,7 +78,7 @@ type `T` is associated to each key. The class is parameterized with a representation class `R` and the type of the associated data `T`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R, typename T > @@ -114,7 +114,7 @@ type `T` is associated to each key. The class is parameterized with a representation class `R` and the type of the associated data `T`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R, typename T > @@ -150,7 +150,7 @@ type `T` is associated to each interval. The class is parameterized with a representation class `R` and the type of the associated data `T`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R, typename T > @@ -186,7 +186,7 @@ type `T` is associated to each interval. The class is parameterized with a representation class `R` and the type of the associated data `T`. -\cgalModels `RangeSegmentTreeTraits_k` +\cgalModels{RangeSegmentTreeTraits_k} */ template< typename R, typename T > diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_2.h index 6fb02a67ddf..49440d6654b 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_2.h @@ -35,7 +35,7 @@ A segment Delaunay graph can be seen as a container of faces and vertices. Therefore the `Segment_Delaunay_graph_2` class provides several iterators and circulators that allow to traverse it (completely or partially). -\cgalModels `DelaunayGraph_2` +\cgalModels{DelaunayGraph_2} \sa `CGAL::Segment_Delaunay_graph_traits_2` \sa `CGAL::Segment_Delaunay_graph_traits_without_intersections_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_face_base_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_face_base_2.h index 69fc93cf421..9b60ce9d21d 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_face_base_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_face_base_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgSegmentDelaunayGraph2Ref -\cgalModels `SegmentDelaunayGraphFaceBase_2` +\cgalModels{SegmentDelaunayGraphFaceBase_2} The class `Segment_Delaunay_graph_face_base_2` provides a model for the `SegmentDelaunayGraphFaceBase_2` concept which is the face diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_filtered_traits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_filtered_traits_2.h index 00be59b9a75..58690b0e025 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_filtered_traits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_filtered_traits_2.h @@ -53,10 +53,7 @@ The default values for the template parameters are as follows:
  • If the \gmp package is installed with \cgal, the template parameter `EK` has the default value: `EK = Simple_cartesian`, otherwise its default value is `EK = Simple_cartesian >`. -\cgalModels `SegmentDelaunayGraphTraits_2` -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` -\cgalModels `Assignable` +\cgalModels{SegmentDelaunayGraphTraits_2,DefaultConstructible,CopyConstructible,Assignable} \sa `SegmentDelaunayGraphTraits_2` \sa `CGAL::Field_tag` @@ -211,10 +208,7 @@ default value is `EK = CGAL::Simple_cartesian`. -\cgalModels `SegmentDelaunayGraphTraits_2` -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` -\cgalModels `Assignable` +\cgalModels{SegmentDelaunayGraphTraits_2,DefaultConstructible,CopyConstructible,Assignable} \sa `Kernel` \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_2.h index c1ef0bcc9fc..a933bb886e5 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_2.h @@ -68,9 +68,7 @@ The `Segment_Delaunay_graph_hierarchy_2` class derives publicly from the the same with its base class. In the sequel only additional types and methods defined are documented. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` -\cgalModels `Assignable` +\cgalModels{DefaultConstructible,CopyConstructible,Assignable} \sa `CGAL::Segment_Delaunay_graph_2` \sa `CGAL::Triangulation_data_structure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_vertex_base_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_vertex_base_2.h index 5ac99ae6de2..ed0cdbecfdf 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_vertex_base_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_hierarchy_vertex_base_2.h @@ -11,7 +11,7 @@ vertex base required by the \tparam Vbb must be a model of the `SegmentDelaunayGraphVertexBase_2` concept. -\cgalModels `SegmentDelaunayGraphHierarchyVertexBase_2` +\cgalModels{SegmentDelaunayGraphHierarchyVertexBase_2} \sa `SegmentDelaunayGraphVertexBase_2` \sa `SegmentDelaunayGraphHierarchyVertexBase_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_site_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_site_2.h index f55c92b636f..e088f512613 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_site_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_site_2.h @@ -8,7 +8,7 @@ The class `Segment_Delaunay_graph_site_2` is a model for the concept `SegmentDelaunayGraphSite_2`. \tparam K must be a model of the `Kernel` concept. -\cgalModels `SegmentDelaunayGraphSite_2` +\cgalModels{SegmentDelaunayGraphSite_2} \sa `Kernel` \sa `SegmentDelaunayGraphSite_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_2.h index 596717be5cc..89417cb3ccc 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_2.h @@ -9,7 +9,7 @@ The class `Segment_Delaunay_graph_storage_site_2` is a model for the concept \tparam Gt must be a model of the `SegmentDelaunayGraphStorageTraits_2` concept. -\cgalModels `SegmentDelaunayGraphStorageSite_2` +\cgalModels{SegmentDelaunayGraphStorageSite_2} \sa `CGAL::Segment_Delaunay_graph_site_2` */ diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_with_info_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_with_info_2.h index fc8180ff3d8..695207b9e0d 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_with_info_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_site_with_info_2.h @@ -10,7 +10,7 @@ The class `Segment_Delaunay_graph_storage_site_with_info_2` is a model for the c \tparam STraits must be a model of the `SegmentDelaunayGraphStorageTraits_2` concept. \tparam Base must be a model of `SegmentDelaunayGraphStorageSite_2` -\cgalModels `SegmentDelaunayGraphStorageSite_2` +\cgalModels{SegmentDelaunayGraphStorageSite_2} \sa `CGAL::Segment_Delaunay_graph_site_2` */ diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_2.h index 8fb333abcc0..7666eaa9584 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_2.h @@ -15,7 +15,7 @@ See section \ref Segment_Delaunay_graph_2StronglyIntersecting for more informati \tparam Gt must be a model of the concept `SegmentDelaunayGraphTraits_2`. -\cgalModels `SegmentDelaunayGraphStorageTraits_2` +\cgalModels{SegmentDelaunayGraphStorageTraits_2} \sa `CGAL::Segment_Delaunay_graph_hierarchy_2` \sa `CGAL::Segment_Delaunay_graph_traits_without_intersections_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_with_info_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_with_info_2.h index 49dd92c5160..854464d684e 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_with_info_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_storage_traits_with_info_2.h @@ -9,7 +9,7 @@ The class `Segment_Delaunay_graph_storage_traits_with_info_2` provides a model f \tparam Gt must be a model of the concept `SegmentDelaunayGraphTraits_2`. -\cgalModels `SegmentDelaunayGraphStorageTraits_2` +\cgalModels{SegmentDelaunayGraphStorageTraits_2} \sa `CGAL::Segment_Delaunay_graph_storage_site_with_info_2` */ diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_traits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_traits_2.h index 1dead711c35..a8daa3fd260 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_traits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_traits_2.h @@ -22,7 +22,7 @@ The way the predicates are evaluated is discussed in \cgalCite{b-ecvdl-96} and \cgalCite{cgal:k-reisv-04} (the geometric filtering part). -\cgalModels `SegmentDelaunayGraphTraits_2` +\cgalModels{SegmentDelaunayGraphTraits_2} \sa `Kernel` \sa `SegmentDelaunayGraphTraits_2` @@ -95,7 +95,7 @@ The way the predicates are evaluated is discussed in \cgalCite{b-ecvdl-96} and \cgalCite{cgal:k-reisv-04} (the geometric filtering part). -\cgalModels `SegmentDelaunayGraphTraits_2` +\cgalModels{SegmentDelaunayGraphTraits_2} \sa `Kernel` \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_vertex_base_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_vertex_base_2.h index b925fa57dd9..9881285b413 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_vertex_base_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/CGAL/Segment_Delaunay_graph_vertex_base_2.h @@ -4,7 +4,7 @@ namespace CGAL { /*! \ingroup PkgSegmentDelaunayGraph2Ref -\cgalModels `SegmentDelaunayGraphVertexBase_2` +\cgalModels{SegmentDelaunayGraphVertexBase_2} The class `Segment_Delaunay_graph_vertex_base_2` provides a model for the `SegmentDelaunayGraphVertexBase_2` concept which is the vertex diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_2.h index 39ff240f8ac..10e32d64189 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_2.h @@ -19,7 +19,7 @@ which must be a model of `SegmentDelaunayGraphDataStructure_2`. `DS` defaults to `CGAL::Triangulation_data_structure_2< CGAL::Segment_Delaunay_graph_vertex_base_2, CGAL::Triangulation_face_base_2 >`. -\cgalModels `DelaunayGraph_2` +\cgalModels{DelaunayGraph_2} \sa `SegmentDelaunayGraphLinfTraits_2` \sa `SegmentDelaunayGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_filtered_traits_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_filtered_traits_2.h index a72aa365f48..7ebee962afe 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_filtered_traits_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_filtered_traits_2.h @@ -16,7 +16,7 @@ value for CK is CGAL::Simple_cartesian (see also the examples in the user manual). -\cgalModels `SegmentDelaunayGraphLinfTraits_2` +\cgalModels{SegmentDelaunayGraphLinfTraits_2} \sa `CGAL::Segment_Delaunay_graph_filtered_traits_2` \sa `CGAL::Segment_Delaunay_graph_Linf_2` @@ -49,7 +49,7 @@ value for CK is CGAL::Simple_cartesian (see also the examples in the user manual). -\cgalModels `SegmentDelaunayGraphLinfTraits_2` +\cgalModels{SegmentDelaunayGraphLinfTraits_2} \sa `CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2` \sa `CGAL::Segment_Delaunay_graph_2` diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_traits_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_traits_2.h index e5c0d0c526a..e459b1f3be7 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_traits_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/CGAL/Segment_Delaunay_graph_Linf_traits_2.h @@ -18,7 +18,7 @@ reasonable and valid values of the template parameters and should be preferred over `Segment_Delaunay_graph_Linf_traits_2`. -\cgalModels `SegmentDelaunayGraphLinfTraits_2` +\cgalModels{SegmentDelaunayGraphLinfTraits_2} \sa `CGAL::Segment_Delaunay_graph_traits_2` \sa `CGAL::Segment_Delaunay_graph_Linf_2` @@ -53,7 +53,7 @@ reasonable and valid values of the template parameters and should be preferred over `Segment_Delaunay_graph_Linf_traits_without_intersections_2`. -\cgalModels `SegmentDelaunayGraphLinfTraits_2` +\cgalModels{SegmentDelaunayGraphLinfTraits_2} \sa `CGAL::Segment_Delaunay_graph_traits_without_intersections_2` \sa `CGAL::Segment_Delaunay_graph_2` diff --git a/Shape_detection/include/CGAL/Shape_detection/Efficient_RANSAC/Efficient_RANSAC_traits.h b/Shape_detection/include/CGAL/Shape_detection/Efficient_RANSAC/Efficient_RANSAC_traits.h index da8c3713990..37df7a5bcc0 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Efficient_RANSAC/Efficient_RANSAC_traits.h +++ b/Shape_detection/include/CGAL/Shape_detection/Efficient_RANSAC/Efficient_RANSAC_traits.h @@ -23,7 +23,7 @@ namespace CGAL { \ingroup PkgShapeDetectionRANSAC \brief %Default traits class for the `CGAL::Shape_detection::Efficient_RANSAC`. - \cgalModels `EfficientRANSACTraits` + \cgalModels{EfficientRANSACTraits} \tparam Gt must be a model of the concept `Kernel` with `Gt::FT` being `float` or `double`. diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/K_neighbor_query.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/K_neighbor_query.h index 87feb7a2bd7..9366ebaa6a6 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/K_neighbor_query.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/K_neighbor_query.h @@ -49,7 +49,7 @@ namespace Point_set { a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` or `Kernel::Point_3` - \cgalModels `NeighborQuery` + \cgalModels{NeighborQuery} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_circle_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_circle_fit_region.h index f3199cdcb7e..15c5d39e13c 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_circle_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_circle_fit_region.h @@ -48,7 +48,7 @@ namespace Point_set { \tparam NormalMap a model of `ReadablePropertyMap` whose key type is `Item` and value type is `Kernel::Vector_2` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_cylinder_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_cylinder_fit_region.h index 110cf55972d..12543ef500f 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_cylinder_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_cylinder_fit_region.h @@ -48,7 +48,7 @@ namespace Point_set { \tparam NormalMap a model of `ReadablePropertyMap` whose key type is `Item` and value type is `Kernel::Vector_3` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_line_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_line_fit_region.h index 8111ac2f599..d61ecad6b1d 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_line_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_line_fit_region.h @@ -50,7 +50,7 @@ namespace Point_set { a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Vector_2` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_plane_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_plane_fit_region.h index 601f5f5748d..912114e693a 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_plane_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_plane_fit_region.h @@ -51,7 +51,7 @@ namespace Point_set { range and value type is `Kernel::Vector_3` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_sphere_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_sphere_fit_region.h index 4661f2ea132..55b935c357e 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_sphere_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Least_squares_sphere_fit_region.h @@ -50,7 +50,7 @@ namespace Point_set { a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Vector_3` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Sphere_neighbor_query.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Sphere_neighbor_query.h index e36658c45b5..3230b3b097a 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Sphere_neighbor_query.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Point_set/Sphere_neighbor_query.h @@ -48,7 +48,7 @@ namespace Point_set { \tparam PointMap a model of `ReadablePropertyMap` whose key type is `Item_` and value type is `GeomTraits::Point_2` or `GeomTraits::Point_3` - \cgalModels `NeighborQuery` + \cgalModels{NeighborQuery} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Least_squares_plane_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Least_squares_plane_fit_region.h index 74fa797fee4..61e157c8745 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Least_squares_plane_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Least_squares_plane_fit_region.h @@ -45,7 +45,7 @@ namespace Polygon_mesh { a model of `ReadablePropertyMap` whose key type is the vertex type of a polygon mesh and value type is `Kernel::Point_3` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/One_ring_neighbor_query.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/One_ring_neighbor_query.h index 635d23d5fec..71df088e9a0 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/One_ring_neighbor_query.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/One_ring_neighbor_query.h @@ -38,7 +38,7 @@ namespace Polygon_mesh { a model of `ConstRange` whose iterator type is `RandomAccessIterator` and value type is the face type of a polygon mesh - \cgalModels `NeighborQuery` + \cgalModels{NeighborQuery} */ template class One_ring_neighbor_query diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Polyline_graph.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Polyline_graph.h index 3c4fb0e823c..6354362e773 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Polyline_graph.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Polygon_mesh/Polyline_graph.h @@ -38,7 +38,7 @@ namespace Polygon_mesh { a model of `ReadablePropertyMap` whose key type is the vertex type of a polygon mesh and value type is `Point_3` from a \cgal %Kernel - \cgalModels `NeighborQuery` + \cgalModels{NeighborQuery} */ template< typename PolygonMesh, diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Segment_set/Least_squares_line_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Segment_set/Least_squares_line_fit_region.h index 1ba03dfcb59..702cbaa0fb9 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Segment_set/Least_squares_line_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Segment_set/Least_squares_line_fit_region.h @@ -47,7 +47,7 @@ namespace Segment_set { a model of `ReadablePropertyMap` whose key type is `Item` and value type is `Kernel::Segment_2` or `Kernel::Segment_3` - \cgalModels `RegionType` + \cgalModels{RegionType} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Contours/Longest_direction_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Contours/Longest_direction_2.h index 199417f31b1..55a6d51ac50 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Contours/Longest_direction_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Contours/Longest_direction_2.h @@ -42,7 +42,7 @@ namespace Contours { range and value type is `GeomTraits::Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `ContourDirections` + \cgalModels{ContourDirections} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Contours/Multiple_directions_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Contours/Multiple_directions_2.h index 6d0ac4dca6f..0a5dda27340 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Contours/Multiple_directions_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Contours/Multiple_directions_2.h @@ -48,7 +48,7 @@ namespace Contours { range and value type is `GeomTraits::Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `ContourDirections` + \cgalModels{ContourDirections} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Contours/User_defined_directions_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Contours/User_defined_directions_2.h index 442efbe56a7..c1fe8a8d90a 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Contours/User_defined_directions_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Contours/User_defined_directions_2.h @@ -42,7 +42,7 @@ namespace Contours { range and value type is `GeomTraits::Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `ContourDirections` + \cgalModels{ContourDirections} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Angle_regularization_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Angle_regularization_2.h index 4413dd3c133..f45f4a24f1c 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Angle_regularization_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Angle_regularization_2.h @@ -46,7 +46,7 @@ namespace Segments { range and value type is `GeomTraits::Segment_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `RegularizationType` + \cgalModels{RegularizationType} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Delaunay_neighbor_query_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Delaunay_neighbor_query_2.h index ef31b408965..501997d16f1 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Delaunay_neighbor_query_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Delaunay_neighbor_query_2.h @@ -52,7 +52,7 @@ namespace Segments { and value type is `GeomTraits::Segment_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `NeighborQuery` + \cgalModels{NeighborQuery} */ template< typename GeomTraits, diff --git a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Offset_regularization_2.h b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Offset_regularization_2.h index 0ea5e7e1523..597a101bcbe 100644 --- a/Shape_regularization/include/CGAL/Shape_regularization/Segments/Offset_regularization_2.h +++ b/Shape_regularization/include/CGAL/Shape_regularization/Segments/Offset_regularization_2.h @@ -51,7 +51,7 @@ namespace Segments { and value type is `GeomTraits::Segment_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `RegularizationType` + \cgalModels{RegularizationType} */ template< typename GeomTraits, diff --git a/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_3.h b/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_3.h index 6268dc5925b..cb1fe0066a1 100644 --- a/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_3.h @@ -12,7 +12,7 @@ The template argument must be a model of the concept to construct a regular triangulation of the weighted points and for point location in the mixed complex. -\cgalModels `SkinSurface_3` +\cgalModels{SkinSurface_3} */ template< typename SkinSurfaceTraits_3 > diff --git a/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_traits_3.h b/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_traits_3.h index 9ce736e258e..ca183bc617f 100644 --- a/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_traits_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/CGAL/Skin_surface_traits_3.h @@ -10,7 +10,7 @@ the `SkinSurfaceTraits_3`. \tparam K must be a model of the `Kernel` concept. -\cgalModels `SkinSurfaceTraits_3` +\cgalModels{SkinSurfaceTraits_3} */ template< typename K > diff --git a/Skin_surface_3/doc/Skin_surface_3/CGAL/Union_of_balls_3.h b/Skin_surface_3/doc/Skin_surface_3/CGAL/Union_of_balls_3.h index 697490f6a9d..6c6ec8239c7 100644 --- a/Skin_surface_3/doc/Skin_surface_3/CGAL/Union_of_balls_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/CGAL/Union_of_balls_3.h @@ -14,7 +14,7 @@ The template argument must be a model of the concept predicates to construct a regular triangulation of the weighted points. -\cgalModels `SkinSurface_3` +\cgalModels{SkinSurface_3} */ template< typename SkinSurfaceTraits_3 > diff --git a/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_traits_2.h b/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_traits_2.h index 584dbdea058..2a54841c21a 100644 --- a/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_traits_2.h +++ b/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_traits_2.h @@ -27,7 +27,7 @@ coordinate, the resulting ISR, may be imprecise, and the distance between some vertex and a non-incident edge can be slightly less than the guaranteed half-the width-of-a-pixel. -\cgalModels `SnapRoundingTraits_2` +\cgalModels{SnapRoundingTraits_2} */ template< typename Kernel > diff --git a/Solver_interface/include/CGAL/Default_diagonalize_traits.h b/Solver_interface/include/CGAL/Default_diagonalize_traits.h index 930dd681ce2..fcf8fd941c8 100644 --- a/Solver_interface/include/CGAL/Default_diagonalize_traits.h +++ b/Solver_interface/include/CGAL/Default_diagonalize_traits.h @@ -30,7 +30,7 @@ namespace CGAL { /// \tparam FT Number type /// \tparam dim Dimension of the matrices and vectors /// -/// \cgalModels `DiagonalizeTraits` +/// \cgalModels{DiagonalizeTraits} template class Default_diagonalize_traits { diff --git a/Solver_interface/include/CGAL/Diagonalize_traits.h b/Solver_interface/include/CGAL/Diagonalize_traits.h index c4754bed5e9..ee8e25b949b 100644 --- a/Solver_interface/include/CGAL/Diagonalize_traits.h +++ b/Solver_interface/include/CGAL/Diagonalize_traits.h @@ -42,7 +42,7 @@ namespace CGAL { /// \tparam FT Number type /// \tparam dim Dimension of the matrices and vectors /// -/// \cgalModels `DiagonalizeTraits` +/// \cgalModels{DiagonalizeTraits} template class Diagonalize_traits { diff --git a/Solver_interface/include/CGAL/Eigen_diagonalize_traits.h b/Solver_interface/include/CGAL/Eigen_diagonalize_traits.h index 2138c377e42..7572299b622 100644 --- a/Solver_interface/include/CGAL/Eigen_diagonalize_traits.h +++ b/Solver_interface/include/CGAL/Eigen_diagonalize_traits.h @@ -51,7 +51,7 @@ struct Restricted_FT { typedef float type; }; /// \tparam FT Number type /// \tparam dim Dimension of the matrices and vectors /// -/// \cgalModels `DiagonalizeTraits` +/// \cgalModels{DiagonalizeTraits} /// /// \sa https://eigen.tuxfamily.org/index.php?title=Main_Page template diff --git a/Solver_interface/include/CGAL/Eigen_matrix.h b/Solver_interface/include/CGAL/Eigen_matrix.h index 4f28c3f7c6f..5fbbac62b7d 100644 --- a/Solver_interface/include/CGAL/Eigen_matrix.h +++ b/Solver_interface/include/CGAL/Eigen_matrix.h @@ -25,7 +25,7 @@ namespace CGAL { The class `Eigen_matrix` is a wrapper around `Eigen` matrix type `Eigen::Matrix`. -\cgalModels `SvdTraits::Matrix` +\cgalModels{SvdTraits::Matrix} \tparam T Number type. \tparam D1 Number of rows, or Dynamic diff --git a/Solver_interface/include/CGAL/Eigen_solver_traits.h b/Solver_interface/include/CGAL/Eigen_solver_traits.h index 428c33bad73..87e20f3eeb1 100644 --- a/Solver_interface/include/CGAL/Eigen_solver_traits.h +++ b/Solver_interface/include/CGAL/Eigen_solver_traits.h @@ -68,7 +68,7 @@ struct Get_eigen_matrix< ::Eigen::SparseLU, FT> The class `Eigen_solver_traits` provides an interface to the sparse solvers of \ref thirdpartyEigen "Eigen". \ref thirdpartyEigen "Eigen" version 3.1 (or later) must be available on the system. -\cgalModels `SparseLinearAlgebraWithFactorTraits_d` and `NormalEquationSparseLinearAlgebraTraits_d` +\cgalModels{SparseLinearAlgebraWithFactorTraits_d,NormalEquationSparseLinearAlgebraTraits_d} \tparam EigenSolverT A sparse solver of \ref thirdpartyEigen "Eigen". The default solver is the iterative bi-conjugate gradient stabilized solver `Eigen::BiCGSTAB` for `double`. diff --git a/Solver_interface/include/CGAL/Eigen_sparse_matrix.h b/Solver_interface/include/CGAL/Eigen_sparse_matrix.h index 20e8962bb15..c0f9d40bfa0 100644 --- a/Solver_interface/include/CGAL/Eigen_sparse_matrix.h +++ b/Solver_interface/include/CGAL/Eigen_sparse_matrix.h @@ -24,7 +24,7 @@ The class `Eigen_sparse_matrix` is a wrapper around `Eigen` matrix type `Eigen::SparseMatrix` that represents general matrices, be they symmetric or not. -\cgalModels `SparseLinearAlgebraTraits_d::Matrix` +\cgalModels{SparseLinearAlgebraTraits_d::Matrix} \tparam T Number type. @@ -305,7 +305,7 @@ The class `Eigen_sparse_symmetric_matrix` is a wrapper around `Eigen` matrix typ Since the matrix is symmetric, only the lower triangle part is stored. -\cgalModels `SparseLinearAlgebraTraits_d::Matrix` +\cgalModels{SparseLinearAlgebraTraits_d::Matrix} \tparam T Number type. diff --git a/Solver_interface/include/CGAL/Eigen_svd.h b/Solver_interface/include/CGAL/Eigen_svd.h index 276812001b8..252382860bf 100644 --- a/Solver_interface/include/CGAL/Eigen_svd.h +++ b/Solver_interface/include/CGAL/Eigen_svd.h @@ -31,7 +31,7 @@ The class `Eigen_svd` provides an algorithm to solve in the least square sense a linear system with a singular value decomposition using \ref thirdpartyEigen. -\cgalModels `SvdTraits` +\cgalModels{SvdTraits} */ class Eigen_svd diff --git a/Solver_interface/include/CGAL/Eigen_vector.h b/Solver_interface/include/CGAL/Eigen_vector.h index b50ac037eff..313046c6010 100644 --- a/Solver_interface/include/CGAL/Eigen_vector.h +++ b/Solver_interface/include/CGAL/Eigen_vector.h @@ -23,8 +23,7 @@ The class `Eigen_vector` is a wrapper around `Eigen` vector type, which is a simple array of numbers. -\cgalModels `SvdTraits::Vector` -\cgalModels `SparseLinearAlgebraTraits_d::Vector`. +\cgalModels{SvdTraits::Vector,SparseLinearAlgebraTraits_d::Vector} \tparam T Number type. diff --git a/Solver_interface/include/CGAL/GLPK_mixed_integer_program_traits.h b/Solver_interface/include/CGAL/GLPK_mixed_integer_program_traits.h index 1218679b04a..05f46dc378f 100644 --- a/Solver_interface/include/CGAL/GLPK_mixed_integer_program_traits.h +++ b/Solver_interface/include/CGAL/GLPK_mixed_integer_program_traits.h @@ -56,7 +56,7 @@ int bound_type(FT lb, FT ub) /// `CGAL::SCIP_mixed_integer_program_traits`, or derive a new /// model from `CGAL::Mixed_integer_program_traits`. /// -/// \cgalModels `MixedIntegerProgramTraits` +/// \cgalModels{MixedIntegerProgramTraits} /// /// \sa `SCIP_mixed_integer_program_traits` template diff --git a/Solver_interface/include/CGAL/Mixed_integer_program_traits.h b/Solver_interface/include/CGAL/Mixed_integer_program_traits.h index 472e6dbc609..4748f3150a1 100644 --- a/Solver_interface/include/CGAL/Mixed_integer_program_traits.h +++ b/Solver_interface/include/CGAL/Mixed_integer_program_traits.h @@ -100,7 +100,7 @@ namespace CGAL { /// /// The variable of a mixed integer program. /// - /// \cgalModels `MixedIntegerProgramVariable` + /// \cgalModels{MixedIntegerProgramVariable} template class Variable : public Solver_entry, public Bound { @@ -199,7 +199,7 @@ namespace CGAL { /// /// The linear constraint of a mixed integer program. /// - /// \cgalModels `MixedIntegerProgramLinearConstraint` + /// \cgalModels{MixedIntegerProgramLinearConstraint} template class Linear_constraint : public Linear_expression, public Bound { @@ -231,7 +231,7 @@ namespace CGAL { /// /// The linear objective of a mixed integer program. /// - /// \cgalModels `MixedIntegerProgramLinearObjective` + /// \cgalModels{MixedIntegerProgramLinearObjective} /// template class Linear_objective : public Linear_expression @@ -281,7 +281,7 @@ namespace CGAL { /// \tparam FT Number type /// \endcond /// - /// \cgalModels `MixedIntegerProgramTraits` + /// \cgalModels{MixedIntegerProgramTraits} template class Mixed_integer_program_traits { diff --git a/Solver_interface/include/CGAL/OSQP_quadratic_program_traits.h b/Solver_interface/include/CGAL/OSQP_quadratic_program_traits.h index 261c4c514b0..46308431ea7 100644 --- a/Solver_interface/include/CGAL/OSQP_quadratic_program_traits.h +++ b/Solver_interface/include/CGAL/OSQP_quadratic_program_traits.h @@ -48,7 +48,7 @@ namespace CGAL { type is used. After the optimization is complete, the `OSQPFloat` type is converted back to `FT`. See more about `OSQPFloat` here. - \cgalModels `QuadraticProgramTraits` + \cgalModels{QuadraticProgramTraits} */ template class OSQP_quadratic_program_traits diff --git a/Solver_interface/include/CGAL/SCIP_mixed_integer_program_traits.h b/Solver_interface/include/CGAL/SCIP_mixed_integer_program_traits.h index 734a32b192e..588da9bb9fb 100644 --- a/Solver_interface/include/CGAL/SCIP_mixed_integer_program_traits.h +++ b/Solver_interface/include/CGAL/SCIP_mixed_integer_program_traits.h @@ -36,7 +36,7 @@ namespace CGAL { /// constrained or unconstrained mixed integer programs using /// \ref thirdpartySCIP (which must be available on the system). /// -/// \cgalModels `MixedIntegerProgramTraits` +/// \cgalModels{MixedIntegerProgramTraits} /// /// \sa `GLPK_mixed_integer_program_traits` template diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h index 720ddf07410..31544634d5c 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h @@ -10,7 +10,7 @@ To optimize distance computations squared distances are used. \tparam Traits must be a model of the concept `SearchTraits`, for example `Search_traits_2 >`. -\cgalModels `OrthogonalDistance` +\cgalModels{OrthogonalDistance} \sa `OrthogonalDistance` \sa `CGAL::Weighted_Minkowski_distance` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance_sphere_point.h b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance_sphere_point.h index 80ff3473229..d0eb8daacf4 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance_sphere_point.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance_sphere_point.h @@ -13,7 +13,7 @@ Euclidean distance between a \f$ d\f$-dimensional sphere and a \tparam Traits must be a model of the concept `SearchTraits`, for example `Simple_cartesian_d`. -\cgalModels `GeneralDistance` +\cgalModels{GeneralDistance} \sa `GeneralDistance` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h index 298c72cf667..9ddb9d11ca3 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h @@ -16,7 +16,7 @@ as follows: \tparam Traits must be a model of the concept `SearchTraits`, for example `CGAL::Search_traits_2 >`. -\cgalModels `FuzzyQueryItem` +\cgalModels{FuzzyQueryItem} */ template< typename Traits > class Fuzzy_iso_box { diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h index dac7c110cb0..2b1c7368826 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h @@ -20,7 +20,7 @@ inner approximation. \tparam Traits must be a model of the concept `SearchTraits`, for example `CGAL::Cartesian_d`. -\cgalModels `FuzzyQueryItem` +\cgalModels{FuzzyQueryItem} */ template< typename Traits > class Fuzzy_sphere { diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Manhattan_distance_iso_box_point.h b/Spatial_searching/doc/Spatial_searching/CGAL/Manhattan_distance_iso_box_point.h index 3f97520fd01..dd346747b6b 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Manhattan_distance_iso_box_point.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Manhattan_distance_iso_box_point.h @@ -13,7 +13,7 @@ and a `d`-dimensional iso-box defined as a `k-d` tree rectangle. \tparam Traits must be a model for the concept `SearchTraits`, for example `Search_traits_3 >`. -\cgalModels `GeneralDistance` +\cgalModels{GeneralDistance} \sa `GeneralDistance` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Plane_separator.h b/Spatial_searching/doc/Spatial_searching/CGAL/Plane_separator.h index a2b010c77a1..e206f669fc0 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Plane_separator.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Plane_separator.h @@ -9,7 +9,7 @@ hyperplane that is used to separate two half spaces. This hyperplane is defined by a cutting dimension `d` and a cutting value `v` as `xd=v`, where `v` denotes the `d`th coordinate value. -\cgalModels `SpatialSeparator` +\cgalModels{SpatialSeparator} */ template< typename FT > diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits.h index 3493d48d4de..c6039d68716 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits.h @@ -6,7 +6,7 @@ namespace CGAL { The class `Search_traits` can be used as a template parameter of the kd tree and the search classes. It is a mere wrapper for the geometric types needed by these classes. -\cgalModels `SearchTraits` +\cgalModels{SearchTraits} \sa `Search_traits_2` \sa `Search_traits_3` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h index 9e63afc17a3..7efffca47bf 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h @@ -9,8 +9,7 @@ and the search classes. \tparam SearchGeomTraits must be a model of the concept `SearchGeomTraits_2`, for example `Simple_cartesian` or `Simple_cartesian`. -\cgalModels `SearchTraits` -\cgalModels `RangeSearchTraits` +\cgalModels{SearchTraits,RangeSearchTraits} \sa `Search_traits_3` \sa `Search_traits` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h index 75dcda8229e..5862d6fe6d4 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h @@ -9,8 +9,7 @@ and the search classes. \tparam GeomTraits must be a model of the concept `SearchGeomTraits_3`, for example `Simple_cartesian` or `Simple_cartesian`. -\cgalModels `SearchTraits` -\cgalModels `RangeSearchTraits` +\cgalModels{SearchTraits,RangeSearchTraits} \sa `Search_traits_2` \sa `Search_traits` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h index 78ed637466b..646ecf4b4a8 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h @@ -16,8 +16,8 @@ with `Key` as key type and `Base_distance::Point_d` as value type. \tparam Base_distance is a model of either `GeneralDistance` or `OrthogonalDistance`. -\cgalModels `GeneralDistance` if Base_distance is a model of `GeneralDistance` -\cgalModels `OrthogonalDistance` if Base_distance is a model of `OrthogonalDistance` +\cgalModels{GeneralDistance if Base_distance is a model of `GeneralDistance`, + OrthogonalDistance if Base_distance is a model of `OrthogonalDistance`} \sa `Search_traits_adapter` @@ -87,8 +87,8 @@ with `Key` as `key_type` and `Base_distance::Point_d` as `value_type`. \tparam BaseTraits is a model of either `SearchTraits` or `RangeSearchTraits`. -\cgalModels `SearchTraits` if `BaseTraits` is a model of `SearchTraits`. -\cgalModels `RangeSearchTraits` if `BaseTraits` is a model of `RangeSearchTraits`. +\cgalModels{SearchTraits if `BaseTraits` is a model of `SearchTraits`., + RangeSearchTraits if `BaseTraits` is a model of `RangeSearchTraits`.} \sa `Distance_adapter` \sa `Search_traits_2` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h index a25f1e96796..0dba1c583ee 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h @@ -11,8 +11,7 @@ and the search classes. \tparam Dim must be a `Dimension_tag` (default value is `Dynamic_dimension_tag`). -\cgalModels `SearchTraits` -\cgalModels `RangeSearchTraits` +\cgalModels{SearchTraits,RangeSearchTraits} \sa `Search_traits_2` \sa `Search_traits_3` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h b/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h index dc0a8248824..11f6ffda322 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h @@ -20,7 +20,7 @@ the concept `SearchTraits`, for example `CGAL::Search_traits_2`. \tparam SpatialSeparator must be a model of the concept `SpatialSeparator`. It has as default value the type `Plane_separator`. -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -78,7 +78,7 @@ the type `CGAL::Search_traits_3< Cartesian >`. Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator`. -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -125,7 +125,7 @@ the type `CGAL::Search_traits_3< Cartesian >`. Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator`. -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -171,7 +171,7 @@ the type `CGAL::Search_traits_3< Cartesian >`. Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator` -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -216,7 +216,7 @@ the type `CGAL::Search_traits_3< Cartesian >`. Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator` -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -279,7 +279,7 @@ for example `CGAL::Cartesian_d`. Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator` -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` @@ -351,7 +351,7 @@ Expects for the first template argument a model of the concept Expects for the second template argument a model of the concept `SpatialSeparator`. It has as default value the type, `CGAL::Plane_separator`. -\cgalModels `Splitter` +\cgalModels{Splitter} \sa `Splitter` \sa `SpatialSeparator` diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h b/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h index 80dd8677699..01041c94401 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h @@ -16,7 +16,7 @@ done exact but with floating point arithmetic. \tparam Traits must be a model of the concept `SearchTraits`, for example `Search_traits_2`. -\cgalModels `OrthogonalDistance` +\cgalModels{OrthogonalDistance} \sa `OrthogonalDistance` \sa `CGAL::Euclidean_distance` diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/Hilbert_policy_tags.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/Hilbert_policy_tags.h index fcad7194a58..e6d34441b73 100644 --- a/Spatial_sorting/doc/Spatial_sorting/CGAL/Hilbert_policy_tags.h +++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/Hilbert_policy_tags.h @@ -9,8 +9,7 @@ in order to specify the strategy for spatial sorting. `Hilbert_policy` can be passed to as parameter to `hilbert_sort()` to choose the sorting policy. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Middle` \sa `Hilbert_policy` @@ -27,8 +26,7 @@ in order to specify the strategy for spatial sorting. `Hilbert_policy` can be passed to as parameter to `hilbert_sort()` to choose the sorting policy. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Median` \sa `Hilbert_policy` @@ -47,8 +45,7 @@ can be passed as parameter to `hilbert_sort()` to choose the sorting policy. \tparam Tag must be either `Median` or `Middle`. -\cgalModels `DefaultConstructible` -\cgalModels `CopyConstructible` +\cgalModels{DefaultConstructible,CopyConstructible} \sa `Median` \sa `Middle` diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_2.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_2.h index 92b8a1ff2c7..eb67bdc3b80 100644 --- a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_2.h +++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_2.h @@ -13,7 +13,7 @@ while the actual point type is `Base_traits::Point_2`. \tparam PointPropertyMap must be a model of `ReadablePropertyMap` with value type `Base_traits::Point_2`. -\cgalModels `SpatialSortingTraits_2` +\cgalModels{SpatialSortingTraits_2} */ template< typename Base_traits, typename PointPropertyMap > class Spatial_sort_traits_adapter_2 : public Base_traits { diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_3.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_3.h index 242620de70d..f10db637acc 100644 --- a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_3.h +++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_3.h @@ -13,7 +13,7 @@ while the actual point type is `Base_traits::Point_3`. \tparam PointPropertyMap must be a model of `ReadablePropertyMap` with value type `Base_traits::Point_3`. -\cgalModels `SpatialSortingTraits_3` +\cgalModels{SpatialSortingTraits_3} */ template< typename Base_traits, typename PointPropertyMap > diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_d.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_d.h index ca5479c2c38..6dde64ad80b 100644 --- a/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_d.h +++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/Spatial_sort_traits_adapter_d.h @@ -13,7 +13,7 @@ while the actual point type is `Base_traits::Point_d`. \tparam PointPropertyMap must be a model of `ReadablePropertyMap` with value type `Base_traits::Point_d`. -\cgalModels `SpatialSortingTraits_d` +\cgalModels{SpatialSortingTraits_d} */ template< typename Base_traits, typename PointPropertyMap > diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Polygon_offset_builder_traits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Polygon_offset_builder_traits_2.h index 148efbf52f5..09a9caddeb1 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Polygon_offset_builder_traits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Polygon_offset_builder_traits_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Classes -\cgalModels `PolygonOffsetBuilderTraits_2` +\cgalModels{PolygonOffsetBuilderTraits_2} The class `Polygon_offset_builder_traits_2` provides a model for the concept `PolygonOffsetBuilderTraits_2`, which is the traits class diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_2.h index 2c386eae936..727da054561 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Classes -\cgalModels `StraightSkeleton_2` +\cgalModels{StraightSkeleton_2} \brief The class `Straight_skeleton_2` provides a model for the `StraightSkeleton_2` concept which is the class type used to represent a straight skeleton. diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_2.h index 9b69d3cc9f7..65eab3b3333 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_2.h @@ -12,7 +12,7 @@ type required by the `Straight_skeleton_builder_2` algorithm class. This class is the default visitor parameter of the straight skeleton builder. All its methods are empty. -\cgalModels `StraightSkeletonBuilder_2_Visitor` +\cgalModels{StraightSkeletonBuilder_2_Visitor} \sa `Straight_skeleton_builder_2` */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_traits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_traits_2.h index 0b79000692e..656ecf75b30 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_traits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_builder_traits_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Classes -\cgalModels `StraightSkeletonBuilderTraits_2` +\cgalModels{StraightSkeletonBuilderTraits_2} The class `Straight_skeleton_builder_traits_2` provides a model for the concept `StraightSkeletonBuilderTraits_2`, which is the traits class diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_converter_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_converter_2.h index d3ff08ad9f4..4a5cdfc9a23 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_converter_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_converter_2.h @@ -87,7 +87,7 @@ boost::shared_ptr operator()( const Source_skeleton& s) const; /*! \ingroup PkgStraightSkeleton2Auxiliary -\cgalModels `StraightSkeletonItemsConverter_2` +\cgalModels{StraightSkeletonItemsConverter_2} `Straight_skeleton_items_converter_2` is a model of the `StraightSkeletonItemsConverter_2` concept diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_face_base_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_face_base_2.h index 51e8e003fbb..bc13c7b0fa7 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_face_base_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_face_base_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Auxiliary -\cgalModels `StraightSkeletonFace_2` +\cgalModels{StraightSkeletonFace_2} The class `Straight_skeleton_face_base_2` provides a model for the concept `StraightSkeletonFace_2`, which is the face type required by the `StraightSkeleton_2` concept. diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_halfedge_base_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_halfedge_base_2.h index ee4f67fe648..ce86de1a3ab 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_halfedge_base_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_halfedge_base_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Auxiliary -\cgalModels `StraightSkeletonHalfedge_2` +\cgalModels{StraightSkeletonHalfedge_2} The class `Straight_skeleton_halfedge_base_2` provides a model for the concept `StraightSkeletonHalfedge_2`, which is the halfedge type required by the `StraightSkeleton_2` concept. diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_vertex_base_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_vertex_base_2.h index fb30f495c46..5f104bf8378 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_vertex_base_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/Straight_skeleton_vertex_base_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgStraightSkeleton2Auxiliary -\cgalModels `StraightSkeletonVertex_2` +\cgalModels{StraightSkeletonVertex_2} The class `Straight_skeleton_vertex_base_2` provides a model for the `StraightSkeletonVertex_2` concept which is the vertex type required by the `StraightSkeleton_2` concept. diff --git a/Stream_lines_2/doc/Stream_lines_2/CGAL/Euler_integrator_2.h b/Stream_lines_2/doc/Stream_lines_2/CGAL/Euler_integrator_2.h index 8562be8184e..2769141eb0b 100644 --- a/Stream_lines_2/doc/Stream_lines_2/CGAL/Euler_integrator_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/CGAL/Euler_integrator_2.h @@ -7,7 +7,7 @@ This class implements the first order Euler integrator. \tparam VectorField_2 has to be instantiated by a model of the concept `VectorField_2`. -\cgalModels `Integrator_2` +\cgalModels{Integrator_2} \sa `Runge_kutta_integrator_2` diff --git a/Stream_lines_2/doc/Stream_lines_2/CGAL/Regular_grid_2.h b/Stream_lines_2/doc/Stream_lines_2/CGAL/Regular_grid_2.h index b690baa7951..398f6d62068 100644 --- a/Stream_lines_2/doc/Stream_lines_2/CGAL/Regular_grid_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/CGAL/Regular_grid_2.h @@ -11,7 +11,7 @@ vector value is interpolated from the vertices of `c`). \tparam StreamLinesTraits_2 has to instantiated by a model of the concept `StreamLinesTraits_2`. -\cgalModels `VectorField_2` +\cgalModels{VectorField_2} \sa `Triangular_field_2` diff --git a/Stream_lines_2/doc/Stream_lines_2/CGAL/Runge_kutta_integrator_2.h b/Stream_lines_2/doc/Stream_lines_2/CGAL/Runge_kutta_integrator_2.h index f0624e01384..4ea9c7fc4f7 100644 --- a/Stream_lines_2/doc/Stream_lines_2/CGAL/Runge_kutta_integrator_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/CGAL/Runge_kutta_integrator_2.h @@ -7,7 +7,7 @@ This class implements the second order Runge-Kutta integrator. \tparam VectorField_2 has to be instantiated by a model of the concept `VectorField_2`. -\cgalModels `Integrator_2` +\cgalModels{Integrator_2} \sa `Euler_integrator_2` diff --git a/Stream_lines_2/doc/Stream_lines_2/CGAL/Triangular_field_2.h b/Stream_lines_2/doc/Stream_lines_2/CGAL/Triangular_field_2.h index fda0a8cc7e9..1758f1c6ef6 100644 --- a/Stream_lines_2/doc/Stream_lines_2/CGAL/Triangular_field_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/CGAL/Triangular_field_2.h @@ -12,7 +12,7 @@ vertices of the face `f`. \tparam StreamLinesTraits_2 has to be instantiated by a model of the concept `StreamLinesTraits_2`. -\cgalModels `VectorField_2` +\cgalModels{VectorField_2} \sa `Regular_grid_2` diff --git a/Stream_support/include/CGAL/IO/Istream_iterator.h b/Stream_support/include/CGAL/IO/Istream_iterator.h index 04a2d93cad9..1ae51232129 100644 --- a/Stream_support/include/CGAL/IO/Istream_iterator.h +++ b/Stream_support/include/CGAL/IO/Istream_iterator.h @@ -28,7 +28,7 @@ The class `Istream_iterator` is an input iterator adaptor for the input stream class `Stream` and value type `T`. It is particularly useful for classes that are similar but not compatible to `std::istream`. -\cgalModels `InputIterator` +\cgalModels{InputIterator} */ template class Istream_iterator diff --git a/Stream_support/include/CGAL/IO/Ostream_iterator.h b/Stream_support/include/CGAL/IO/Ostream_iterator.h index 8d3911471cf..4bdeaa6689b 100644 --- a/Stream_support/include/CGAL/IO/Ostream_iterator.h +++ b/Stream_support/include/CGAL/IO/Ostream_iterator.h @@ -46,7 +46,7 @@ public: The class `Ostream_iterator` is an output iterator adaptor for the output stream class `Stream` and value type `T`. -\cgalModels `OutputIterator` +\cgalModels{OutputIterator} \cgalHeading{Implementation} diff --git a/Subdivision_method_3/include/CGAL/Subdivision_method_3/subdivision_masks_3.h b/Subdivision_method_3/include/CGAL/Subdivision_method_3/subdivision_masks_3.h index af0d0d3e22a..af9edb11968 100644 --- a/Subdivision_method_3/include/CGAL/Subdivision_method_3/subdivision_masks_3.h +++ b/Subdivision_method_3/include/CGAL/Subdivision_method_3/subdivision_masks_3.h @@ -142,7 +142,7 @@ such as `Polyhedron_3` and `Surface_mesh`. \image html CCBorderMask.svg -\cgalModels `PQQMask_3` +\cgalModels{PQQMask_3} \sa `CGAL::Subdivision_method_3` */ @@ -266,7 +266,7 @@ such as `Polyhedron_3` and `Surface_mesh`. \image html LoopBorderMask.png \image latex LoopBorderMask.png -\cgalModels `PTQMask_3` +\cgalModels{PTQMask_3} \sa `CGAL::Subdivision_method_3` @@ -429,7 +429,7 @@ such as `Polyhedron_3` and `Surface_mesh`. \image html DSCornerMask.png \image latex DSCornerMask.png -\cgalModels `DQQMask_3` +\cgalModels{DQQMask_3} \sa `CGAL::Subdivision_method_3` @@ -523,7 +523,7 @@ such as `Polyhedron_3` and `Surface_mesh`. \tparam PolygonMesh must be a model of the concept `MutableFaceGraph`. Additionally all faces must be triangles. \tparam VertexPointMap must be a model of `WritablePropertyMap` with value type `Point_3` -\cgalModels `Sqrt3Mask_3` +\cgalModels{Sqrt3Mask_3} \sa `CGAL::Subdivision_method_3` diff --git a/Surface_mesh/include/CGAL/Surface_mesh/Properties.h b/Surface_mesh/include/CGAL/Surface_mesh/Properties.h index 31eea166ee5..1e5c73c84c3 100644 --- a/Surface_mesh/include/CGAL/Surface_mesh/Properties.h +++ b/Surface_mesh/include/CGAL/Surface_mesh/Properties.h @@ -528,7 +528,7 @@ private: /// @tparam Key The key type of the property map. It must be a model of `Index`. /// @tparam Value The value type of the property. /// -/// \cgalModels `LvaluePropertyMap` +/// \cgalModels{LvaluePropertyMap} /// template class Property_map_base diff --git a/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h b/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h index c109f002a3a..559aec265f0 100644 --- a/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h +++ b/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h @@ -325,7 +325,7 @@ namespace CGAL { /// @tparam P The type of the \em point property of a vertex. There is no requirement on `P`, /// besides being default constructible and assignable. /// In typical use cases it will be a 2D or 3D point type. - /// \cgalModels `MutableFaceGraph` and `FaceListGraph` + /// \cgalModels{MutableFaceGraph,FaceListGraph} /// /// \sa \ref PkgBGLConcepts "Graph Concepts" @@ -375,9 +375,7 @@ public: #ifdef DOXYGEN_RUNNING /// This class represents a vertex. - /// \cgalModels `Index` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Index,LessThanComparable,Hashable} /// \sa `Halfedge_index`, `Edge_index`, `Face_index` class Vertex_index { @@ -398,9 +396,7 @@ public: #ifdef DOXYGEN_RUNNING /// This class represents a halfedge. - /// \cgalModels `Index` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Index,LessThanComparable,Hashable} /// \sa `Vertex_index`, `Edge_index`, `Face_index` class Halfedge_index { @@ -422,9 +418,7 @@ public: #ifdef DOXYGEN_RUNNING /// This class represents a face - /// \cgalModels `Index` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Index,LessThanComparable,Hashable} /// \sa `Vertex_index`, `Halfedge_index`, `Edge_index` class Face_index { @@ -444,9 +438,7 @@ public: #ifdef DOXYGEN_RUNNING /// This class represents an edge. - /// \cgalModels `Index` - /// \cgalModels `LessThanComparable` - /// \cgalModels `Hashable` + /// \cgalModels{Index,LessThanComparable,Hashable} /// \sa `Vertex_index`, `Halfedge_index`, `Face_index` class Edge_index { diff --git a/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L21_metric_plane_proxy.h b/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L21_metric_plane_proxy.h index 7178bc68f33..e7ea59e67b2 100644 --- a/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L21_metric_plane_proxy.h +++ b/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L21_metric_plane_proxy.h @@ -31,7 +31,7 @@ namespace Surface_mesh_approximation { /// \ingroup PkgTSMARef /// @brief Approximation L21 metric of vector proxy. /// -/// \cgalModels `ErrorMetricProxy` +/// \cgalModels{ErrorMetricProxy} /// /// @tparam TriangleMesh a triangle `FaceGraph` /// @tparam VertexPointMap a class model of `ReadablePropertyMap` with `boost::graph_traits::%vertex_descriptor` diff --git a/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L2_metric_plane_proxy.h b/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L2_metric_plane_proxy.h index 1f3e012ce86..67121dcdcdf 100644 --- a/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L2_metric_plane_proxy.h +++ b/Surface_mesh_approximation/include/CGAL/Surface_mesh_approximation/L2_metric_plane_proxy.h @@ -32,7 +32,7 @@ namespace Surface_mesh_approximation { /// \ingroup PkgTSMARef /// @brief Approximation L2 metric of plane proxy. /// -/// \cgalModels `ErrorMetricProxy` +/// \cgalModels{ErrorMetricProxy} /// /// @tparam TriangleMesh a triangle `FaceGraph` /// @tparam VertexPointMap a class model of `ReadablePropertyMap` with `boost::graph_traits::%vertex_descriptor` diff --git a/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_closest_rotation_traits_3.h b/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_closest_rotation_traits_3.h index 98c938b5fbc..60c52e52e7f 100644 --- a/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_closest_rotation_traits_3.h +++ b/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_closest_rotation_traits_3.h @@ -21,7 +21,7 @@ namespace CGAL { /// A class to compute the closest rotation in Frobenius norm to a 3x3 Matrix using the \link thirdpartyEigen `Eigen` library \endlink. /// The internal computation relies on `Eigen::JacobiSVD<>` solver. /// -/// \cgalModels `DeformationClosestRotationTraits_3` +/// \cgalModels{DeformationClosestRotationTraits_3} class Deformation_Eigen_closest_rotation_traits_3{ public: diff --git a/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h b/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h index 7ffc0cc17d0..a73d8225bdb 100644 --- a/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h +++ b/Surface_mesh_deformation/include/CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h @@ -23,7 +23,7 @@ namespace CGAL { /// The internal computation relies on a hybrid system using the solvers `Eigen::SelfAdjointEigenSolver<>` /// and `Eigen::JacobiSVD<>` (polar decomposition). /// - /// \cgalModels `DeformationClosestRotationTraits_3` + /// \cgalModels{DeformationClosestRotationTraits_3} class Deformation_Eigen_polar_closest_rotation_traits_3 : public Deformation_Eigen_closest_rotation_traits_3{ public: diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/ARAP_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/ARAP_parameterizer_3.h index 485da4c6975..7ff51e70ce0 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/ARAP_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/ARAP_parameterizer_3.h @@ -134,7 +134,7 @@ namespace Surface_mesh_parameterization { /// /// A one-to-one mapping is *not* guaranteed. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Barycentric_mapping_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Barycentric_mapping_parameterizer_3.h index 15ac8ec8aef..12e4e63feb4 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Barycentric_mapping_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Barycentric_mapping_parameterizer_3.h @@ -49,7 +49,7 @@ namespace Surface_mesh_parameterization { /// the matrix `A` for `j` neighbor vertex of `i`, based on Tutte Barycentric /// Mapping method. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Circular_border_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Circular_border_parameterizer_3.h index 321f32b99d5..b2b05c4de7b 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Circular_border_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Circular_border_parameterizer_3.h @@ -50,7 +50,7 @@ namespace Surface_mesh_parameterization { /// `TriangleMesh` class and does not know the parameterization algorithm /// requirements or the kind of sparse linear system used. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// @@ -182,7 +182,7 @@ public: /// algorithm. This class implements only `compute_edge_length()` to compute a /// segment's length. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \sa `CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3` /// \sa `CGAL::Surface_mesh_parameterization::Circular_border_arc_length_parameterizer_3` @@ -231,7 +231,7 @@ public: /// The class `Circular_border_parameterizer_3` implements most of the border /// parameterization algorithm. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_authalic_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_authalic_parameterizer_3.h index a6c7b410a57..52047459ffa 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_authalic_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_authalic_parameterizer_3.h @@ -50,7 +50,7 @@ namespace Surface_mesh_parameterization { /// - implements `compute_w_ij()` to compute `w_ij`, the `(i,j)`-coefficient of the matrix `A` /// for `j` neighbor vertex of `i`, based on Discrete Authalic Parameterization algorithm. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_conformal_map_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_conformal_map_parameterizer_3.h index 7787476e654..7bb75174032 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_conformal_map_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Discrete_conformal_map_parameterizer_3.h @@ -50,7 +50,7 @@ namespace Surface_mesh_parameterization { /// - implements `compute_w_ij()` to compute `w_ij`, the `(i,j)`-coefficient of matrix `A`, /// for `j` neighbor vertex of `i`, based on Discrete Conformal Map method. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph` /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Fixed_border_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Fixed_border_parameterizer_3.h index d32929793c3..cf938045da4 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Fixed_border_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Fixed_border_parameterizer_3.h @@ -64,7 +64,7 @@ namespace Surface_mesh_parameterization { // from the linear systems in order to have a symmetric positive definite // matrix for Tutte Barycentric Mapping and Discrete Conformal Map algorithms. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/LSCM_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/LSCM_parameterizer_3.h index 08b74876715..33252883f1d 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/LSCM_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/LSCM_parameterizer_3.h @@ -57,7 +57,7 @@ namespace Surface_mesh_parameterization { /// of the surface onto a convex polygon (only two pinned vertices are needed /// to ensure a unique solution), but a one-to-one mapping is *not* guaranteed. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/MVC_post_processor_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/MVC_post_processor_3.h index f54e0b4f0ee..d4efce8934d 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/MVC_post_processor_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/MVC_post_processor_3.h @@ -61,7 +61,7 @@ namespace Surface_mesh_parameterization { /// the convexification of the initial (2D) parameterization and the resolution /// of a linear system with coefficients based on Mean Value Coordinates. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Mean_value_coordinates_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Mean_value_coordinates_parameterizer_3.h index bacdd2ea12c..ce0be73bd3e 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Mean_value_coordinates_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Mean_value_coordinates_parameterizer_3.h @@ -49,7 +49,7 @@ namespace Surface_mesh_parameterization { /// for `j` neighbor vertex of `i` based on Floater Mean Value Coordinates parameterization. /// - It implements an optimized version of `is_one_to_one_mapping()`. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Square_border_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Square_border_parameterizer_3.h index b806eb1ead6..cb97d65430a 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Square_border_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Square_border_parameterizer_3.h @@ -61,7 +61,7 @@ namespace Surface_mesh_parameterization { /// `TriangleMesh` class and does not know the parameterization algorithm /// requirements or the kind of sparse linear system used. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// @@ -398,7 +398,7 @@ public: /// if an input border vertex has valence `1` and if it is mapped to the same edge of the square /// as its two adjacent (border) vertices, for example. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \sa `CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3` /// \sa `CGAL::Surface_mesh_parameterization::Square_border_arc_length_parameterizer_3` @@ -470,7 +470,7 @@ protected: /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \sa `CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3` /// \sa `CGAL::Surface_mesh_parameterization::Square_border_uniform_parameterizer_3` diff --git a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Two_vertices_parameterizer_3.h b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Two_vertices_parameterizer_3.h index 88ecb8dc706..17cfb22d3a7 100644 --- a/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Two_vertices_parameterizer_3.h +++ b/Surface_mesh_parameterization/include/CGAL/Surface_mesh_parameterization/Two_vertices_parameterizer_3.h @@ -47,7 +47,7 @@ namespace Surface_mesh_parameterization { /// `TriangleMesh` class and does not know the parameterization algorithm /// requirements or the kind of sparse linear system used. /// -/// \cgalModels `Parameterizer_3` +/// \cgalModels{Parameterizer_3} /// /// \tparam TriangleMesh_ must be a model of `FaceGraph`. /// diff --git a/Surface_mesh_shortest_path/include/CGAL/Surface_mesh_shortest_path/Surface_mesh_shortest_path_traits.h b/Surface_mesh_shortest_path/include/CGAL/Surface_mesh_shortest_path/Surface_mesh_shortest_path_traits.h index 5e2955124f5..1ade946fdc8 100644 --- a/Surface_mesh_shortest_path/include/CGAL/Surface_mesh_shortest_path/Surface_mesh_shortest_path_traits.h +++ b/Surface_mesh_shortest_path/include/CGAL/Surface_mesh_shortest_path/Surface_mesh_shortest_path_traits.h @@ -34,7 +34,7 @@ as required by the `Surface_mesh_shortest_path` class. \tparam TriangleMesh A model of `FaceListGraph` -\cgalModels `SurfaceMeshShortestPathTraits` +\cgalModels{SurfaceMeshShortestPathTraits} */ template < class K, @@ -176,7 +176,7 @@ model which uses an exact Kernel during the unfolding operations to achieve bett \tparam TriangleMesh triangle mesh type -\cgalModels `SurfaceMeshShortestPathTraits` +\cgalModels{SurfaceMeshShortestPathTraits} */ template < class K, diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Edge_collapse_visitor_base.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Edge_collapse_visitor_base.h index b55bfcadf78..47e7d08ff16 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Edge_collapse_visitor_base.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Edge_collapse_visitor_base.h @@ -16,7 +16,7 @@ and hide a non-virtual method in the context of the static polymorphism used in \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `EdgeCollapseSimplificationVisitor` +\cgalModels{EdgeCollapseSimplificationVisitor} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_distance_placement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_distance_placement.h index 5fa7e3c3395..4ecf7aa830d 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_distance_placement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_distance_placement.h @@ -20,7 +20,7 @@ the position is returned. The distance check is performed using an AABB tree and this class thus depends on the package \ref PkgAABBTree. -\cgalModels `GetPlacement` +\cgalModels{GetPlacement} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_filter.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_filter.h index 53cfb706bd6..80569183912 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_filter.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_filter.h @@ -13,7 +13,7 @@ if any triangle in the profile changes the normal by more than 90 degree, in thi \tparam Filter must be a model of the concept `PlacementFilter`. It defaults to a class that does not filter any placement. -\cgalModels `PlacementFilter` +\cgalModels{PlacementFilter} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_placement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_placement.h index 8f08e9a071c..d4ed0a6bc5a 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_placement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Bounded_normal_change_placement.h @@ -15,7 +15,7 @@ triangle in the profile changes the normal by more than 90 degree. \tparam Get_placement_ must be a model of the concept `GetPlacement`. -\cgalModels `GetPlacement` +\cgalModels{GetPlacement} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Constrained_placement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Constrained_placement.h index f9b904bfb3f..0927a25ee68 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Constrained_placement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Constrained_placement.h @@ -13,7 +13,7 @@ is the point of the common vertex. Otherwise the placement is the one computed b \tparam Edge_is_constrained_map_ must be a model of `ReadablePropertyMap` with `Edge_profile::edge_descriptor` as key type and `bool` as value type indicating if an edge is constrained. -\cgalModels `GetPlacement` +\cgalModels{GetPlacement} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_ratio_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_ratio_stop_predicate.h index f4a5378489b..74f19bfb77c 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_ratio_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_ratio_stop_predicate.h @@ -12,7 +12,7 @@ which returns `true` when the relation between the initial and current number of \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} \sa `CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate` \sa `CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate` diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_stop_predicate.h index bef9e2fdba9..b9715e4d5f3 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_stop_predicate.h @@ -11,7 +11,7 @@ which returns `true` when the number of current edges drops below a certain thre \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} \sa `CGAL::Surface_mesh_simplification::Edge_count_stop_predicate` \sa `CGAL::Surface_mesh_simplification::Face_count_stop_predicate` diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_ratio_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_ratio_stop_predicate.h index fed8537304f..366808732b4 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_ratio_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_ratio_stop_predicate.h @@ -5,7 +5,7 @@ namespace Surface_mesh_simplification { /*! \ingroup PkgSurfaceMeshSimplificationRef -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} The class `Edge_count_ratio_stop_predicate` is a model for the `StopPredicate` concept which returns `true` when the relation between the initial and current number of edges drops below a certain ratio. diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_stop_predicate.h index 6e3920dd421..88bb3816732 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_count_stop_predicate.h @@ -4,7 +4,7 @@ namespace Surface_mesh_simplification { /*! \ingroup PkgSurfaceMeshSimplificationRef -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} The class `Edge_count_stop_predicate` is a model for the `StopPredicate` concept, which returns `true` when the number of current edges drops below a certain threshold. diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_cost.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_cost.h index 52c7c54dee8..5b12c537c3b 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_cost.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_cost.h @@ -9,7 +9,7 @@ which computes the collapse cost as the squared length of the edge. \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `GetCost` +\cgalModels{GetCost} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_stop_predicate.h index fbbdffe9064..fa85ec3a9e6 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_length_stop_predicate.h @@ -11,7 +11,7 @@ This predicate is meant to be used with `Edge_length_cost`. \tparam FT is the number type of the point coordinates, and must be equal to `Edge_profile::FT`. -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_ratio_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_ratio_stop_predicate.h index f5154aeb0d8..bfea79b87da 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_ratio_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_ratio_stop_predicate.h @@ -5,7 +5,7 @@ namespace Surface_mesh_simplification { /*! \ingroup PkgSurfaceMeshSimplificationRef -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} The class `Face_count_ratio_stop_predicate` is a model for the `StopPredicate` concept which returns `true` when the relation between the initial and current number of faces drops below a certain ratio. diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_stop_predicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_stop_predicate.h index 8c35a5c35e7..3431bb016ac 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_stop_predicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Face_count_stop_predicate.h @@ -4,7 +4,7 @@ namespace Surface_mesh_simplification { /*! \ingroup PkgSurfaceMeshSimplificationRef -\cgalModels `StopPredicate` +\cgalModels{StopPredicate} The class `Face_count_stop_predicate` is a model for the `StopPredicate` concept, which returns `true` when the number of current faces drops below a certain threshold. diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_cost.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_cost.h index 36e68f95263..8d19df2efb3 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_cost.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_cost.h @@ -9,7 +9,7 @@ It computes the collapse cost following the Lindstrom-Turk strategy \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `GetCost` +\cgalModels{GetCost} \sa `CGAL::Surface_mesh_simplification::LindstromTurk_placement` diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_placement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_placement.h index 20ae3890439..dc606160221 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_placement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_placement.h @@ -11,7 +11,7 @@ a halfedge collapse, following the Lindstrom-Turk strategy \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `GetPlacement` +\cgalModels{GetPlacement} \sa `CGAL::Surface_mesh_simplification::LindstromTurk_cost` diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Midpoint_placement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Midpoint_placement.h index 2cd81de679e..f1bb4339cfb 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Midpoint_placement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Midpoint_placement.h @@ -10,7 +10,7 @@ which computes the placement as the midpoint position along the edge. \tparam TriangleMesh is the type of surface mesh being simplified, and must be a model of the `MutableFaceGraph` and `HalfedgeListGraph` concepts. -\cgalModels `GetPlacement` +\cgalModels{GetPlacement} */ template diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Polyhedral_envelope_filter.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Polyhedral_envelope_filter.h index dadccaa8e4d..b972c0aed3e 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Polyhedral_envelope_filter.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Polyhedral_envelope_filter.h @@ -13,7 +13,7 @@ if any triangle in the profile is not inside the polyhedral envelope, in this or \tparam Filter must be a model of the concept `PlacementFilter`. It defaults to a class that does not filter any placement. -\cgalModels `PlacementFilter` +\cgalModels{PlacementFilter} \sa `Polyhedral_envelope` diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/CGAL/Polygonal_schema_min_items.h b/Surface_mesh_topology/doc/Surface_mesh_topology/CGAL/Polygonal_schema_min_items.h index 06fe49ab963..9e98bf7ad8e 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/CGAL/Polygonal_schema_min_items.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/CGAL/Polygonal_schema_min_items.h @@ -6,7 +6,7 @@ namespace Surface_mesh_topology { The class `Polygonal_schema_min_items` defines a struct with a `std::string` as the information associated with darts, and no attribute is enabled. -\cgalModels `PolygonalSchemaItems` +\cgalModels{PolygonalSchemaItems} \cgalHeading{Example} diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Gray_level_image_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Gray_level_image_3.h index c581de85010..e5482131899 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Gray_level_image_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Gray_level_image_3.h @@ -27,7 +27,7 @@ The library CGAL_ImageIO and therefore `Gray_level_image_3` support several types of 3D images: INRIMAGE (extension .inr[.gz]), GIS (extension .dim, of .ima[.gz]), and ANALYZE (extension .hdr, or .img[.gz]). -\cgalModels `ImplicitFunction` +\cgalModels{ImplicitFunction} \sa `ImplicitFunction` \sa `Implicit_surface_3` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Implicit_surface_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Implicit_surface_3.h index 9755576db70..58bdcf1b224 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Implicit_surface_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Implicit_surface_3.h @@ -27,7 +27,7 @@ mesh traits The number type `Function::FT` has to match the type `Traits::FT`. -\cgalModels `Surface_3` +\cgalModels{Surface_3} \sa `make_surface_mesh` \sa `Surface_mesh_traits_generator_3` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_cell_base_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_cell_base_3.h index 92b02d9034a..2dea730abfe 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_cell_base_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_cell_base_3.h @@ -16,7 +16,7 @@ class. \tparam Cb must be a model of the concept `DelaunayTriangulationCellBase_3` and defaults to `Delaunay_triangulation_cell_base_3`. -\cgalModels `SurfaceMeshCellBase_3` +\cgalModels{SurfaceMeshCellBase_3} \sa `SurfaceMeshComplex_2InTriangulation_3` \sa `Surface_mesh_complex_2_in_triangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_complex_2_in_triangulation_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_complex_2_in_triangulation_3.h index 77146cc110d..4067968a486 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_complex_2_in_triangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_complex_2_in_triangulation_3.h @@ -22,7 +22,7 @@ of the concept `SurfaceMeshVertexBase_3` and `SurfaceMeshCellBase_3` respectively.) -\cgalModels `SurfaceMeshComplex_2InTriangulation_3` +\cgalModels{SurfaceMeshComplex_2InTriangulation_3} \sa `make_surface_mesh` \sa `SurfaceMeshTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_criteria_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_criteria_3.h index 693a1fa8dee..debdac03ce0 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_criteria_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_criteria_3.h @@ -27,7 +27,7 @@ is the distance between the facet circumcenter and the center of its surface Delaunay ball. -\cgalModels `SurfaceMeshFacetsCriteria_3` +\cgalModels{SurfaceMeshFacetsCriteria_3} \sa `make_surface_mesh` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_triangulation_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_triangulation_3.h index b248d1aa865..655dae38d03 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_triangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_default_triangulation_3.h @@ -10,7 +10,7 @@ are models of the concepts `SurfaceMeshVertexBase_3` and `SurfaceMeshCellBase_3` respectively. -\cgalModels `SurfaceMeshTriangulation_3` +\cgalModels{SurfaceMeshTriangulation_3} \sa `Surface_mesh_complex_2_in_triangulation_3` \sa `make_surface_mesh` diff --git a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_vertex_base_3.h b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_vertex_base_3.h index 3a4f9172cc6..f06dc5f2ca1 100644 --- a/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_vertex_base_3.h +++ b/Surface_mesher/doc/Surface_mesher/CGAL/Surface_mesh_vertex_base_3.h @@ -17,7 +17,7 @@ class. and defaults to `Triangulation_vertex_base_3 `. -\cgalModels `SurfaceMeshVertexBase_3` +\cgalModels{SurfaceMeshVertexBase_3} \sa `SurfaceMeshComplex_2InTriangulation_3` \sa `Surface_mesh_complex_2_in_triangulation_3` diff --git a/TDS_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h b/TDS_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h index 4b2569c1607..5c076eed68f 100644 --- a/TDS_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h +++ b/TDS_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h @@ -18,7 +18,7 @@ additional template parameters. \tparam FaceBase must be a model of `TriangulationDSFaceBase_2`. The default is `Triangulation_ds_face_base_2`. -\cgalModels `TriangulationDataStructure_2` +\cgalModels{TriangulationDataStructure_2} \cgalHeading{Modifiers} diff --git a/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_face_base_2.h b/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_face_base_2.h index 85fbc81a185..1380f3fefef 100644 --- a/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_face_base_2.h +++ b/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_face_base_2.h @@ -8,7 +8,7 @@ The class `Triangulation_ds_face_base_2` is a model for the concept `TriangulationDSFaceBase_2` to be used by `Triangulation_data_structure_2`. -\cgalModels `TriangulationDSFaceBase_2` +\cgalModels{TriangulationDSFaceBase_2} \tparam TDS should not be specified (see Section \ref TDS_2TheRebindMechanism and examples) diff --git a/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_vertex_base_2.h b/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_vertex_base_2.h index 96ce87d5e3b..573f1f95180 100644 --- a/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_vertex_base_2.h +++ b/TDS_2/doc/TDS_2/CGAL/Triangulation_ds_vertex_base_2.h @@ -20,7 +20,7 @@ and `Triangulation_ds_vertex_base_2` cannot be plugged in. \tparam TDS should not be specified (see Section \ref TDS_2TheRebindMechanism and examples) -\cgalModels `TriangulationDSVertexBase_2` +\cgalModels{TriangulationDSVertexBase_2} \sa `CGAL::Triangulation_vertex_base_2` \sa `CGAL::Triangulation_ds_face_base_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h index a5daedcbc28..051a1359d2e 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h @@ -106,13 +106,13 @@ typedef unspecified_type Face_data; /*! Handle to a vertex. -\cgalModels `Handle` +\cgalModels{Handle} */ typedef unspecified_type Vertex_handle; /*! Handle to a face. -\cgalModels `Handle` +\cgalModels{Handle} */ typedef unspecified_type Face_handle; diff --git a/TDS_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h b/TDS_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h index b3c8ab7da78..ad6b244555a 100644 --- a/TDS_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h +++ b/TDS_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h @@ -27,7 +27,7 @@ container to store vertices and cells. It can be `Sequential_tag` (use of a `create_vertex()`, `create_cell()`, `delete_vertex()`, and `delete_cell()`. `Sequential_tag` is the default value. -\cgalModels `TriangulationDataStructure_3` +\cgalModels{TriangulationDataStructure_3} The base class `Triangulation_utils_3` defines basic computations on indices of vertices and neighbors of cells. diff --git a/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_cell_base_3.h b/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_cell_base_3.h index c03c936a2cf..763beb19f13 100644 --- a/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_cell_base_3.h +++ b/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_cell_base_3.h @@ -8,7 +8,7 @@ The class `Triangulation_ds_cell_base_3<>` is a model for the concept `TriangulationDSCellBase_3` to be used by `Triangulation_data_structure_3`. -\cgalModels `TriangulationDSCellBase_3` +\cgalModels{TriangulationDSCellBase_3} \tparam TDS should not be specified (see Section \ref tds3cyclic and examples) diff --git a/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_vertex_base_3.h b/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_vertex_base_3.h index 26ad462db9d..0c324aae7a2 100644 --- a/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_vertex_base_3.h +++ b/TDS_3/doc/TDS_3/CGAL/Triangulation_ds_vertex_base_3.h @@ -18,7 +18,7 @@ This base class can be used directly or can serve as a base to derive other base classes with some additional attributes (a color for example) tuned for a specific application. -\cgalModels `TriangulationDSVertexBase_3` +\cgalModels{TriangulationDSVertexBase_3} \tparam TDS should not be specified (see Section \ref tds3cyclic and examples) diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index d8237882726..15f6751141d 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -80,8 +80,7 @@ assigned to a non surface facet. It must match the `Surface_patch_index` of the model of the `MeshDomain_3` concept when used for mesh generation. -\cgalModels `RemeshingCellBase_3` -\cgalModels `SimplicialMeshCellBase_3` +\cgalModels{RemeshingCellBase_3,SimplicialMeshCellBase_3} */ template`. -\cgalModels `RemeshingVertexBase_3` -\cgalModels `SimplicialMeshVertexBase_3` +\cgalModels{RemeshingVertexBase_3,SimplicialMeshVertexBase_3} */ template`. -\cgalModels `TriangulationDataStructure`. In addition, the class +\cgalModels{TriangulationDataStructure. In addition, the class `Triangulation_data_structure` provides the following types and -methods. +methods.} \sa `Triangulation_ds_vertex` \sa `Triangulation_ds_full_cell` diff --git a/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_full_cell.h b/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_full_cell.h index 66c902d0d2d..148985c11b7 100644 --- a/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_full_cell.h +++ b/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_full_cell.h @@ -41,7 +41,7 @@ indices are stored. See the user manual for how to choose the second option. -\cgalModels `TriangulationDSFullCell` +\cgalModels{TriangulationDSFullCell} \cgalHeading{Rebind mechanism} diff --git a/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_vertex.h b/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_vertex.h index 9b77ad04b5d..34cddeb330f 100644 --- a/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_vertex.h +++ b/Triangulation/doc/Triangulation/CGAL/Triangulation_ds_vertex.h @@ -21,7 +21,7 @@ example). \tparam TriangulationDataStructure_ must be a model of the `TriangulationDataStructure` concept. -\cgalModels `TriangulationDSVertex` +\cgalModels{TriangulationDSVertex} \cgalHeading{Rebind mechanism} diff --git a/Triangulation/doc/Triangulation/CGAL/Triangulation_face.h b/Triangulation/doc/Triangulation/CGAL/Triangulation_face.h index bee7d71ed53..9b4d35b4ce0 100644 --- a/Triangulation/doc/Triangulation/CGAL/Triangulation_face.h +++ b/Triangulation/doc/Triangulation/CGAL/Triangulation_face.h @@ -12,7 +12,7 @@ Actually, `Triangulation_face` needs only that this concept defines the types `Vertex_handle`, and `Maximal_dimension`. -\cgalModels `TriangulationDSFace` +\cgalModels{TriangulationDSFace} \sa `TriangulationDSFace` \sa `TriangulationDataStructure` diff --git a/Triangulation/doc/Triangulation/CGAL/Triangulation_full_cell.h b/Triangulation/doc/Triangulation/CGAL/Triangulation_full_cell.h index ba9f68848b1..89e21f5663a 100644 --- a/Triangulation/doc/Triangulation/CGAL/Triangulation_full_cell.h +++ b/Triangulation/doc/Triangulation/CGAL/Triangulation_full_cell.h @@ -27,9 +27,9 @@ The class template `Triangulation_full_cell` accepts that no third parameter be It also accepts the tag `CGAL::Default` as third parameter. In both cases, `TriangulationDSFullCell_` defaults to `CGAL::Triangulation_ds_full_cell<>`. -\cgalModels `TriangulationFullCell` Additionally, the class +\cgalModels{TriangulationFullCell Additionally, the class `Triangulation_full_cell` provides the following types, -constructors and methods: +constructors and methods:} \sa `Triangulation_vertex` \sa `Triangulation_data_structure` diff --git a/Triangulation/doc/Triangulation/CGAL/Triangulation_vertex.h b/Triangulation/doc/Triangulation/CGAL/Triangulation_vertex.h index f3169d6a6d4..631496fa494 100644 --- a/Triangulation/doc/Triangulation/CGAL/Triangulation_vertex.h +++ b/Triangulation/doc/Triangulation/CGAL/Triangulation_vertex.h @@ -27,9 +27,9 @@ class template `Triangulation_vertex` accepts that no third parameter be specifi also accepts the tag `CGAL::Default` as third parameter. In both cases, `TriangulationDSVertex_` defaults to `CGAL::Triangulation_ds_vertex<>`. -\cgalModels `TriangulationVertex` Additionally, the class +\cgalModels{TriangulationVertex Additionally, the class `Triangulation_vertex` provides the following types, constructors -and methods: +and methods:} \sa `Triangulation_full_cell` \sa `Triangulation_data_structure` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_face_base_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_face_base_2.h index f83a733c6f8..e9bf99dc1d4 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_face_base_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_face_base_2.h @@ -8,7 +8,7 @@ The class `Constrained_triangulation_face_base_2` is the default model for the c `ConstrainedTriangulationFaceBase_2` to be used as base face class of constrained triangulations. -\cgalModels `ConstrainedTriangulationFaceBase_2` +\cgalModels{ConstrainedTriangulationFaceBase_2} \tparam Traits must be a geometric traits. diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_face_base_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_face_base_2.h index 0bc93fda7b0..64ef2eda1c7 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_face_base_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_face_base_2.h @@ -16,7 +16,7 @@ of `TriangulationFaceBase_2`. By default, this parameter is instantiated by `Triangulation_face_base_2`. -\cgalModels `RegularTriangulationFaceBase_2` +\cgalModels{RegularTriangulationFaceBase_2} \sa `RegularTriangulationFaceBase_2` \sa `RegularTriangulationTraits_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_vertex_base_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_vertex_base_2.h index 01c0e9522a2..e9e12d70ecd 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_vertex_base_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Regular_triangulation_vertex_base_2.h @@ -15,7 +15,7 @@ of `RegularTriangulationTraits_2`. of the concept `TriangulationVertexBase_2` and is by default instantiated by `Triangulation_vertex_base_2`. -\cgalModels `RegularTriangulationVertexBase_2` +\cgalModels{RegularTriangulationVertexBase_2} \sa `CGAL::Triangulation_vertex_base_2` \sa `CGAL::Regular_triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_2.h index 8f1646c781c..3a943d3aea3 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_2.h @@ -20,7 +20,7 @@ and will serve as a base class for `Triangulation_face_base_2` . \cgal provides a default instantiation for this parameter which is `Triangulation_ds_face_base_2<>`. -\cgalModels `TriangulationFaceBase_2` +\cgalModels{TriangulationFaceBase_2} \sa `CGAL::Triangulation_ds_face_base_2` \sa `CGAL::Triangulation_vertex_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h index b90233f288e..bd099094228 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h @@ -19,9 +19,9 @@ and is actually not used in `Triangulation_face_base_with_info_2` . \tparam Fb is a face base class from which `Triangulation_face_base_with_info_2` derives. -\cgalModels Because `Triangulation_face_base_with_info_2` derives from the class instantiating its third -parameter, it will be a model of the same face base concept as its parameter: -`TriangulationFaceBase_2`, `ConstrainedTriangulationFaceBase_2`, or `RegularTriangulationFaceBase_2` +\cgalModelsBare{Because `Triangulation_face_base_with_info_2` derives from the class instantiating its third +parameter\, it will be a model of the same face base concept as its parameter: +`TriangulationFaceBase_2`\, `ConstrainedTriangulationFaceBase_2`\, or `RegularTriangulationFaceBase_2`} \sa `CGAL::Triangulation_face_base_2` \sa `CGAL::Constrained_triangulation_face_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h index 0d875329b44..4ce0d77cf0e 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h @@ -89,7 +89,7 @@ This design allows to use either the default vertex base class or a user customized vertex base with additional functionalities. -\cgalModels `TriangulationHierarchyVertexBase_2` +\cgalModels{TriangulationHierarchyVertexBase_2} \sa `TriangulationVertexBase_2` \sa `TriangulationHierarchyVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_2.h index fb5d21bd964..97b1cbf3386 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_2.h @@ -22,7 +22,7 @@ the triangulation. By default this parameter is instantiated by `Triangulation_ds_vertex_base_2<>`. -\cgalModels `TriangulationVertexBase_2` +\cgalModels{TriangulationVertexBase_2} \sa `CGAL::Triangulation_ds_vertex_base_2` \sa `CGAL::Triangulation_face_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h index 9d67764d749..6be4bf7ee8e 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h @@ -22,10 +22,10 @@ the triangulation. this parameter is instantiated by `Triangulation_vertex_base_2`. -\cgalModels `TriangulationVertexBaseWithInfo_2` -\cgalModels The parameter `Vb` is a model of some vertex base concept. +\cgalModelsBare{`TriangulationVertexBaseWithInfo_2`, + The parameter `Vb` is a model of some vertex base concept. `Triangulation_vertex_base_with_info_2` derives from `Vb` and will be a model of the -same vertex base concept: `TriangulationVertexBase_2`, or `RegularTriangulationVertexBase_2`. +same vertex base concept: `TriangulationVertexBase_2`\, or `RegularTriangulationVertexBase_2`.} \sa `CGAL::Triangulation_face_base_with_info_2` \sa `CGAL::Triangulation_vertex_base_2` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_3.h index dbfb816794c..1536b61dea4 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_3.h @@ -14,7 +14,7 @@ of Delaunay triangulations. By default, this parameter is instantiated by `Triangulation_cell_base_3`. -\cgalModels `DelaunayTriangulationCellBase_3` +\cgalModels{DelaunayTriangulationCellBase_3} \sa `DelaunayTriangulationCellBase_3` \sa `CGAL::Delaunay_triangulation_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_with_circumcenter_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_with_circumcenter_3.h index 171084a2170..6eba490b631 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_with_circumcenter_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_cell_base_with_circumcenter_3.h @@ -20,7 +20,7 @@ circumcenter. be a model of `DelaunayTriangulationCellBase_3`. It has the default value `Delaunay_triangulation_cell_base_3`. -\cgalModels `DelaunayTriangulationCellBase_3` +\cgalModels{DelaunayTriangulationCellBase_3} \sa `CGAL::Delaunay_triangulation_cell_base_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_3.h index 3d110a67cb2..637595f1e25 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_3.h @@ -15,7 +15,7 @@ derives. It must be a model of `TriangulationCellBase_3`. By default, this parameter is instantiated by `Triangulation_cell_base_3`. -\cgalModels `RegularTriangulationCellBase_3` +\cgalModels{RegularTriangulationCellBase_3} \sa `RegularTriangulationCellBase_3` \sa `CGAL::Regular_triangulation_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_with_weighted_circumcenter_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_with_weighted_circumcenter_3.h index 39d05eb11c6..cbf43c1610c 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_with_weighted_circumcenter_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_cell_base_with_weighted_circumcenter_3.h @@ -20,7 +20,7 @@ circumcenter. be a model of `RegularTriangulationCellBase_3`. It has the default value `Regular_triangulation_cell_base_3`. -\cgalModels `RegularTriangulationCellBaseWithWeightedCircumcenter_3` +\cgalModels{RegularTriangulationCellBaseWithWeightedCircumcenter_3} \sa `CGAL::Triangulation_cell_base_3` \sa `CGAL::Triangulation_cell_base_with_info_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_euclidean_traits_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_euclidean_traits_3.h index 284b2f417a1..725116fb136 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_euclidean_traits_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_euclidean_traits_3.h @@ -13,7 +13,7 @@ compatibility, but ignores the template parameter `Weight`. \tparam Weight This template parameter is ignored, as `Kernel::Weighted_point_3` uses the type `Kernel::FT`. -\cgalModels `RegularTriangulationTraits_3` +\cgalModels{RegularTriangulationTraits_3} */ template< typename K, typename Weight > diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_vertex_base_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_vertex_base_3.h index a8bf3351316..fd4f6b60152 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_vertex_base_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_vertex_base_3.h @@ -24,7 +24,7 @@ the same as the point type defined by the geometric traits class. It must be a model of the `TriangulationDSVertexBase_3` concept. It has the default value `Triangulation_ds_vertex_base_3`. -\cgalModels `RegularTriangulationVertexBase_3` +\cgalModels{RegularTriangulationVertexBase_3} \sa `CGAL::Triangulation_cell_base_3` \sa `CGAL::Triangulation_ds_vertex_base_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_3.h index 555a1d62f84..8ce8ea1ca5d 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_3.h @@ -20,7 +20,7 @@ It is actually not used by this class. It must be a model of the `TriangulationDSCellBase_3` concept. It has the default value `Triangulation_ds_cell_base_3`. -\cgalModels `TriangulationCellBase_3` +\cgalModels{TriangulationCellBase_3} \sa `CGAL::Triangulation_ds_cell_base_3` \sa `CGAL::Triangulation_cell_base_with_info_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_with_info_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_with_info_3.h index fd1d585cf8d..533e1e4326f 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_with_info_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_cell_base_with_info_3.h @@ -22,8 +22,7 @@ It must be a model of the `TriangulationCellBase_3` concept. It has the default value `Triangulation_cell_base_3`. -\cgalModels `TriangulationCellBase_3` -\cgalModels `TriangulationCellBaseWithInfo_3` +\cgalModels{TriangulationCellBase_3,TriangulationCellBaseWithInfo_3} \sa `CGAL::Triangulation_cell_base_3` \sa `CGAL::Triangulation_vertex_base_with_info_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_3.h index df4aa7dff5d..457783e526e 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_3.h @@ -24,7 +24,7 @@ the same as the point type defined by the geometric traits class. It must be a model of the `TriangulationDSVertexBase_3` concept. It has the default value `Triangulation_ds_vertex_base_3`. -\cgalModels `TriangulationVertexBase_3` +\cgalModels{TriangulationVertexBase_3} \sa `CGAL::Triangulation_cell_base_3` \sa `CGAL::Triangulation_ds_vertex_base_3` diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_with_info_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_with_info_3.h index f7fe50c0a85..f552bc5b12a 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_with_info_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_vertex_base_with_info_3.h @@ -19,8 +19,7 @@ to a vertex. It has to be `DefaultConstructible` and `Assignable`. It must be a model of the `TriangulationVertexBase_3` concept. It has the default value `Triangulation_vertex_base_3`. -\cgalModels `TriangulationVertexBase_3` -\cgalModels `TriangulationVertexBaseWithInfo_3` +\cgalModels{TriangulationVertexBase_3,TriangulationVertexBaseWithInfo_3} \sa `CGAL::Triangulation_cell_base_with_info_3` \sa `CGAL::Triangulation_vertex_base_3` diff --git a/Triangulation_3/include/CGAL/Triangulation_segment_traverser_3.h b/Triangulation_3/include/CGAL/Triangulation_segment_traverser_3.h index 904421786ba..13179bf214a 100644 --- a/Triangulation_3/include/CGAL/Triangulation_segment_traverser_3.h +++ b/Triangulation_3/include/CGAL/Triangulation_segment_traverser_3.h @@ -81,7 +81,7 @@ struct Incrementer { * * \tparam Tr_ is the triangulation type to traverse. * - * \cgalModels{ForwardIterator} + * \cgalModels{ForwardIterator} * * \sa `Triangulation_3` * \sa `Forward_circulator_base` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Delaunay_triangulation_on_sphere_traits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Delaunay_triangulation_on_sphere_traits_2.h index 2cbc69936b0..5446ff6b33c 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Delaunay_triangulation_on_sphere_traits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Delaunay_triangulation_on_sphere_traits_2.h @@ -27,7 +27,7 @@ and thus not inserted, or guaranteed to not be hidden upon insertion. \tparam LK a linear kernel type; it must be a model of `Kernel`. \tparam SK a spherical kernel type; it must be a model of `SphericalKernel` refining `LK`. -\cgalModels `DelaunayTriangulationOnSphereTraits_2` +\cgalModels{DelaunayTriangulationOnSphereTraits_2} \sa `CGAL::Projection_on_sphere_traits_3` */ diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Projection_on_sphere_traits_3.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Projection_on_sphere_traits_3.h index 5ae00ff27d4..411e0607616 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Projection_on_sphere_traits_3.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Projection_on_sphere_traits_3.h @@ -12,7 +12,7 @@ and the center of the sphere. \tparam LK a linear kernel type; must be a model of `Kernel`. \tparam SK a spherical kernel type; must be a model of `SphericalKernel`. -\cgalModels `DelaunayTriangulationOnSphereTraits_2` +\cgalModels{DelaunayTriangulationOnSphereTraits_2} \sa `CGAL::Delaunay_triangulation_on_sphere_traits_2` */ diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_face_base_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_face_base_2.h index f81b29f230e..c48abfe0976 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_face_base_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_face_base_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgTriangulationOnSphere2VertexFaceClasses -\cgalModels `TriangulationOnSphereFaceBase_2` +\cgalModels{TriangulationOnSphereFaceBase_2} The class `Triangulation_on_sphere_face_base_2` is a model for the concept `TriangulationOnSphereFaceBase_2`. It is the default face base class diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_vertex_base_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_vertex_base_2.h index 17937c6dd22..1a41322ecc2 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_vertex_base_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/CGAL/Triangulation_on_sphere_vertex_base_2.h @@ -3,7 +3,7 @@ namespace CGAL { /*! \ingroup PkgTriangulationOnSphere2VertexFaceClasses -\cgalModels `TriangulationOnSphereVertexBase_2` +\cgalModels{TriangulationOnSphereVertexBase_2} The class `Triangulation_on_sphere_vertex_base_2` is the default model for the concept `TriangulationOnSphereVertexBase_2` and diff --git a/Visibility_2/doc/Visibility_2/CGAL/Rotational_sweep_visibility_2.h b/Visibility_2/doc/Visibility_2/CGAL/Rotational_sweep_visibility_2.h index 3ad8ae61144..359d9109b6e 100644 --- a/Visibility_2/doc/Visibility_2/CGAL/Rotational_sweep_visibility_2.h +++ b/Visibility_2/doc/Visibility_2/CGAL/Rotational_sweep_visibility_2.h @@ -17,7 +17,7 @@ specified by one of the following: `#Tag_true` or `#Tag_false`, where `#Tag_fals -\cgalModels `Visibility_2` +\cgalModels{Visibility_2} \sa `CGAL::Simple_polygon_visibility_2` \sa `CGAL::Triangular_expansion_visibility_2` diff --git a/Visibility_2/doc/Visibility_2/CGAL/Simple_polygon_visibility_2.h b/Visibility_2/doc/Visibility_2/CGAL/Simple_polygon_visibility_2.h index f073ea8cc24..37fd6c0e0a6 100644 --- a/Visibility_2/doc/Visibility_2/CGAL/Simple_polygon_visibility_2.h +++ b/Visibility_2/doc/Visibility_2/CGAL/Simple_polygon_visibility_2.h @@ -23,7 +23,7 @@ It must be an instance of `CGAL::Arrangement_2`, where its `CGAL::Arrangement_2: specified by one of the following: `#Tag_true` or `#Tag_false`, where `#Tag_false` is the default value. -\cgalModels `Visibility_2` +\cgalModels{Visibility_2} \sa `CGAL::Rotational_sweep_visibility_2` \sa `CGAL::Triangular_expansion_visibility_2` diff --git a/Visibility_2/doc/Visibility_2/CGAL/Triangular_expansion_visibility_2.h b/Visibility_2/doc/Visibility_2/CGAL/Triangular_expansion_visibility_2.h index 178a812957d..0b1d37bbb68 100644 --- a/Visibility_2/doc/Visibility_2/CGAL/Triangular_expansion_visibility_2.h +++ b/Visibility_2/doc/Visibility_2/CGAL/Triangular_expansion_visibility_2.h @@ -17,7 +17,7 @@ It must be an instance of `CGAL::Arrangement_2`, where its `CGAL::Arrangement_2: \tparam RegularizationCategory indicates whether the output should be regularized. It can be specified by one of the following: `#Tag_true` or `#Tag_false`, where `#Tag_false` is the default value. -\cgalModels `Visibility_2` +\cgalModels{Visibility_2} \sa `CGAL::Simple_polygon_visibility_2` \sa `CGAL::Rotational_sweep_visibility_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_policies_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_policies_2.h index 8a1415c9813..187b7975472 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_policies_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_policies_2.h @@ -12,7 +12,7 @@ caches the results of the edge and face rejectors and results in a Voronoi diagram that has no degenerate features, i.e., no Voronoi edges of zero length and no Voronoi faces of zero area. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` @@ -51,7 +51,7 @@ results in a Voronoi diagram that has no degenerate features, i.e., it has no Voronoi edges of zero length and no Voronoi faces of zero area. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_traits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_traits_2.h index 1775a2f3d5a..2305ef96b45 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_traits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Apollonius_graph_adaptation_traits_2.h @@ -9,7 +9,7 @@ concept. The template parameter of the `Apollonius_graph_adaptation_traits_2` cl model of the `DelaunayGraph_2` concept, and in particular it has the semantics of a (triangulated) 2D Apollonius graph. -\cgalModels `AdaptationTraits_2` +\cgalModels{AdaptationTraits_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_policies_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_policies_2.h index 15be0f7a0cd..ede61736fb0 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_policies_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_policies_2.h @@ -12,7 +12,7 @@ caches the results of the edge and face rejectors and results in a Voronoi diagram that has no degenerate features, i.e., no Voronoi edges of zero length. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` @@ -49,7 +49,7 @@ the semantics of a (triangulated) 2D Delaunay triangulation. This policy results in a Voronoi diagram that has no degenerate features, i.e., it has no Voronoi edges of zero length. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_traits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_traits_2.h index b5f085f1614..2473f8e8f52 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_traits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Delaunay_triangulation_adaptation_traits_2.h @@ -9,7 +9,7 @@ concept. The template parameter of the `Delaunay_triangulation_adaptation_traits model of the `DelaunayGraph_2` concept, and in particular it has the semantics of a 2D Delaunay triangulation. -\cgalModels `AdaptationTraits_2` +\cgalModels{AdaptationTraits_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Identity_policy_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Identity_policy_2.h index d373e060c74..ee166aad8c5 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Identity_policy_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Identity_policy_2.h @@ -18,7 +18,7 @@ Delaunay graph, that is adapted, allows for site insertions through an `AT::Site_2`. The site inserter functor provided by this policy uses the aforementioned `insert` method. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_policies_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_policies_2.h index 768fee14c62..d4398de71f7 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_policies_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_policies_2.h @@ -12,7 +12,7 @@ caches the results of the edge and face rejectors and results in a Voronoi diagram that has no degenerate features, i.e., no Voronoi edges of zero length. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` @@ -49,7 +49,7 @@ the semantics of a (triangulated) 2D regular triangulation. This policy results in a power diagram that has no degenerate features, i.e., it has no Voronoi edges of zero length. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_traits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_traits_2.h index 0eb0e4ed6e7..345e8e710d0 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_traits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Regular_triangulation_adaptation_traits_2.h @@ -9,7 +9,7 @@ concept. The template parameter of the `Regular_triangulation_adaptation_traits_ model of the `DelaunayGraph_2` concept, and in particular it has the semantics of a 2D regular triangulation. -\cgalModels `AdaptationTraits_2` +\cgalModels{AdaptationTraits_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_policies_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_policies_2.h index 4c88ca2862d..0baa77ee873 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_policies_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_policies_2.h @@ -12,7 +12,7 @@ caches the results of the edge and face rejectors and results in a Voronoi diagram that has no degenerate features, i.e., no Voronoi edges of zero length and no Voronoi faces of zero area. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` @@ -51,7 +51,7 @@ results in a Voronoi diagram that has no degenerate features, i.e., it has no Voronoi edges of zero length and no Voronoi faces of zero area. -\cgalModels `AdaptationPolicy_2` +\cgalModels{AdaptationPolicy_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_traits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_traits_2.h index e665e0210fd..680dd8b1ea0 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_traits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Segment_Delaunay_graph_adaptation_traits_2.h @@ -9,7 +9,7 @@ concept. The template parameter of the `Segment_Delaunay_graph_adaptation_traits model of the `DelaunayGraph_2` concept, and in particular it has the semantics of the 2D (triangulated) segment Delaunay graph. -\cgalModels `AdaptationTraits_2` +\cgalModels{AdaptationTraits_2} \sa `AdaptationTraits_2` \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Voronoi_diagram_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Voronoi_diagram_2.h index e0dd1cdc461..98b44b7a228 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Voronoi_diagram_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/CGAL/Voronoi_diagram_2.h @@ -39,11 +39,7 @@ public: `Voronoi_diagram_2` class for Voronoi faces. Below we present its interface. - \cgalModels `DefaultConstructible` - \cgalModels `CopyConstructible` - \cgalModels `Assignable` - \cgalModels `EqualityComparable` - \cgalModels `LessThanComparable` + \cgalModels{DefaultConstructible,CopyConstructible,Assignable,EqualityComparable,LessThanComparable} \sa `CGAL::Voronoi_diagram_2` \sa \link CGAL::Voronoi_diagram_2::Vertex `CGAL::Voronoi_diagram_2::Vertex` \endlink @@ -167,11 +163,7 @@ public: `Voronoi_diagram_2` class for Voronoi halfedges. Below we present its interface. - \cgalModels `DefaultConstructible` - \cgalModels `CopyConstructible` - \cgalModels `Assignable` - \cgalModels `EqualityComparable` - \cgalModels `LessThanComparable` + \cgalModels{DefaultConstructible,CopyConstructible,Assignable,EqualityComparable,LessThanComparable} \sa `CGAL::Voronoi_diagram_2` \sa \link CGAL::Voronoi_diagram_2::Vertex `CGAL::Voronoi_diagram_2::Vertex` \endlink @@ -407,11 +399,7 @@ public: The class `Vertex` is the Voronoi vertex class provided by the class `Voronoi_diagram_2` class. Below we present its interface. - \cgalModels `DefaultConstructible` - \cgalModels `CopyConstructible` - \cgalModels `Assignable`, - \cgalModels `EqualityComparable` - \cgalModels `LessThanComparable` + \cgalModels{DefaultConstructible,CopyConstructible,Assignable,,EqualityComparable,LessThanComparable} \sa `CGAL::Voronoi_diagram_2` \sa \link CGAL::Voronoi_diagram_2::Halfedge `CGAL::Voronoi_diagram_2::Halfedge` \endlink diff --git a/Weights/include/CGAL/Weights/discrete_harmonic_weights.h b/Weights/include/CGAL/Weights/discrete_harmonic_weights.h index 6faa6f189c4..9a4243fdd5d 100644 --- a/Weights/include/CGAL/Weights/discrete_harmonic_weights.h +++ b/Weights/include/CGAL/Weights/discrete_harmonic_weights.h @@ -142,7 +142,7 @@ typename Kernel::FT discrete_harmonic_weight(const CGAL::Point_3& p0, \tparam PointMap a model of `ReadablePropertyMap` whose key type is `VertexRange::value_type` and value type is `Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `BarycentricWeights_2` + \cgalModels{BarycentricWeights_2} */ template& p0, \tparam PointMap a model of `ReadablePropertyMap` whose key type is `VertexRange::value_type` and value type is `Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `BarycentricWeights_2` + \cgalModels{BarycentricWeights_2} */ template& p0, \tparam PointMap a model of `ReadablePropertyMap` whose key type is `VertexRange::value_type` and value type is `Point_2`. The default is `CGAL::Identity_property_map`. - \cgalModels `BarycentricWeights_2` + \cgalModels{BarycentricWeights_2} */ template Date: Wed, 12 Jul 2023 14:39:03 +0200 Subject: [PATCH 05/94] Generalize FFG doc: the selection's value_type needs not be faces_size_type --- .../CGAL/boost/graph/Face_filtered_graph.h | 82 +++++++++---------- BGL/test/BGL/test_Face_filtered_graph.cpp | 2 +- 2 files changed, 41 insertions(+), 43 deletions(-) diff --git a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h index e6f4136481d..a412755576e 100644 --- a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h +++ b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h @@ -162,15 +162,14 @@ struct Face_filtered_graph /*! * \brief Constructor where the set of selected faces is specified as a range of patch ids. * - * \tparam FacePatchIndexMap a model of `ReadablePropertyMap` with - `face_descriptor` as key type and - `graph_traits::%faces_size_type` as value type. - * \tparam FacePatchIndexRange a model of `ConstRange` with `boost::property_traits::%value_type` as value type. + * \tparam FacePatchIDMap a model of `ReadablePropertyMap` with `face_descriptor` as key type + * and whose value type is a model of `Hashable`. + * \tparam FacePatchIDRange a model of `ConstRange` with `boost::property_traits::%value_type` as value type. * \tparam NamedParameters a sequence of named parameters * * \param graph the underlying graph - * \param face_patch_index_map the property map that assigns a patch index to each face - * \param selected_face_patch_indices a range of the face patch indices to select + * \param face_patch_id_map the property map that assigns a patch index to each face + * \param selected_face_patch_ids a range of the face patch indices to select * \param np an optional sequence of \ref bgl_namedparameters "Named Parameters" among the ones listed below * * \cgalNamedParamsBegin @@ -208,14 +207,14 @@ struct Face_filtered_graph * \cgalParamNEnd * \cgalNamedParamsEnd */ - template + template Face_filtered_graph(const Graph& graph, - const FacePatchIndexRange& selected_face_patch_indices, - FacePatchIndexMap face_patch_index_map, + const FacePatchIDRange& selected_face_patch_ids, + FacePatchIDMap face_patch_id_map, const CGAL_NP_CLASS& np #ifndef DOXYGEN_RUNNING , std::enable_if_t< - boost::has_range_const_iterator::value + boost::has_range_const_iterator::value >* = 0 #endif ) @@ -224,15 +223,15 @@ struct Face_filtered_graph vimap(CGAL::get_initialized_vertex_index_map(graph, np)), himap(CGAL::get_initialized_halfedge_index_map(graph, np)) { - set_selected_faces(selected_face_patch_indices, face_patch_index_map); + set_selected_faces(selected_face_patch_ids, face_patch_id_map); } - template + template Face_filtered_graph(const Graph& graph, - const FacePatchIndexRange& selected_face_patch_indices, - FacePatchIndexMap face_patch_index_map + const FacePatchIDRange& selected_face_patch_ids, + FacePatchIDMap face_patch_id_map , std::enable_if_t< - boost::has_range_const_iterator::value + boost::has_range_const_iterator::value >* = 0 ) : _graph(const_cast(graph)), @@ -240,19 +239,18 @@ struct Face_filtered_graph vimap(CGAL::get_initialized_vertex_index_map(graph)), himap(CGAL::get_initialized_halfedge_index_map(graph)) { - set_selected_faces(selected_face_patch_indices, face_patch_index_map); + set_selected_faces(selected_face_patch_ids, face_patch_id_map); } /*! * \brief Constructor where the set of selected faces is specified as a patch id. * - * \tparam FacePatchIndexMap a model of `ReadablePropertyMap` with - `face_descriptor` as key type and - `graph_traits::%faces_size_type` as value type. + * \tparam FacePatchIDMap a model of `ReadablePropertyMap` with `face_descriptor` as key type + * and whose value type is a model of `Hashable`. * \tparam NamedParameters a sequence of named parameters * * \param graph the underlying graph. - * \param face_patch_index_map the property map that assigns a patch index to each face - * \param selected_face_patch_index the index of the face patch selected + * \param face_patch_id_map the property map that assigns a patch index to each face + * \param selected_face_patch_id the index of the face patch selected * \param np an optional sequence of \ref bgl_namedparameters "Named Parameters" among the ones listed below * * \cgalNamedParamsBegin @@ -290,29 +288,29 @@ struct Face_filtered_graph * \cgalParamNEnd * \cgalNamedParamsEnd */ - template + template Face_filtered_graph(const Graph& graph, - typename boost::property_traits::value_type selected_face_patch_index, - FacePatchIndexMap face_patch_index_map, + typename boost::property_traits::value_type selected_face_patch_id, + FacePatchIDMap face_patch_id_map, const CGAL_NP_CLASS& np) : _graph(const_cast(graph)), fimap(CGAL::get_initialized_face_index_map(graph, np)), vimap(CGAL::get_initialized_vertex_index_map(graph, np)), himap(CGAL::get_initialized_halfedge_index_map(graph, np)) { - set_selected_faces(selected_face_patch_index, face_patch_index_map); + set_selected_faces(selected_face_patch_id, face_patch_id_map); } - template + template Face_filtered_graph(const Graph& graph, - typename boost::property_traits::value_type pid, - FacePatchIndexMap face_patch_index_map) + typename boost::property_traits::value_type pid, + FacePatchIDMap face_patch_id_map) : _graph(const_cast(graph)), fimap(CGAL::get_initialized_face_index_map(graph)), vimap(CGAL::get_initialized_vertex_index_map(graph)), himap(CGAL::get_initialized_halfedge_index_map(graph)) { - set_selected_faces(pid, face_patch_index_map); + set_selected_faces(pid, face_patch_id_map); } /*! @@ -438,9 +436,9 @@ struct Face_filtered_graph } /// changes the set of selected faces using a patch id. - template - void set_selected_faces(typename boost::property_traits::value_type face_patch_id, - FacePatchIndexMap face_patch_index_map) + template + void set_selected_faces(typename boost::property_traits::value_type face_patch_id, + FacePatchIDMap face_patch_id_map) { selected_faces.resize(num_faces(_graph)); selected_vertices.resize(num_vertices(_graph)); @@ -452,7 +450,7 @@ struct Face_filtered_graph for(face_descriptor fd : faces(_graph) ) { - if(get(face_patch_index_map, fd) == face_patch_id) + if(get(face_patch_id_map, fd) == face_patch_id) { selected_faces.set(get(fimap, fd)); for(halfedge_descriptor hd : halfedges_around_face(halfedge(fd, _graph), _graph)) @@ -467,12 +465,12 @@ struct Face_filtered_graph reset_indices(); } /// changes the set of selected faces using a range of patch ids - template - void set_selected_faces(const FacePatchIndexRange& selected_face_patch_indices, - FacePatchIndexMap face_patch_index_map + template + void set_selected_faces(const FacePatchIDRange& selected_face_patch_ids, + FacePatchIDMap face_patch_id_map #ifndef DOXYGEN_RUNNING , std::enable_if_t< - boost::has_range_const_iterator::value + boost::has_range_const_iterator::value >* = 0 #endif ) @@ -485,13 +483,13 @@ struct Face_filtered_graph selected_vertices.reset(); selected_halfedges.reset(); - typedef typename boost::property_traits::value_type Patch_index; - std::unordered_set pids(std::begin(selected_face_patch_indices), - std::end(selected_face_patch_indices)); + typedef typename boost::property_traits::value_type Patch_ID; + std::unordered_set pids(std::begin(selected_face_patch_ids), + std::end(selected_face_patch_ids)); - for(face_descriptor fd : faces(_graph) ) + for(face_descriptor fd : faces(_graph)) { - if(pids.count(get(face_patch_index_map, fd)) != 0) + if(pids.count(get(face_patch_id_map, fd)) != 0) { selected_faces.set(get(fimap, fd)); for(halfedge_descriptor hd : halfedges_around_face(halfedge(fd, _graph), _graph)) diff --git a/BGL/test/BGL/test_Face_filtered_graph.cpp b/BGL/test/BGL/test_Face_filtered_graph.cpp index 5dd6521bb02..3cd95dc5668 100644 --- a/BGL/test/BGL/test_Face_filtered_graph.cpp +++ b/BGL/test/BGL/test_Face_filtered_graph.cpp @@ -20,7 +20,7 @@ typedef std::unordered_set id_map; namespace PMP = CGAL::Polygon_mesh_processing; template -void test_halfedge_around_vertex_iterator(const Graph& g) +void test_halfedge_around_vertex_iterator(const Graph& g) { typedef typename boost::graph_traits::face_descriptor g_face_descriptor; typedef CGAL::Face_filtered_graph Adapter; From 7d86ca5b95d1f96900ea7642062da92acfcb9dd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 12 Jul 2023 14:40:31 +0200 Subject: [PATCH 06/94] Test FFG constructors more thoroughly --- BGL/test/BGL/test_Face_filtered_graph.cpp | 68 ++++++++++++++++++----- 1 file changed, 53 insertions(+), 15 deletions(-) diff --git a/BGL/test/BGL/test_Face_filtered_graph.cpp b/BGL/test/BGL/test_Face_filtered_graph.cpp index 3cd95dc5668..551685e89b8 100644 --- a/BGL/test/BGL/test_Face_filtered_graph.cpp +++ b/BGL/test/BGL/test_Face_filtered_graph.cpp @@ -319,17 +319,42 @@ void test_index_property_maps(const Graph& g) } template -void test_read(const Graph& g) +void test_constructors(const Graph& g) { typedef typename boost::graph_traits::face_descriptor g_face_descriptor; typedef CGAL::Face_filtered_graph Adapter; CGAL_GRAPH_TRAITS_MEMBERS(Adapter); + Adapter fg0(g); + Adapter fg1(g, CGAL::parameters::all_default()); + std::map map; PMP::connected_components(g, boost::make_assoc_property_map(map)); Adapter fg(g, 0, boost::make_assoc_property_map(map)); assert(fg.is_selection_valid()); assert(CGAL::is_valid_polygon_mesh(fg)); + + // patch ID type that is not a fundamental type + std::map colors; + for(auto f : faces(fg)) + colors[f] = CGAL::IO::blue(); + auto color_map = boost::make_assoc_property_map(colors); + Adapter color_fg(g, CGAL::IO::blue(), color_map); + assert(color_fg.is_selection_valid()); + assert(CGAL::is_valid_polygon_mesh(color_fg)); + assert(num_faces(g) == num_faces(color_fg)); + + Adapter color_fg2(g, CGAL::IO::red(), color_map, CGAL::parameters::all_default()); + assert(color_fg2.is_selection_valid()); + assert(CGAL::is_valid_polygon_mesh(color_fg2)); + assert(num_faces(color_fg2) == 0); + + // range of non-fundamental ID types + std::vector selected_colors { CGAL::IO::blue(), CGAL::IO::red() }; + Adapter color_fg3(g, selected_colors, color_map); + assert(color_fg3.is_selection_valid()); + assert(CGAL::is_valid_polygon_mesh(color_fg3)); + assert(num_faces(g) == num_faces(color_fg3)); } template @@ -338,7 +363,7 @@ test_graph_range(const std::vector& graphs) { for(Graph p : graphs) { - test_read(p); + test_constructors(p); test_vertex_iterators(p); test_out_edges(p); test_in_edges(p); @@ -500,20 +525,8 @@ void test_invalid_selections() assert(!many_umbrellas_fg.is_selection_valid()); } -int main() +void test_SM_tetrahedron() { - test_graph_range(poly_data()); - -#ifdef CGAL_USE_SURFACE_MESH - test_graph_range(sm_data()); -#endif - -#ifdef CGAL_USE_OPENMESH - test_graph_range(omesh_data()); -#endif - - test_invalid_selections(); - // Make a tetrahedron and test the adapter for a patch that only contains 2 faces typedef CGAL::Face_filtered_graph SM_Adapter; typedef SM::Property_map::face_descriptor , std::size_t> SM_FCCMap; @@ -531,7 +544,10 @@ int main() pids.insert(2); SM_Adapter sm_adapter(*sm, pids, fccmap); test_mesh(sm_adapter); +} +void test_Polyhedron_tetrahedron() +{ typedef boost::graph_traits PolyTraits; typedef boost::property_map::const_type VPMap; typedef PolyTraits::face_descriptor poly_face_descriptor; @@ -550,6 +566,9 @@ int main() std::map fc_map; FCMap poly_fccmap(fc_map); + std::unordered_set pids; + pids.insert(0); + pids.insert(2); VPMap vpmap = get(boost::vertex_point, *poly); PMP::connected_components(*poly, poly_fccmap, CGAL::parameters::edge_is_constrained_map(Constraint(*poly, vpmap)) @@ -560,3 +579,22 @@ int main() .halfedge_index_map(poly_himap)); test_mesh(poly_adapter); } + +int main(int, char**) +{ + test_graph_range(poly_data()); +#ifdef CGAL_USE_SURFACE_MESH + test_graph_range(sm_data()); +#endif +#ifdef CGAL_USE_OPENMESH + test_graph_range(omesh_data()); +#endif + + test_invalid_selections(); + + test_SM_tetrahedron(); + test_Polyhedron_tetrahedron(); + + std::cout << "Done" << std::endl; + return EXIT_SUCCESS; +} From 09a6a3e1c7a816959b58bd6980195f7378406c39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 12 Jul 2023 14:40:47 +0200 Subject: [PATCH 07/94] Add a hash for CGAL::IO::Color --- Stream_support/include/CGAL/IO/Color.h | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/Stream_support/include/CGAL/IO/Color.h b/Stream_support/include/CGAL/IO/Color.h index 6cb2939fe49..daee2d37b40 100644 --- a/Stream_support/include/CGAL/IO/Color.h +++ b/Stream_support/include/CGAL/IO/Color.h @@ -19,12 +19,13 @@ #include #include + +#include + #include #include #include - - namespace CGAL { namespace IO { @@ -287,7 +288,6 @@ public: } /// @} - }; @@ -375,6 +375,22 @@ using IO::white; using IO::yellow; #endif -} //namespace CGAL +} // namespace CGAL + +namespace std { + +template <> +struct hash +{ + std::size_t operator()(const CGAL::IO::Color& c) const + { + std::size_t result = boost::hash_value(c[0]); + for(std::size_t i=1; i<4; ++i) + boost::hash_combine(result, c[i]); + return result; + } +}; + +} // namespace std #endif // CGAL_COLOR_H From 5cc57d4c5885748de0dfbc8c054aaceaa54c6c2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 12 Jul 2023 14:45:29 +0200 Subject: [PATCH 08/94] Minor doc fix --- BGL/include/CGAL/boost/graph/Face_filtered_graph.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h index a412755576e..28afe86c27a 100644 --- a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h +++ b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h @@ -168,8 +168,8 @@ struct Face_filtered_graph * \tparam NamedParameters a sequence of named parameters * * \param graph the underlying graph - * \param face_patch_id_map the property map that assigns a patch index to each face - * \param selected_face_patch_ids a range of the face patch indices to select + * \param face_patch_id_map the property map that assigns a patch ID to each face + * \param selected_face_patch_ids a range of the face patch identifiers to select * \param np an optional sequence of \ref bgl_namedparameters "Named Parameters" among the ones listed below * * \cgalNamedParamsBegin @@ -249,8 +249,8 @@ struct Face_filtered_graph * \tparam NamedParameters a sequence of named parameters * * \param graph the underlying graph. - * \param face_patch_id_map the property map that assigns a patch index to each face - * \param selected_face_patch_id the index of the face patch selected + * \param face_patch_id_map the property map that assigns a patch ID to each face + * \param selected_face_patch_id the identifier of the face patch selected * \param np an optional sequence of \ref bgl_namedparameters "Named Parameters" among the ones listed below * * \cgalNamedParamsBegin From b9819d55fcf998d4bbcb2643c64b49becd409914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Thu, 13 Jul 2023 17:49:34 +0200 Subject: [PATCH 09/94] Keep up with the ever-changing moods of the Named Parameters committee :> --- BGL/test/BGL/test_Face_filtered_graph.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BGL/test/BGL/test_Face_filtered_graph.cpp b/BGL/test/BGL/test_Face_filtered_graph.cpp index 551685e89b8..ee4f2166439 100644 --- a/BGL/test/BGL/test_Face_filtered_graph.cpp +++ b/BGL/test/BGL/test_Face_filtered_graph.cpp @@ -326,7 +326,7 @@ void test_constructors(const Graph& g) CGAL_GRAPH_TRAITS_MEMBERS(Adapter); Adapter fg0(g); - Adapter fg1(g, CGAL::parameters::all_default()); + Adapter fg1(g, CGAL::parameters::default_values()); std::map map; PMP::connected_components(g, boost::make_assoc_property_map(map)); @@ -344,7 +344,7 @@ void test_constructors(const Graph& g) assert(CGAL::is_valid_polygon_mesh(color_fg)); assert(num_faces(g) == num_faces(color_fg)); - Adapter color_fg2(g, CGAL::IO::red(), color_map, CGAL::parameters::all_default()); + Adapter color_fg2(g, CGAL::IO::red(), color_map, CGAL::parameters::default_values()); assert(color_fg2.is_selection_valid()); assert(CGAL::is_valid_polygon_mesh(color_fg2)); assert(num_faces(color_fg2) == 0); From 4e5578d46900fa4dacab38298c640b58c47cfbfc Mon Sep 17 00:00:00 2001 From: albert-github Date: Sat, 15 Jul 2023 13:12:15 +0200 Subject: [PATCH 10/94] issue #7395 Improvement of layout of model relations - based on review --- .../doc/AABB_tree/Concepts/AABBGeomTraits.h | 2 + .../doc/AABB_tree/Concepts/AABBPrimitive.h | 11 ++-- .../Concepts/AABBPrimitiveWithSharedData.h | 7 +- .../Concepts/AABBRayIntersectionGeomTraits.h | 2 + .../Concepts/AABBRayIntersectionTraits.h | 3 +- AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h | 3 +- ...ancingFrontSurfaceReconstructionTraits_3.h | 2 + .../Concepts/AlgebraicStructureTraits.h | 3 +- .../Concepts/FieldNumberType.h | 21 +++--- .../Concepts/FractionTraits.h | 3 +- .../Concepts/FromIntConstructible.h | 7 +- .../Concepts/RealEmbeddableTraits.h | 3 +- .../Concepts/RingNumberType.h | 26 ++++---- .../Concepts/AlgebraicKernel_d_1.h | 5 +- .../Concepts/AlphaShapeFace_2.h | 3 +- .../Concepts/AlphaShapeTraits_2.h | 5 +- .../Concepts/AlphaShapeVertex_2.h | 2 + .../Concepts/WeightedAlphaShapeTraits_2.h | 5 +- .../Concepts/AlphaShapeCell_3.h | 2 + .../Concepts/AlphaShapeTraits_3.h | 2 + .../Concepts/AlphaShapeVertex_3.h | 2 + .../Concepts/FixedAlphaShapeCell_3.h | 2 + .../Concepts/FixedAlphaShapeTraits_3.h | 2 + .../Concepts/FixedAlphaShapeVertex_3.h | 2 + .../FixedWeightedAlphaShapeTraits_3.h | 2 + .../Concepts/WeightedAlphaShapeTraits_3.h | 2 + .../Alpha_wrap_3/Concepts/AlphaWrapOracle.h | 9 +-- .../Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h | 2 + .../Concepts/ApolloniusGraphDataStructure_2.h | 3 +- .../ApolloniusGraphHierarchyVertexBase_2.h | 3 +- .../Concepts/ApolloniusGraphTraits_2.h | 5 +- .../Concepts/ApolloniusGraphVertexBase_2.h | 3 +- .../Concepts/ArrTraits--Approximate_2.h | 3 +- .../Concepts/ArrTraits--AreMergeable_2.h | 3 +- .../ArrTraits--CompareXNearBoundary_2.h | 3 +- ...rrTraits--CompareXOnBoundaryOfCurveEnd_2.h | 7 +- .../ArrTraits--CompareXOnBoundary_2.h | 7 +- .../Concepts/ArrTraits--CompareX_2.h | 3 +- .../Concepts/ArrTraits--CompareXy_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtXLeft_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtXRight_2.h | 3 +- .../Concepts/ArrTraits--CompareYAtX_2.h | 3 +- .../ArrTraits--CompareYNearBoundary_2.h | 3 +- .../ArrTraits--CompareYOnBoundary_2.h | 9 +-- .../Concepts/ArrTraits--ConstructCurve_2.h | 3 +- .../ArrTraits--ConstructMaxVertex_2.h | 3 +- .../ArrTraits--ConstructMinVertex_2.h | 3 +- .../ArrTraits--ConstructXMonotoneCurve_2.h | 3 +- .../Concepts/ArrTraits--Curve_2.h | 3 +- .../Concepts/ArrTraits--Equal_2.h | 3 +- .../Concepts/ArrTraits--Intersect_2.h | 3 +- .../ArrTraits--IsOnXIdentification_2.h | 3 +- .../ArrTraits--IsOnYIdentification_2.h | 3 +- .../Concepts/ArrTraits--IsVertical_2.h | 3 +- .../Concepts/ArrTraits--MakeXMonotone_2.h | 3 +- .../Concepts/ArrTraits--Merge_2.h | 3 +- .../Concepts/ArrTraits--ParameterSpaceInX_2.h | 7 +- .../Concepts/ArrTraits--ParameterSpaceInY_2.h | 7 +- .../Concepts/ArrTraits--Point_2.h | 3 +- .../Concepts/ArrTraits--Split_2.h | 3 +- .../Concepts/ArrTraits--XMonotoneCurve_2.h | 3 +- .../Concepts/ArrangementApproximateTraits_2.h | 17 ++--- .../Concepts/ArrangementBasicTopologyTraits.h | 3 +- .../Concepts/ArrangementBasicTraits_2.h | 31 ++++----- .../ArrangementConstructCurveTraits_2.h | 15 +++-- ...rangementConstructXMonotoneCurveTraits_2.h | 15 +++-- .../Concepts/ArrangementDcel.h | 9 +-- .../Concepts/ArrangementDcelWithRebind.h | 7 +- .../ArrangementHorizontalSideTraits_2.h | 9 +-- .../Concepts/ArrangementInputFormatter.h | 7 +- .../Concepts/ArrangementLandmarkTraits_2.h | 17 ++--- .../ArrangementOpenBoundaryTraits_2.h | 11 ++-- .../Concepts/ArrangementOutputFormatter.h | 7 +- .../Concepts/ArrangementPointLocation_2.h | 9 +-- .../ArrangementSphericalBoundaryTraits_2.h | 3 +- .../Concepts/ArrangementTopologyTraits.h | 7 +- .../Concepts/ArrangementTraits_2.h | 29 +++++---- .../Concepts/ArrangementVerticalRayShoot_2.h | 9 +-- .../ArrangementVerticalSideTraits_2.h | 9 +-- .../ArrangementWithHistoryInputFormatter.h | 3 +- .../ArrangementWithHistoryOutputFormatter.h | 3 +- .../Concepts/ArrangementXMonotoneTraits_2.h | 29 +++++---- .../Concepts/OverlayTraits.h | 5 +- BGL/doc/BGL/Concepts/EdgeListGraph.h | 2 + BGL/doc/BGL/Concepts/FaceGraph.h | 2 + BGL/doc/BGL/Concepts/FaceListGraph.h | 2 + BGL/doc/BGL/Concepts/HalfedgeGraph.h | 2 + BGL/doc/BGL/Concepts/HalfedgeListGraph.h | 2 + BGL/doc/BGL/Concepts/MutableFaceGraph.h | 2 + BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h | 2 + BGL/doc/BGL/Concepts/VertexListGraph.h | 2 + .../Concepts/BarycentricCoordinates_2.h | 7 +- .../Concepts/BarycentricTraits_2.h | 10 +-- .../Concepts/DiscretizedDomain_2.h | 3 +- .../ArrDirectionalTraits--AreMergeable_2.h | 3 +- ...rDirectionalTraits--CompareEndpointsXy_2.h | 3 +- ...rrDirectionalTraits--ConstructOpposite_2.h | 3 +- .../ArrDirectionalTraits--Intersect_2.h | 3 +- .../Concepts/ArrDirectionalTraits--Merge_2.h | 3 +- .../Concepts/ArrDirectionalTraits--Split_2.h | 3 +- .../ArrangementDirectionalXMonotoneTraits_2.h | 15 +++-- .../Concepts/GeneralPolygonSetDcel.h | 3 +- .../Concepts/GeneralPolygonSetDcelFace.h | 3 +- .../Concepts/GeneralPolygonSetDcelHalfedge.h | 3 +- .../Concepts/GeneralPolygonSetTraits_2.h | 7 +- .../Concepts/GeneralPolygon_2.h | 3 +- .../GpsTraitsGeneralPolygonWithHoles_2.h | 3 +- .../Concepts/GpsTraitsGeneralPolygon_2.h | 5 +- .../ApproximateMinEllipsoid_d_Traits_d.h | 7 +- .../Concepts/MinCircle2Traits.h | 3 +- .../Concepts/MinEllipse2Traits.h | 3 +- .../Concepts/MinQuadrilateralTraits_2.h | 3 +- .../Concepts/MinSphereAnnulusDTraits.h | 7 +- .../Concepts/MinSphereOfSpheresTraits.h | 13 ++-- .../Concepts/RectangularPCenterTraits_2.h | 3 +- .../Concepts/BoxIntersectionBox_d.h | 5 +- .../Concepts/BoxIntersectionTraits_d.h | 3 +- ...rnelForCircles--PolynomialForCircles_2_2.h | 3 +- ...lgebraicKernelForCircles--Polynomial_1_2.h | 3 +- ...raicKernelForCircles--RootForCircles_2_2.h | 3 +- .../Concepts/AlgebraicKernelForCircles.h | 3 +- .../CircularKernel--CircularArcPoint_2.h | 3 +- .../Concepts/CircularKernel--CircularArc_2.h | 3 +- .../Concepts/CircularKernel--LineArc_2.h | 3 +- .../Concepts/CircularKernel.h | 5 +- ...rnelForSpheres--PolynomialForSpheres_2_3.h | 3 +- ...lgebraicKernelForSpheres--Polynomial_1_3.h | 3 +- ...cKernelForSpheres--PolynomialsForLines_3.h | 3 +- ...raicKernelForSpheres--RootForSpheres_2_3.h | 3 +- .../Concepts/AlgebraicKernelForSpheres.h | 3 +- .../SphericalKernel--CircularArcPoint_3.h | 3 +- .../Concepts/SphericalKernel--CircularArc_3.h | 3 +- .../Concepts/SphericalKernel--LineArc_3.h | 3 +- .../Concepts/SphericalKernel.h | 5 +- .../doc/Circulator/Concepts/ConstHandle.h | 3 +- .../doc/Circulator/Concepts/ConstRange.h | 5 +- Circulator/doc/Circulator/Concepts/Handle.h | 9 +-- Circulator/doc/Circulator/Concepts/Range.h | 2 + .../doc/Classification/Concepts/Classifier.h | 7 +- .../Classification/Concepts/NeighborQuery.h | 9 +-- .../Concepts/CellAttribute.h | 2 + .../Concepts/CombinatorialMap.h | 2 + .../Combinatorial_map/Concepts/GenericMap.h | 6 +- .../Concepts/GenericMapItems.h | 2 + .../Concepts/ConvexHullTraits_2.h | 13 ++-- .../Concepts/ConvexHullTraits_3.h | 5 +- .../Concepts/IsStronglyConvexTraits_3.h | 4 +- .../Concepts/ConvexHullTraits_d.h | 7 +- .../Concepts/DelaunayLiftedTraits_d.h | 5 +- .../Convex_hull_d/Concepts/DelaunayTraits_d.h | 5 +- .../doc/resources/1.8.13/BaseDoxyfile.in | 10 ++- .../doc/resources/1.9.6/BaseDoxyfile.in | 10 ++- .../Envelope_3/Concepts/EnvelopeTraits_3.h | 9 +-- .../Generalized_map/Concepts/GeneralizedMap.h | 2 + .../Generator/Concepts/CombinationElement.h | 8 ++- .../doc/Generator/Concepts/PointGenerator.h | 29 +++++---- .../Concepts/RandomConvexHullTraits_2.h | 2 + .../Concepts/RandomConvexSetTraits_2.h | 3 +- .../Concepts/RandomPolygonTraits_2.h | 2 + .../doc/HalfedgeDS/Concepts/HalfedgeDS.h | 7 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSFace.h | 5 +- .../HalfedgeDS/Concepts/HalfedgeDSHalfedge.h | 5 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSItems.h | 7 +- .../HalfedgeDS/Concepts/HalfedgeDSVertex.h | 5 +- .../Concepts/HeatMethodTraits_3.h | 2 + .../HyperbolicDelaunayTriangulationTraits_2.h | 5 +- .../HyperbolicTriangulationFaceBase_2.h | 3 +- .../Concepts/ExtremalPolygonTraits_2.h | 5 +- .../LargestEmptyIsoRectangleTraits_2.h | 5 +- .../Concepts/GradientFittingTraits.h | 3 +- .../Concepts/InterpolationTraits.h | 5 +- .../Interval_skip_list/Concepts/Interval.h | 5 +- .../doc/Jet_fitting_3/Concepts/DataKernel.h | 5 +- .../doc/Jet_fitting_3/Concepts/LocalKernel.h | 5 +- .../doc/Kernel_23/Concepts/GeomObjects.h | 65 ++++++++++++------- Kernel_23/doc/Kernel_23/Concepts/Kernel.h | 17 ++--- .../Kernel_d/Concepts/KernelWithLifting_d.h | 5 +- Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h | 9 +-- .../Kernel_d/Concepts/LinearAlgebraTraits_d.h | 5 +- .../Concepts/CellAttributeWithPoint.h | 2 + .../Concepts/LinearCellComplex.h | 6 +- .../Concepts/LinearCellComplexItems.h | 3 +- .../Concepts/LinearCellComplexTraits.h | 2 + .../doc/Matrix_search/Concepts/BasicMatrix.h | 3 +- .../Concepts/MonotoneMatrixSearchTraits.h | 3 +- .../Concepts/SortedMatrixSearchTraits.h | 3 +- .../ConformingDelaunayTriangulationTraits_2.h | 4 +- .../Mesh_2/Concepts/DelaunayMeshFaceBase_2.h | 3 +- .../Mesh_2/Concepts/DelaunayMeshTraits_2.h | 4 +- .../Concepts/DelaunayMeshVertexBase_2.h | 3 +- .../doc/Mesh_2/Concepts/MeshingCriteria_2.h | 5 +- .../Concepts/BisectionGeometricTraits_3.h | 2 + .../Concepts/IntersectionGeometricTraits_3.h | 2 + Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h | 5 +- .../doc/Mesh_3/Concepts/MeshCellCriteria_3.h | 3 +- .../Concepts/MeshCriteriaWithFeatures_3.h | 3 +- Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h | 3 +- .../doc/Mesh_3/Concepts/MeshDomainField_3.h | 3 +- .../Concepts/MeshDomainWithFeatures_3.h | 5 +- Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h | 5 +- .../doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h | 3 +- .../doc/Mesh_3/Concepts/MeshFacetCriteria_3.h | 3 +- Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h | 2 + .../Concepts/MeshTriangulationTraits_3.h | 2 + Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h | 3 +- .../doc/Mesh_3/Concepts/TriangleAccessor_3.h | 3 +- .../Concepts/PolygonConvexDecomposition_2.h | 11 ++-- .../PolygonWithHolesConvexDecomposition_2.h | 5 +- .../Miscellany/Concepts/UniqueHashFunction.h | 3 +- .../Concepts/ModularTraits.h | 3 +- .../Concepts/Modularizable.h | 20 +++--- .../Nef_2/Concepts/ExtendedKernelTraits_2.h | 7 +- .../doc/Number_types/Concepts/RootOf_2.h | 4 +- .../Concepts/OrientedBoundingBoxTraits.h | 3 +- ...imalTransportationReconstructionTraits_2.h | 6 +- .../doc/Orthtree/Concepts/OrthtreeTraits.h | 7 +- .../doc/Orthtree/Concepts/OrthtreeTraversal.h | 9 +-- .../Concepts/ConvexPartitionIsValidTraits_2.h | 3 +- .../Concepts/IsYMonotoneTraits_2.h | 5 +- .../Concepts/OptimalConvexPartitionTraits_2.h | 3 +- .../Concepts/PartitionIsValidTraits_2.h | 3 +- .../Partition_2/Concepts/PartitionTraits_2.h | 3 +- .../doc/Partition_2/Concepts/PolygonIsValid.h | 5 +- .../YMonotonePartitionIsValidTraits_2.h | 3 +- .../Periodic_2DelaunayTriangulationTraits_2.h | 3 +- .../Concepts/Periodic_2Offset_2.h | 3 +- .../Periodic_2TriangulationFaceBase_2.h | 3 +- .../Periodic_2TriangulationTraits_2.h | 3 +- .../Periodic_2TriangulationVertexBase_2.h | 3 +- .../Periodic_3MeshDomainWithFeatures_3.h | 3 +- .../Concepts/Periodic_3MeshDomain_3.h | 3 +- .../Periodic_3DelaunayTriangulationTraits_3.h | 3 +- .../Concepts/Periodic_3Offset_3.h | 3 +- ...riodic_3RegularTriangulationDSCellBase_3.h | 5 +- ...odic_3RegularTriangulationDSVertexBase_3.h | 3 +- .../Periodic_3RegularTriangulationTraits_3.h | 3 +- .../Periodic_3TriangulationDSCellBase_3.h | 3 +- .../Periodic_3TriangulationDSVertexBase_3.h | 3 +- .../Periodic_3TriangulationTraits_3.h | 3 +- ...4HyperbolicDelaunayTriangulationTraits_2.h | 3 +- ...iodic_4HyperbolicTriangulationFaceBase_2.h | 3 +- ...dic_4HyperbolicTriangulationVertexBase_2.h | 3 +- .../Concepts/GeneralPolygonWithHoles_2.h | 5 +- .../doc/Polygon/Concepts/PolygonTraits_2.h | 8 ++- .../Concepts/PMPCorefinementVisitor.h | 3 +- .../Concepts/PMPDistanceTraits.h | 2 + .../Concepts/PMPHolefillingVisitor.h | 3 +- .../PMPPolygonSoupOrientationVisitor.h | 3 +- .../Concepts/PMPTriangulateFaceVisitor.h | 3 +- .../Polyhedron/Concepts/PolyhedronItems_3.h | 7 +- .../Polyhedron/Concepts/PolyhedronTraits_3.h | 6 +- .../PolylineSimplificationCostFunction.h | 7 +- .../PolylineSimplificationStopPredicate.h | 7 +- .../PolylineSimplificationVertexBase_2.h | 3 +- .../Polynomial/Concepts/PolynomialTraits_d.h | 3 +- .../doc/Polynomial/Concepts/Polynomial_d.h | 3 +- .../Concepts/AllFurthestNeighborsTraits_2.h | 9 +-- .../Concepts/PolytopeDistanceDTraits.h | 7 +- .../Concepts/WidthTraits_3.h | 3 +- .../doc/QP_solver/Concepts/LinearProgram.h | 7 +- .../Concepts/NonnegativeLinearProgram.h | 14 ++-- .../Concepts/NonnegativeQuadraticProgram.h | 7 +- .../doc/QP_solver/Concepts/QuadraticProgram.h | 7 +- ...shComplexWithFeatures_3InTriangulation_3.h | 3 +- .../Concepts/MeshComplex_3InTriangulation_3.h | 3 +- .../Concepts/SimplicialMeshCellBase_3.h | 9 +-- .../Concepts/SimplicialMeshVertexBase_3.h | 7 +- .../doc/STL_Extension/Concepts/Descriptor.h | 5 +- .../doc/STL_Extension/Concepts/Hashable.h | 6 +- .../doc/STL_Extension/Concepts/Index.h | 5 +- .../STL_Extension/Concepts/ProjectionObject.h | 27 ++++---- .../Concepts/SurjectiveLockDataStructure.h | 3 +- .../Concepts/ScaleSpaceMesher.h | 5 +- .../Concepts/ScaleSpaceSmoother.h | 5 +- .../Concepts/RangeSegmentTreeTraits_k.h | 13 ++-- .../SegmentDelaunayGraphDataStructure_2.h | 3 +- .../Concepts/SegmentDelaunayGraphFaceBase_2.h | 3 +- ...egmentDelaunayGraphHierarchyVertexBase_2.h | 3 +- .../Concepts/SegmentDelaunayGraphSite_2.h | 3 +- .../SegmentDelaunayGraphStorageSite_2.h | 3 +- .../SegmentDelaunayGraphStorageTraits_2.h | 3 +- .../Concepts/SegmentDelaunayGraphTraits_2.h | 9 +-- .../SegmentDelaunayGraphVertexBase_2.h | 3 +- .../SegmentDelaunayGraphLinfTraits_2.h | 9 +-- .../Concepts/CastingTraits_2.h | 2 + .../Concepts/EfficientRANSACTraits.h | 3 +- .../Shape_detection/Concepts/NeighborQuery.h | 9 +-- .../doc/Shape_detection/Concepts/RegionType.h | 15 +++-- .../Concepts/ContourDirections.h | 7 +- .../Concepts/NeighborQuery.h | 3 +- .../Concepts/RegularizationType.h | 5 +- .../Concepts/SkinSurfaceTraits_3.h | 3 +- .../Skin_surface_3/Concepts/SkinSurface_3.h | 5 +- .../Concepts/SnapRoundingTraits_2.h | 21 +++++- .../Concepts/DiagonalizeTraits.h | 3 +- .../Concepts/MixedIntegerProgramTraits.h | 16 +++-- ...ormalEquationSparseLinearAlgebraTraits_d.h | 3 +- .../Concepts/QuadraticProgramTraits.h | 3 +- .../Concepts/SparseLinearAlgebraTraits_d.h | 11 ++-- .../SparseLinearAlgebraWithFactorTraits_d.h | 3 +- .../doc/Solver_interface/Concepts/SvdTraits.h | 9 ++- .../Concepts/FuzzyQueryItem.h | 5 +- .../Concepts/GeneralDistance.h | 5 +- .../Concepts/OrthogonalDistance.h | 5 +- .../Concepts/RangeSearchTraits.h | 13 ++-- .../Concepts/SearchGeomTraits_2.h | 2 + .../Concepts/SearchGeomTraits_3.h | 2 + .../Spatial_searching/Concepts/SearchTraits.h | 17 ++--- .../Concepts/SpatialSeparator.h | 3 +- .../Spatial_searching/Concepts/SpatialTree.h | 3 +- .../doc/Spatial_searching/Concepts/Splitter.h | 15 +++-- .../Concepts/SpatialSortingTraits_2.h | 4 +- .../Concepts/SpatialSortingTraits_3.h | 4 +- .../Concepts/SpatialSortingTraits_d.h | 4 +- .../Concepts/PolygonOffsetBuilderTraits_2.h | 3 +- .../StraightSkeletonBuilderTraits_2.h | 3 +- .../StraightSkeletonBuilder_2_Visitor.h | 3 +- .../Concepts/StraightSkeletonFace_2.h | 3 +- .../Concepts/StraightSkeletonHalfedge_2.h | 3 +- .../StraightSkeletonItemsConverter_2.h | 3 +- .../Concepts/StraightSkeletonVertex_2.h | 3 +- .../Concepts/StraightSkeleton_2.h | 3 +- .../Stream_lines_2/Concepts/Integrator_2.h | 5 +- .../Concepts/StreamLinesTraits_2.h | 2 + .../Stream_lines_2/Concepts/VectorField_2.h | 5 +- .../Subdivision_method_3/Concepts/DQQMask_3.h | 3 +- .../Subdivision_method_3/Concepts/PQQMask_3.h | 3 +- .../Subdivision_method_3/Concepts/PTQMask_3.h | 3 +- .../Concepts/Sqrt3Mask_3.h | 3 +- .../Concepts/ErrorMetricProxy.h | 5 +- .../DeformationClosestRotationTraits_3.h | 5 +- .../Concepts/Parameterizer_3.h | 21 +++--- .../Concepts/SegmentationGeomTraits.h | 2 + .../Concepts/SurfaceMeshShortestPathTraits.h | 3 +- .../Concepts/GetCost.h | 7 +- .../Concepts/GetPlacement.h | 11 ++-- .../Concepts/PlacementFilter.h | 5 +- .../Concepts/StopPredicate.h | 11 ++-- .../MeanCurvatureSkeletonizationTraits.h | 2 + .../Concepts/PolygonalSchema.h | 6 +- .../Concepts/PolygonalSchemaItems.h | 2 + .../Concepts/WeightFunctor.h | 6 +- .../Concepts/ImplicitFunction.h | 4 +- .../Concepts/ImplicitSurfaceTraits_3.h | 2 + .../Concepts/SurfaceMeshCellBase_3.h | 5 +- .../SurfaceMeshComplex_2InTriangulation_3.h | 3 +- .../Concepts/SurfaceMeshFacetsCriteria_3.h | 3 +- .../Concepts/SurfaceMeshTraits_3.h | 3 +- .../Concepts/SurfaceMeshTriangulation_3.h | 2 + .../Concepts/SurfaceMeshVertexBase_3.h | 5 +- .../doc/Surface_mesher/Concepts/Surface_3.h | 3 +- .../Concepts/TriangulationDSFaceBase_2.h | 3 +- .../Concepts/TriangulationDSVertexBase_2.h | 3 +- .../Concepts/TriangulationDataStructure_2.h | 9 ++- .../Concepts/TriangulationDSCellBase_3.h | 3 +- .../Concepts/TriangulationDSVertexBase_3.h | 3 +- .../Concepts/TriangulationDataStructure_3.h | 3 +- .../Concepts/RemeshingCellBase_3.h | 3 +- .../Concepts/RemeshingTriangulationTraits_3.h | 2 + .../Concepts/RemeshingVertexBase_3.h | 3 +- .../Concepts/DelaunayTriangulationTraits.h | 5 +- .../Concepts/RegularTriangulationTraits.h | 5 +- .../Concepts/TriangulationDSFace.h | 3 +- .../Concepts/TriangulationDSFullCell.h | 5 +- .../Concepts/TriangulationDSVertex.h | 5 +- .../Concepts/TriangulationDataStructure.h | 13 ++-- .../Concepts/TriangulationFullCell.h | 3 +- .../Concepts/TriangulationTraits.h | 5 +- .../Concepts/TriangulationVertex.h | 3 +- ...ConstrainedDelaunayTriangulationTraits_2.h | 8 ++- .../ConstrainedTriangulationFaceBase_2.h | 3 +- .../ConstrainedTriangulationTraits_2.h | 10 +-- .../Concepts/DelaunayTriangulationTraits_2.h | 14 ++-- .../Concepts/RegularTriangulationFaceBase_2.h | 3 +- .../Concepts/RegularTriangulationTraits_2.h | 2 + .../RegularTriangulationVertexBase_2.h | 3 +- .../Concepts/TriangulationFaceBase_2.h | 3 +- .../TriangulationHierarchyVertexBase_2.h | 3 +- .../Concepts/TriangulationTraits_2.h | 10 +-- .../TriangulationVertexBaseWithInfo_2.h | 3 +- .../Concepts/TriangulationVertexBase_2.h | 3 +- .../DelaunayTriangulationCellBase_3.h | 5 +- .../Concepts/DelaunayTriangulationTraits_3.h | 15 +++-- ...lationCellBaseWithWeightedCircumcenter_3.h | 3 +- .../Concepts/RegularTriangulationCellBase_3.h | 3 +- .../Concepts/RegularTriangulationTraits_3.h | 2 + .../RegularTriangulationVertexBase_3.h | 3 +- .../TriangulationCellBaseWithInfo_3.h | 3 +- .../Concepts/TriangulationCellBase_3.h | 5 +- .../Concepts/TriangulationTraits_3.h | 2 + .../TriangulationVertexBaseWithInfo_3.h | 3 +- .../Concepts/TriangulationVertexBase_3.h | 5 +- .../DelaunayTriangulationOnSphereTraits_2.h | 5 +- .../TriangulationOnSphereFaceBase_2.h | 3 +- .../Concepts/TriangulationOnSphereTraits_2.h | 5 +- .../TriangulationOnSphereVertexBase_2.h | 3 +- .../doc/Visibility_2/Concepts/Visibility_2.h | 7 +- .../Concepts/AdaptationPolicy_2.h | 19 +++--- .../Concepts/AdaptationTraits_2.h | 9 +-- .../Concepts/DelaunayGraph_2.h | 14 ++-- .../Weights/Concepts/AnalyticWeightTraits_2.h | 8 ++- .../Weights/Concepts/AnalyticWeightTraits_3.h | 2 + .../Weights/Concepts/BarycentricWeights_2.h | 7 +- 403 files changed, 1354 insertions(+), 831 deletions(-) mode change 100644 => 100755 Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h mode change 100644 => 100755 Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h index 75823eb238a..c01a0008bee 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBGeomTraits.h @@ -11,7 +11,9 @@ and the primitives stored in the AABB tree. \cgalRefines{SearchGeomTraits_3} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::AABB_traits` \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h index 4a987a58cbb..cee0dc90296 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h @@ -12,11 +12,12 @@ The concept `AABBPrimitive` describes the requirements for the primitives stored The `Primitive` type can be, e.g., a wrapper around a `Handle`. Assume for instance that the input objects are the triangle faces of a mesh stored as a `CGAL::Polyhedron_3`. The `Datum` would be a `Triangle_3` and the `Id` would be a polyhedron `Face_handle`. Method `datum()` can return either a `Triangle_3` constructed on the fly from the face handle or a `Triangle_3` stored internally. This provides a way for the user to trade memory for efficiency. -\cgalHasModelsBegin CGAL::AABB_primitive -\cgalHasModels CGAL::AABB_segment_primitive -\cgalHasModels CGAL::AABB_triangle_primitive -\cgalHasModels CGAL::AABB_halfedge_graph_segment_primitive -\cgalHasModels CGAL::AABB_face_graph_triangle_primitive +\cgalHasModelsBegin +\cgalModels{CGAL::AABB_primitive} +\cgalModels{CGAL::AABB_segment_primitive} +\cgalModels{CGAL::AABB_triangle_primitive} +\cgalModels{CGAL::AABB_halfedge_graph_segment_primitive} +\cgalModels{CGAL::AABB_face_graph_triangle_primitive} \cgalHasModelsEnd */ diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h index 8ec9a103acd..27f6805cbca 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h @@ -21,9 +21,10 @@ The `Datum` would be a `Triangle_3` and the `Id` a `std::size_t`. The shared dat `std::vector`. The method `datum(const Shared_data&)` then returns a triangle from the vector. -\cgalHasModelsBegin CGAL::AABB_primitive -\cgalHasModels CGAL::AABB_halfedge_graph_segment_primitive -\cgalHasModels CGAL::AABB_face_graph_triangle_primitive +\cgalHasModelsBegin +\cgalModels{CGAL::AABB_primitive} +\cgalModels{CGAL::AABB_halfedge_graph_segment_primitive} +\cgalModels{CGAL::AABB_face_graph_triangle_primitive} \cgalHasModelsEnd */ diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h index f47f1e9464b..c34d88be491 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionGeomTraits.h @@ -9,7 +9,9 @@ define the Intersection_distance functor. \cgalRefines{AABBGeomTraits} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::AABB_traits` \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h index 87d139973b5..1df2c9802b2 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h @@ -7,7 +7,8 @@ The concept `AABBRayIntersectionTraits` is a refinement of the concept `AABBTraits` it also requires function objects to calculate the distance of an intersection along a ray. -\cgalHasModelsBegin CGAL::AABB_traits +\cgalHasModelsBegin +\cgalModels{CGAL::AABB_traits} \cgalHasModelsEnd \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h index f5e5846322e..5dfba2998c8 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h @@ -5,7 +5,8 @@ The concept `AABBTraits` provides the geometric primitive types and methods for the class `CGAL::AABB_tree`. -\cgalHasModelsBegin CGAL::AABB_traits +\cgalHasModelsBegin +\cgalModels{CGAL::AABB_traits} \cgalHasModelsEnd \cgalRefines{SearchGeomTraits_3} diff --git a/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h b/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h index a56096bcb19..e31759b1f3d 100644 --- a/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h +++ b/Advancing_front_surface_reconstruction/doc/Advancing_front_surface_reconstruction/Concepts/AdvancingFrontSurfaceReconstructionTraits_3.h @@ -11,7 +11,9 @@ together with a few geometric predicates and constructions on these objects. \cgalRefines{DelaunayTriangulationTraits_3} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the concept `Kernel`} +\cgalHasModelsEnd */ class AdvancingFrontSurfaceReconstructionTraits_3 { diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h index 0fbc4ea6f17..d21861c1c28 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h @@ -28,7 +28,8 @@ algebraic operations within that structure. \sa `CGAL::Field_with_kth_root_tag` \sa `CGAL::Field_with_root_of_tag` -\cgalHasModelsBegin CGAL::Algebraic_structure_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Algebraic_structure_traits} \cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h index a53ac500cbf..5cd89e524e6 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h @@ -9,16 +9,17 @@ for Cartesian kernels. \cgalRefines{Field,RealEmbeddable} -\cgalHasModelsBegin float -\cgalHasModels double -\cgalHasModels CGAL::Gmpq -\cgalHasModels CGAL::Interval_nt -\cgalHasModels CGAL::Interval_nt_advanced -\cgalHasModels CGAL::Lazy_exact_nt -\cgalHasModels CGAL::Quotient -\cgalHasModels leda_rational -\cgalHasModels leda_bigfloat -\cgalHasModels leda_real +\cgalHasModelsBegin +\cgalModels{float} +\cgalModels{double} +\cgalModels{CGAL::Gmpq} +\cgalModels{CGAL::Interval_nt} +\cgalModels{CGAL::Interval_nt_advanced} +\cgalModels{CGAL::Lazy_exact_nt} +\cgalModels{CGAL::Quotient} +\cgalModels{leda_rational} +\cgalModels{leda_bigfloat} +\cgalModels{leda_real} \cgalHasModelsEnd \sa `RingNumberType` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h index 35d4b408a67..f1248606d90 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h @@ -8,7 +8,8 @@ A model of `FractionTraits` is associated with a type `Type`. In case the associated type is a `Fraction`, a model of `FractionTraits` provides the relevant functionality for decomposing and re-composing as well as the numerator and denominator type. -\cgalHasModelsBegin CGAL::Fraction_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Fraction_traits} \cgalHasModelsEnd \sa `FractionTraits_::Decompose` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h index f8f2f3f8749..f31912ba5d8 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h @@ -6,9 +6,10 @@ A model of the concept `FromIntConstructible` is required to be constructible from int. -\cgalHasModelsBegin int -\cgalHasModels long -\cgalHasModels double +\cgalHasModelsBegin +\cgalModels{int} +\cgalModels{long} +\cgalModels{double} \cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h index 1cd155d7ccf..312eff6326f 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h @@ -7,7 +7,8 @@ A model of `RealEmbeddableTraits` is associated to a number type `Type` and reflects the properties of this type with respect to the concept `RealEmbeddable`. -\cgalHasModelsBegin CGAL::Real_embeddable_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Real_embeddable_traits} \cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h index 46203068258..f3ee8c4ba58 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h @@ -10,18 +10,20 @@ for Homogeneous kernels. \cgalRefines{IntegralDomainWithoutDivision,RealEmbeddable} -\cgalHasModelsBareBegin{\cpp built-in number types} CGAL::Gmpq -\cgalHasModels CGAL::Gmpz -\cgalHasModels CGAL::Interval_nt -\cgalHasModels CGAL::Interval_nt_advanced -\cgalHasModels CGAL::Lazy_exact_nt -\cgalHasModels CGAL::MP_Float -\cgalHasModels CGAL::Gmpzf -\cgalHasModels CGAL::Quotient -\cgalHasModels leda_integer -\cgalHasModels leda_rational -\cgalHasModels leda_bigfloat -\cgalHasModels leda_real +\cgalHasModelsBegin +\cgalHasModelsBare{\cpp built-in number types} +\cgalHasModels{CGAL::Gmpq} +\cgalHasModels{CGAL::Gmpz} +\cgalHasModels{CGAL::Interval_nt} +\cgalHasModels{CGAL::Interval_nt_advanced} +\cgalHasModels{CGAL::Lazy_exact_nt} +\cgalHasModels{CGAL::MP_Float} +\cgalHasModels{CGAL::Gmpzf} +\cgalHasModels{CGAL::Quotient} +\cgalHasModels{leda_integer} +\cgalHasModels{leda_rational} +\cgalHasModels{leda_bigfloat} +\cgalHasModels{leda_real} \cgalHasModelsEnd \sa `FieldNumberType` diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h index f9b702d436b..4bc59c9e388 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h @@ -8,8 +8,9 @@ algebraic functionalities on univariate polynomials of general degree \f$ d\f$. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModelsBegin CGAL::Algebraic_kernel_rs_gmpz_d_1 -\cgalHasModels CGAL::Algebraic_kernel_rs_gmpq_d_1 +\cgalHasModelsBegin +\cgalModels{CGAL::Algebraic_kernel_rs_gmpz_d_1} +\cgalModels{CGAL::Algebraic_kernel_rs_gmpq_d_1} \cgalHasModelsEnd \sa `AlgebraicKernel_d_2` diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h index 562a6aaaa19..498eaed26d7 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h @@ -9,7 +9,8 @@ The concept `AlphaShapeFace_2` describes the requirements for the base face of a RegularTriangulationFaceBase_2 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_2TriangulationFaceBase_2 if the underlying triangulation of the alpha shape is a periodic triangulation} -\cgalHasModelsBegin CGAL::Alpha_shape_face_base_2 (templated with the appropriate triangulation face base class) +\cgalHasModelsBegin +\cgalModels{CGAL::Alpha_shape_face_base_2 (templated with the appropriate triangulation face base class)} \cgalHasModelsEnd */ diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h index 28ad270b744..669fdf61f19 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeTraits_2.h @@ -9,7 +9,10 @@ class of the underlying Delaunay triangulation of a basic alpha shape. \cgalRefines{DelaunayTriangulationTraits_2 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_2DelaunayTriangulationTraits_2 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} -\cgalHasModelsBare{All models of `Kernel`,Projection traits such as `CGAL::Projection_traits_xy_3`} +\cgalHasModelsBegin +\cgalHasModelsBare{All models of `Kernel`} +\cgalHasModelsBare{Projection traits such as `CGAL::Projection_traits_xy_3`} +\cgalHasModelsEnd \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h index 5116683d78b..649ed3970d0 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeVertex_2.h @@ -9,7 +9,9 @@ The concept `AlphaShapeVertex_2` describes the requirements for the base vertex RegularTriangulationVertexBase_2 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_2TriangulationVertexBase_2 if the underlying triangulation of the alpha shape is a periodic triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{`CGAL::Alpha_shape_vertex_base_2` (templated with the appropriate triangulation vertex base class)} +\cgalHasModelsEnd */ class AlphaShapeVertex_2 { public: diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h index 05be16ee559..b88db2cd67b 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/WeightedAlphaShapeTraits_2.h @@ -9,7 +9,10 @@ of the underlying regular triangulation of a weighted alpha shape. \cgalRefines{RegularTriangulationTraits_2 if the underlying triangulation of the alpha shape is a regular triangulation.} -\cgalHasModelsBare{All models of `Kernel`,Projection traits such as `CGAL::Projection_traits_xy_3`} +\cgalHasModelsBegin +\cgalHasModelsBare{All models of `Kernel`,} +\cgalHasModelsBare{Projection traits such as `CGAL::Projection_traits_xy_3`} +\cgalHasModelsEnd \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h index de5c0aacd62..fa4ba33da2d 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeCell_3.h @@ -9,7 +9,9 @@ The concept `AlphaShapeCell_3` describes the requirements for the base cell of a RegularTriangulationCellBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSCellBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{`CGAL::Alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class)} +\cgalHasModelsEnd \sa `CGAL::Alpha_status` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h index 4a5fe7a8bfd..cff0a2f3c52 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeTraits_3.h @@ -10,7 +10,9 @@ of the underlying Delaunay triangulation of a basic alpha shape. \cgalRefines{DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_3DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{All models of `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h index 65f49014180..3c81217e2ab 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/AlphaShapeVertex_3.h @@ -9,7 +9,9 @@ The concept `AlphaShapeVertex_3` describes the requirements for the base vertex RegularTriangulationVertexBase_3 if the underlying triangulation of the alpha shape is a regular triangulation. Periodic_3TriangulationDSVertexBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{`CGAL::Alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class)} +\cgalHasModelsEnd \sa `CGAL::Alpha_status` diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h index 7707ed14ce1..8d4a59f29ee 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeCell_3.h @@ -9,7 +9,9 @@ The concept `FixedAlphaShapeCell_3` describes the requirements for the base cell RegularTriangulationCellBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSCellBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{`CGAL::Fixed_alpha_shape_cell_base_3` (templated with the appropriate triangulation cell base class)} +\cgalHasModelsEnd */ class FixedAlphaShapeCell_3 { public: diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h index 4c63e9618fa..4c0d409f524 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeTraits_3.h @@ -10,7 +10,9 @@ of the underlying Delaunay triangulation of a basic alpha shape with a fixed val \cgalRefines{DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a Delaunay triangulation, Periodic_3DelaunayTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic Delaunay triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{All models of `Kernel`} +\cgalHasModelsEnd \sa CGAL::Exact_predicates_inexact_constructions_kernel (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h index 7b152f16e2e..dd4db3fecea 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedAlphaShapeVertex_3.h @@ -9,7 +9,9 @@ The concept `FixedAlphaShapeVertex_3` describes the requirements for the base ve RegularTriangulationVertexBase_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3TriangulationDSVertexBase_3 if the underlying triangulation of the alpha shape is a periodic triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{`CGAL::Fixed_alpha_shape_vertex_base_3` (templated with the appropriate triangulation vertex base class)} +\cgalHasModelsEnd */ class FixedAlphaShapeVertex_3 { diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h index 8b7694d5643..73d46de6261 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/FixedWeightedAlphaShapeTraits_3.h @@ -9,7 +9,9 @@ for the geometric traits class of the underlying regular triangulation of a weig \cgalRefines{RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic regular triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{All models of `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h index 10c8009e6c2..f91afc7cdb2 100644 --- a/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h +++ b/Alpha_shapes_3/doc/Alpha_shapes_3/Concepts/WeightedAlphaShapeTraits_3.h @@ -10,7 +10,9 @@ of the underlying regular triangulation of a weighted alpha shape. \cgalRefines{RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a regular triangulation, Periodic_3RegularTriangulationTraits_3 if the underlying triangulation of the alpha shape is a periodic regular triangulation} +\cgalHasModelsBegin \cgalHasModelsBare{All models of `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended kernel) */ diff --git a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h index 145349567d2..bf8076c9794 100644 --- a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h +++ b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h @@ -9,10 +9,11 @@ The concept `AlphaWrapOracle` defines the requirements for an Alpha Wrap Ora that answers a number of queries over the input of the algorithm. The oracle is the template parameter of the class `CGAL::Alpha_wraps_3_::Alpha_wrap_3`. -\cgalHasModelsBegin CGAL::Alpha_wraps_3_::Point_set_oracle -\cgalHasModels CGAL::Alpha_wraps_3_::Segment_soup_oracle -\cgalHasModels CGAL::Alpha_wraps_3_::Triangle_mesh_oracle -\cgalHasModels CGAL::Alpha_wraps_3_::Triangle_soup_oracle +\cgalHasModelsBegin +\cgalModels{CGAL::Alpha_wraps_3_::Point_set_oracle} +\cgalModels{CGAL::Alpha_wraps_3_::Segment_soup_oracle} +\cgalModels{CGAL::Alpha_wraps_3_::Triangle_mesh_oracle} +\cgalModels{CGAL::Alpha_wraps_3_::Triangle_soup_oracle} \cgalHasModelsEnd */ diff --git a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h index 916aa5aa3da..c4d7308d511 100644 --- a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h +++ b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapTraits_3.h @@ -11,7 +11,9 @@ you require Kernel. Stitch_borders doesn't even have clear geometric traits requ The concept `AlphaWrapTraits_3` defines the requirements for the geometric traits class of an alpha wrap oracle. +\cgalHasModelsBegin \cgalHasModelsBare{Any 3D %kernel is a model of this traits concept} +\cgalHasModelsEnd */ class AlphaWrapTraits_3 diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h index e494faa898c..78e8ce69c6a 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h @@ -27,7 +27,8 @@ We only describe the additional requirements with respect to the \cgalRefines{TriangulationDataStructure_2} -\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h index 4cfc7a99223..354d27f68bf 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h @@ -19,7 +19,8 @@ next and previous level graphs. `ApolloniusGraphHierarchyVertexBase_2` does not introduce any types in addition to those of `ApolloniusGraphVertexBase_2`. -\cgalHasModelsBegin CGAL::Apollonius_graph_hierarchy_vertex_base_2 > +\cgalHasModelsBegin +\cgalModels{CGAL::Apollonius_graph_hierarchy_vertex_base_2 >} \cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h index 1517dd4fe17..d62bc56484e 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h @@ -12,8 +12,9 @@ it provides a type `Site_2`, which must be a model of the concept constructions for sites and several function object types for the predicates. -\cgalHasModelsBegin CGAL::Apollonius_graph_traits_2 -\cgalHasModels CGAL::Apollonius_graph_filtered_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Apollonius_graph_traits_2} +\cgalModels{CGAL::Apollonius_graph_filtered_traits_2} \cgalHasModelsEnd \sa `CGAL::Apollonius_graph_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h index cac31092baf..45e4bd35745 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h @@ -12,7 +12,8 @@ sites. The container stores the hidden sites related to the vertex. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Apollonius_graph_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Apollonius_graph_vertex_base_2} \cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h index 671d83a6967..8b105f4dab9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementApproximateTraits_2::Approximate_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementApproximateTraits_2::Approximate_2} * \cgalHasModelsEnd */ class Approximate_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h index 56ec39093c7..a5c401dc85f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Are_mergeable_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementXMonotoneTraits_2::Are_mergeable_2} * \cgalHasModelsEnd */ class AreMergeable_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h index 9031f72a9bd..0d85b1f0ae7 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModelsBegin ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_ + * \cgalHasModelsBegin + * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_} * \cgalHasModelsEnd */ class CompareXNearBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h index 45fd98fa2d6..8fccd130906 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableFunctor} * - * \cgalHasModelsBegin ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2 - * \cgalHasModels ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2 - * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2} + * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2} + * \cgalModels{ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2} * \cgalHasModelsEnd */ class CompareXOnBoundaryOfCurveEnd_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h index b02a736b31d..77eea00561d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableFunctor} * - * \cgalHasModelsBegin ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2 - * \cgalHasModels ArrangementClosedTopTraits_2::Compare_x_on_boundary_2 - * \cgalHasModels ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2} + * \cgalModels{ArrangementClosedTopTraits_2::Compare_x_on_boundary_2} + * \cgalModels{ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2} * \cgalHasModelsEnd */ class CompareXOnBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h index fe5d8a4d505..9e9e4fe45cd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h @@ -4,7 +4,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_x_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Compare_x_2} * \cgalHasModelsEnd */ class CompareX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h index f571e844bdb..7e423c1d5cd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_xy_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Compare_xy_2} * \cgalHasModelsEnd */ class CompareXy_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h index eeb40906146..871add8868c 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_left_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_left_2} * \cgalHasModelsEnd */ class CompareYAtXLeft_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h index 1308a75c5bd..4959f78d530 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_right_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_right_2} * \cgalHasModelsEnd */ class CompareYAtXRight_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h index e1e0d671441..55ae2fc00fa 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Compare_y_at_x_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_2} * \cgalHasModelsEnd */ class CompareYAtX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h index df0c66fae01..e2ab7e9cae9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableTernaryFunction} * - * \cgalHasModelsBegin ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2} * \cgalHasModelsEnd */ class CompareYNearBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h index 8f5c89d89fe..38a9090fd53 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h @@ -5,10 +5,11 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2 - * \cgalHasModels ArrangementClosedRightTraits_2::Compare_y_on_boundary_2 - * \cgalHasModels ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2 - * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2} + * \cgalModels{ArrangementClosedRightTraits_2::Compare_y_on_boundary_2} + * \cgalModels{ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2} + * \cgalModels{ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2} * \cgalHasModelsEnd */ class CompareYOnBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h index d6a0c5b1208..75306891423 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementConstructCurveTraits_2::Construct_curve_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementConstructCurveTraits_2::Construct_curve_2} * \cgalHasModelsEnd */ class ConstructCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h index e94c601aa7a..85b5f9a7fe2 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Construct_max_vertex_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Construct_max_vertex_2} * \cgalHasModelsEnd */ class ConstructMaxVertex_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h index 00a000f41ce..a434876ac15 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Construct_min_vertex_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Construct_min_vertex_2} * \cgalHasModelsEnd */ class ConstructMinVertex_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h index d25d94e4371..73a5a007b91 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2} * \cgalHasModelsEnd */ class ConstructXMonotoneCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h index 3994e674cfb..6ecf5245832 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h @@ -6,7 +6,8 @@ namespace ArrTraits { * represents a general planar curve. * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - * \cgalHasModelsBegin ArrangementTraits_2::Curve_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementTraits_2::Curve_2} * \cgalHasModelsEnd */ class Curve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h index 71c6da87afc..ca9e3d1a098 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Equal_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Equal_2} * \cgalHasModelsEnd */ class Equal_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h index 7a6d7e30739..df17bc89d08 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Intersect_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementXMonotoneTraits_2::Intersect_2} * \cgalHasModelsEnd */ class Intersect_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h index f2850203499..6ead4d30e3f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModelsBegin ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2} * \cgalHasModelsEnd */ class IsOnXIdentification_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h index e07b550923f..9da39191b06 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModelsBegin ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2} * \cgalHasModelsEnd */ class IsOnYIdentification_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h index e9bbf29d0c8..1df66d52a0b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{AdaptableUnaryFunction} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Is_vertical_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Is_vertical_2} * \cgalHasModelsEnd */ class IsVertical_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h index 46d0e1b5bae..2731e990a2f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementTraits_2::Make_x_monotone_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementTraits_2::Make_x_monotone_2} * \cgalHasModelsEnd */ class MakeXMonotone_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h index 17e8573bea2..b2ec195a148 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h @@ -5,7 +5,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Merge_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementXMonotoneTraits_2::Merge_2} * \cgalHasModelsEnd */ class Merge_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h index 4e6a66ede1b..1973f4a5371 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementVerticalSideTraits_2::Parameter_space_in_x_2 - * \cgalHasModels ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2 - * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementVerticalSideTraits_2::Parameter_space_in_x_2} + * \cgalModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2} + * \cgalModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2} * \cgalHasModelsEnd */ class ParameterSpaceInX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h index e443f0498da..19dae4f4cde 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h @@ -5,9 +5,10 @@ namespace ArrTraits { * * \cgalRefines{AdaptableBinaryFunction} * - * \cgalHasModelsBegin ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2 - * \cgalHasModels ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2 - * \cgalHasModels ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2} + * \cgalModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2} + * \cgalModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2} * \cgalHasModelsEnd */ class ParameterSpaceInY_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h index 182f0a059ba..cc53c3b9467 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h @@ -7,7 +7,8 @@ namespace ArrTraits { * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::Point_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::Point_2} * \cgalHasModelsEnd */ class Point_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h index ff6bcb382cb..71519a41aea 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h @@ -4,7 +4,8 @@ namespace ArrTraits { * * \cgalRefines{Functor} * - * \cgalHasModelsBegin ArrangementXMonotoneTraits_2::Split_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementXMonotoneTraits_2::Split_2} * \cgalHasModelsEnd */ class Split_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h index f74e74bf150..cf004f92dd0 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h @@ -6,7 +6,8 @@ namespace ArrTraits { * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModelsBegin ArrangementBasicTraits_2::X_monotone_curve_2 + * \cgalHasModelsBegin + * \cgalModels{ArrangementBasicTraits_2::X_monotone_curve_2} * \cgalHasModelsEnd */ class XMonotoneCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h index b4720036574..a6940b050c1 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h @@ -8,14 +8,15 @@ point. \cgalRefines{ArrangementBasicTraits_2} -\cgalHasModelsBegin CGAL::Arr_conic_traits_2 -\cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 -\cgalHasModels CGAL::Arr_linear_traits_2 -\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 -\cgalHasModels CGAL::Arr_segment_traits_2 -\cgalHasModels CGAL::Arr_polycurve_traits_2 -\cgalHasModels CGAL::Arr_polyline_traits_2 -\cgalHasModels CGAL::Arr_rational_function_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_conic_traits_2} +\cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} +\cgalModels{CGAL::Arr_linear_traits_2} +\cgalModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalModels{CGAL::Arr_segment_traits_2} +\cgalModels{CGAL::Arr_polycurve_traits_2} +\cgalModels{CGAL::Arr_polyline_traits_2} +\cgalModels{CGAL::Arr_rational_function_traits_2} \cgalHasModelsEnd \sa `ArrangementConstructXMonotoneCurveTraits_2`, diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h index 3e8c6073572..6edbb7820d6 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h @@ -9,7 +9,8 @@ * represent the arrangement cells (i.e., vertices, edges, and facets) and the * incident relations between them. * - * \cgalHasModelsBegin CGAL::Arr_spherical_topology_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_spherical_topology_traits_2} * \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h index e521ef28b06..530aac71c9c 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h @@ -27,21 +27,22 @@ * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * - * \cgalHasModelsBegin CGAL::Arr_segment_traits_2 - * \cgalHasModels CGAL::Arr_non_caching_segment_basic_traits_2 - * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 - * \cgalHasModels CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_polyline_traits_2 - * \cgalHasModels CGAL::Arr_circle_segment_traits_2 - * \cgalHasModels CGAL::Arr_line_arc_traits_2 - * \cgalHasModels CGAL::Arr_circular_arc_traits_2 - * \cgalHasModels CGAL::Arr_circular_line_arc_traits_2 - * \cgalHasModels CGAL::Arr_conic_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 - * \cgalHasModels CGAL::Arr_Bezier_curve_traits_2 - * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 - * \cgalHasModels CGAL::Arr_curve_data_traits_2 - * \cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_segment_traits_2} + * \cgalModels{CGAL::Arr_non_caching_segment_basic_traits_2} + * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_polyline_traits_2} + * \cgalModels{CGAL::Arr_circle_segment_traits_2} + * \cgalModels{CGAL::Arr_line_arc_traits_2} + * \cgalModels{CGAL::Arr_circular_arc_traits_2} + * \cgalModels{CGAL::Arr_circular_line_arc_traits_2} + * \cgalModels{CGAL::Arr_conic_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalModels{CGAL::Arr_Bezier_curve_traits_2} + * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalModels{CGAL::Arr_curve_data_traits_2} + * \cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} * \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h index 176810a0793..c0f8193d057 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h @@ -7,13 +7,14 @@ * * \cgalRefines{ArrangementTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 - * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 - * \cgalHasModels CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 - * \cgalHasModels CGAL::Arr_segment_traits_2 - * \cgalHasModels CGAL::Arr_polyline_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_conic_traits_2} + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalModels{CGAL::Arr_segment_traits_2} + * \cgalModels{CGAL::Arr_polyline_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementConstructXMonotoneCurveTraits_2`, and diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h index 99ca431cd46..7bfebe4906f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h @@ -7,13 +7,14 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 - * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 - * \cgalHasModels CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 - * \cgalHasModels CGAL::Arr_segment_traits_2 - * \cgalHasModels CGAL::Arr_polyline_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_conic_traits_2} + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalModels{CGAL::Arr_segment_traits_2} + * \cgalModels{CGAL::Arr_polyline_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementApproximateTraits_2`, diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h index 81984c4699e..b750989c9ff 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h @@ -14,10 +14,11 @@ * `ArrangementDcelHalfedge`, `ArrangementDcelFace`, `ArrangementDcelOuterCcb`, * `ArrangementDcelInnerCcb`, and `ArrangementDcelIsolatedVertex` respectively.) * - * \cgalHasModelsBegin CGAL::Arr_dcel_base - * \cgalHasModels CGAL::Arr_default_dcel - * \cgalHasModels CGAL::Arr_face_extended_dcel - * \cgalHasModels CGAL::Arr_extended_dcel + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_dcel_base} + * \cgalModels{CGAL::Arr_default_dcel} + * \cgalModels{CGAL::Arr_face_extended_dcel} + * \cgalModels{CGAL::Arr_extended_dcel} * \cgalHasModelsEnd * * \sa `ArrangementDcelVertex` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h index d4f263cf01f..c3d607c6e98 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h @@ -10,9 +10,10 @@ Instantiate a dcel class with many different possible types without ad-hoc limit \cgalRefines{ArrangementDcel} -\cgalHasModelsBegin CGAL::Arr_default_dcel -\cgalHasModels CGAL::Arr_face_extended_dcel -\cgalHasModels CGAL::Arr_extended_dcel +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_default_dcel} +\cgalModels{CGAL::Arr_face_extended_dcel} +\cgalModels{CGAL::Arr_extended_dcel} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h index 60e28710d01..8dfbfb22707 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h @@ -11,10 +11,11 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 - * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 - * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h index 53469ded7bd..07c14685f6e 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h @@ -5,9 +5,10 @@ * functions that enable reading an arrangement from an input stream using a * specific format. * - * \cgalHasModelsBegin CGAL::Arr_text_formatter - * \cgalHasModels CGAL::Arr_face_extended_text_formatter - * \cgalHasModels CGAL::Arr_extended_dcel_text_formatter + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_text_formatter} + * \cgalModels{CGAL::Arr_face_extended_text_formatter} + * \cgalModels{CGAL::Arr_extended_dcel_text_formatter} * \cgalHasModelsEnd * */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h index b014807650a..79624fa8238 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h @@ -11,14 +11,15 @@ * * \cgalRefines{ArrangementApproximateTraits_2,ArrangementConstructXMonotoneCurveTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_conic_traits_2 - * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 - * \cgalHasModels CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_non_caching_segment_traits_2 - * \cgalHasModels CGAL::Arr_segment_traits_2 - * \cgalHasModels CGAL::Arr_polycurve_traits_2 - * \cgalHasModels CGAL::Arr_polyline_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_conic_traits_2} + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalModels{CGAL::Arr_segment_traits_2} + * \cgalModels{CGAL::Arr_polycurve_traits_2} + * \cgalModels{CGAL::Arr_polyline_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementXMonotoneTraits_2` and diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h index 16f3ffa5195..3bf6b089be6 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h @@ -39,11 +39,12 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 - * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 - * \cgalHasModels CGAL::Arr_curve_data_traits_2 - * \cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalModels{CGAL::Arr_curve_data_traits_2} + * \cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h index bee9cba7720..eb6c67a142b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h @@ -6,9 +6,10 @@ A model for the `ArrangementOutputFormatter` concept supports a set of functions that enable writing an arrangement to an output stream using a specific format. -\cgalHasModelsBegin CGAL::Arr_text_formatter -\cgalHasModels CGAL::Arr_face_extended_text_formatter -\cgalHasModels CGAL::Arr_extended_dcel_text_formatter +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_text_formatter} +\cgalModels{CGAL::Arr_face_extended_text_formatter} +\cgalModels{CGAL::Arr_extended_dcel_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h index 31e4bf30232..782af5d25cd 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h @@ -20,10 +20,11 @@ the old style without any overhead, the macro `CGAL_ARR_POINT_LOCATION_VERSION` can be defined to 1 before any \cgal header is included. -\cgalHasModelsBegin CGAL::Arr_naive_point_location -\cgalHasModels CGAL::Arr_walk_along_line_point_location -\cgalHasModels CGAL::Arr_trapezoid_ric_point_location -\cgalHasModels CGAL::Arr_landmarks_point_location +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_naive_point_location} +\cgalModels{CGAL::Arr_walk_along_line_point_location} +\cgalModels{CGAL::Arr_trapezoid_ric_point_location} +\cgalModels{CGAL::Arr_landmarks_point_location} \cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h index fe9137b5696..2c2d0ad0208 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h @@ -11,7 +11,8 @@ * \cgalRefines{ArrangementBasicTraits_2,ArrangementIdentifiedVerticalTraits_2, * ArrangementContractedBottomTraits_2,ArrangementContractedTopTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementOpenBoundaryTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h index 80660fcda14..defff744a97 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h @@ -20,9 +20,10 @@ * * At this point we do not expose all the requirements of this concept. * - * \cgalHasModelsBegin CGAL::Arr_bounded_planar_topology_traits_2 - * \cgalHasModels CGAL::Arr_unb_planar_topology_traits_2 - * \cgalHasModels CGAL::Arr_spherical_topology_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_bounded_planar_topology_traits_2} + * \cgalModels{CGAL::Arr_unb_planar_topology_traits_2} + * \cgalModels{CGAL::Arr_spherical_topology_traits_2} * \cgalHasModelsEnd * * \sa `Arrangement_on_surface_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h index e9bca5d3dc9..897ede7f25a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h @@ -30,20 +30,21 @@ that accept such curves, such as `intsert()`. \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModelsBegin CGAL::Arr_segment_traits_2 -\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 -\cgalHasModels CGAL::Arr_linear_traits_2 -\cgalHasModels CGAL::Arr_polyline_traits_2 -\cgalHasModels CGAL::Arr_circle_segment_traits_2 -\cgalHasModels CGAL::Arr_line_arc_traits_2 -\cgalHasModels CGAL::Arr_circular_arc_traits_2 -\cgalHasModels CGAL::Arr_circular_line_arc_traits_2 -\cgalHasModels CGAL::Arr_conic_traits_2 -\cgalHasModels CGAL::Arr_rational_function_traits_2 -\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 -\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 -\cgalHasModels CGAL::Arr_curve_data_traits_2 -\cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_segment_traits_2} +\cgalModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalModels{CGAL::Arr_linear_traits_2} +\cgalModels{CGAL::Arr_polyline_traits_2} +\cgalModels{CGAL::Arr_circle_segment_traits_2} +\cgalModels{CGAL::Arr_line_arc_traits_2} +\cgalModels{CGAL::Arr_circular_arc_traits_2} +\cgalModels{CGAL::Arr_circular_line_arc_traits_2} +\cgalModels{CGAL::Arr_conic_traits_2} +\cgalModels{CGAL::Arr_rational_function_traits_2} +\cgalModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalModels{CGAL::Arr_algebraic_segment_traits_2} +\cgalModels{CGAL::Arr_curve_data_traits_2} +\cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} \cgalHasModelsEnd \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h index eb1b893f460..0b7c89be158 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h @@ -28,10 +28,11 @@ is recommended. To enable the old style without any overhead, the macro `CGAL_ARR_POINT_LOCATION_VERSION` can be defined to 1 before any \cgal header is included. -\cgalHasModelsBegin CGAL::Arr_naive_point_location -\cgalHasModels CGAL::Arr_walk_along_line_point_location -\cgalHasModels CGAL::Arr_trapezoid_ric_point_location -\cgalHasModels CGAL::Arr_landmarks_point_location +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_naive_point_location} +\cgalModels{CGAL::Arr_walk_along_line_point_location} +\cgalModels{CGAL::Arr_trapezoid_ric_point_location} +\cgalModels{CGAL::Arr_landmarks_point_location} \cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h index e12fda8a889..2b9d1c9f6c1 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h @@ -11,10 +11,11 @@ * * \cgalRefines{ArrangementBasicTraits_2} * - * \cgalHasModelsBegin CGAL::Arr_linear_traits_2 - * \cgalHasModels CGAL::Arr_rational_function_traits_2 - * \cgalHasModels CGAL::Arr_algebraic_segment_traits_2 - * \cgalHasModels CGAL::Arr_geodesic_arc_on_sphere_traits_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::Arr_linear_traits_2} + * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h index 4b31986adfb..601725e3c06 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h @@ -9,7 +9,8 @@ specific format. \cgalRefines{ArrangementInputFormatter} -\cgalHasModelsBegin CGAL::Arr_with_history_text_formatter +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_with_history_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h index 8ff0dc5eda4..287a3a9f7eb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h @@ -9,7 +9,8 @@ specific format. \cgalRefines{ArrangementOutputFormatter} -\cgalHasModelsBegin CGAL::Arr_with_history_text_formatter +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_with_history_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h index 99e34f2ae6d..32e49f947dc 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h @@ -18,20 +18,21 @@ curve splitting. \cgalRefines{ArrangementBasicTraits_2} -\cgalHasModelsBegin CGAL::Arr_segment_traits_2 -\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 -\cgalHasModels CGAL::Arr_linear_traits_2 -\cgalHasModels CGAL::Arr_polyline_traits_2 -\cgalHasModels CGAL::Arr_circle_segment_traits_2 -\cgalHasModels CGAL::Arr_line_arc_traits_2 -\cgalHasModels CGAL::Arr_circular_arc_traits_2 -\cgalHasModels CGAL::Arr_circular_line_arc_traits_2 -\cgalHasModels CGAL::Arr_conic_traits_2 -\cgalHasModels CGAL::Arr_rational_function_traits_2 -\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 -\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 -\cgalHasModels CGAL::Arr_curve_data_traits_2 -\cgalHasModels CGAL::Arr_consolidated_curve_data_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_segment_traits_2} +\cgalModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalModels{CGAL::Arr_linear_traits_2} +\cgalModels{CGAL::Arr_polyline_traits_2} +\cgalModels{CGAL::Arr_circle_segment_traits_2} +\cgalModels{CGAL::Arr_line_arc_traits_2} +\cgalModels{CGAL::Arr_circular_arc_traits_2} +\cgalModels{CGAL::Arr_circular_line_arc_traits_2} +\cgalModels{CGAL::Arr_conic_traits_2} +\cgalModels{CGAL::Arr_rational_function_traits_2} +\cgalModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalModels{CGAL::Arr_algebraic_segment_traits_2} +\cgalModels{CGAL::Arr_curve_data_traits_2} +\cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} \cgalHasModelsEnd \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h index 2a90dfee44d..678d26425c4 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h @@ -11,8 +11,9 @@ Models for the concept are used by the global `overlay()` function to maintain the auxiliary data stored with the \dcel records of the resulting overlaid arrangement, based on the contents of the input records. -\cgalHasModelsBegin CGAL::Arr_default_overlay_traits -\cgalHasModels CGAL::Arr_face_overlay_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_default_overlay_traits} +\cgalModels{CGAL::Arr_face_overlay_traits} \cgalHasModelsEnd \sa `overlay` diff --git a/BGL/doc/BGL/Concepts/EdgeListGraph.h b/BGL/doc/BGL/Concepts/EdgeListGraph.h index 93b23b76748..f1a0412db76 100644 --- a/BGL/doc/BGL/Concepts/EdgeListGraph.h +++ b/BGL/doc/BGL/Concepts/EdgeListGraph.h @@ -11,7 +11,9 @@ and adds the requirement for traversal of all edges in a graph. \cgalRefines{Graph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/FaceGraph.h b/BGL/doc/BGL/Concepts/FaceGraph.h index a8b8bbe1893..0320f5b7b76 100644 --- a/BGL/doc/BGL/Concepts/FaceGraph.h +++ b/BGL/doc/BGL/Concepts/FaceGraph.h @@ -20,7 +20,9 @@ A face descriptor must be `DefaultConstructible`, `Assignable`, `EqualityCompara \cgalRefines{HalfedgeGraph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/FaceListGraph.h b/BGL/doc/BGL/Concepts/FaceListGraph.h index 046015b67d2..40339f34e8f 100644 --- a/BGL/doc/BGL/Concepts/FaceListGraph.h +++ b/BGL/doc/BGL/Concepts/FaceListGraph.h @@ -16,7 +16,9 @@ face iterator must be the same as the face descriptor of the graph. \cgalRefines{FaceGraph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/HalfedgeGraph.h b/BGL/doc/BGL/Concepts/HalfedgeGraph.h index 7be2d2220d7..15600e02175 100644 --- a/BGL/doc/BGL/Concepts/HalfedgeGraph.h +++ b/BGL/doc/BGL/Concepts/HalfedgeGraph.h @@ -38,7 +38,9 @@ An edge descriptor must be `DefaultConstructible`, `Assignable`, `EqualityCompar A model of `HalfedgeGraph` must have the interior property `vertex_point` attached to its vertices. +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/HalfedgeListGraph.h b/BGL/doc/BGL/Concepts/HalfedgeListGraph.h index c5f8eeff689..a709aadaa8b 100644 --- a/BGL/doc/BGL/Concepts/HalfedgeListGraph.h +++ b/BGL/doc/BGL/Concepts/HalfedgeListGraph.h @@ -16,7 +16,9 @@ halfedge iterator must be the same as the halfedge descriptor of the graph. \cgalRefines{HalfedgeGraph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/MutableFaceGraph.h b/BGL/doc/BGL/Concepts/MutableFaceGraph.h index 1f0f86c6a86..f47bf7de816 100644 --- a/BGL/doc/BGL/Concepts/MutableFaceGraph.h +++ b/BGL/doc/BGL/Concepts/MutableFaceGraph.h @@ -7,7 +7,9 @@ the requirement for operations to add faces and to modify face-halfedge relation \cgalRefines{FaceGraph,MutableHalfedgeGraph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h b/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h index 86bd650fc86..c5d8c66ec56 100644 --- a/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h +++ b/BGL/doc/BGL/Concepts/MutableHalfedgeGraph.h @@ -8,7 +8,9 @@ update the incidence information between vertices and halfedges. \cgalRefines{HalfedgeGraph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/BGL/doc/BGL/Concepts/VertexListGraph.h b/BGL/doc/BGL/Concepts/VertexListGraph.h index 009fe00dac1..f6e65cf7200 100644 --- a/BGL/doc/BGL/Concepts/VertexListGraph.h +++ b/BGL/doc/BGL/Concepts/VertexListGraph.h @@ -11,7 +11,9 @@ and adds the requirement for traversal of all vertices in a graph. \cgalRefines{Graph} +\cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} +\cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h index 9fd9c19943b..35818aa505d 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h @@ -8,9 +8,10 @@ namespace Barycentric_coordinates { A concept that describes the set of methods that should be defined for all coordinate models used to parameterize the class `Generalized_barycentric_coordinates_2`. -\cgalHasModelsBegin Wachspress_2 -\cgalHasModels Mean_value_2 -\cgalHasModels Discrete_harmonic_2 +\cgalHasModelsBegin +\cgalModels{Wachspress_2} +\cgalModels{Mean_value_2} +\cgalModels{Discrete_harmonic_2} \cgalHasModelsEnd \deprecated This part of the package is deprecated since the version 5.4 of \cgal. diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h index bf07127b14d..6fb0823a744 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h @@ -9,10 +9,12 @@ A concept that describes the set of requirements of the template parameter `GeomTraits` used to parameterize all classes and functions with 2D barycentric coordinates from the namespace `CGAL::Barycentric_coordinates`. -\cgalHasModelsBareBegin{All models of `Kernel`} CGAL::Projection_traits_3 -\cgalHasModels CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of `Kernel`} +\cgalHasModels{CGAL::Projection_traits_3} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd */ class BarycentricTraits_2 { diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h index 9ace050c0d8..b1613da6b02 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h @@ -13,7 +13,8 @@ elements, which share common edges and vertices. These finite elements are then used to approximate certain types of generalized barycentric coordinate functions. The domain is bounded by the polygon. -\cgalHasModelsBegin Delaunay_domain_2 +\cgalHasModelsBegin +\cgalModels{Delaunay_domain_2} \cgalHasModelsEnd */ class DiscretizedDomain_2 { diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h index 409316c5a4e..bc3fa2117d3 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h index f4fcfa096e9..a2e684be626 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h @@ -6,7 +6,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h index 719878346a5..bac19b87072 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h @@ -6,7 +6,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h index 1e98facf71d..f82f215155a 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Intersect_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Intersect_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h index 2064a3ba079..a2b89befdec 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Merge_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Merge_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h index 91f8903728c..7bca25154fd 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h @@ -5,7 +5,8 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} -\cgalHasModelsBegin ArrangementDirectionalXMonotoneTraits_2::Split_2 +\cgalHasModelsBegin +\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Split_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h index 6b66a66997b..15aaffd0788 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h @@ -16,13 +16,14 @@ as its source and the other as its target. \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModelsBegin CGAL::Arr_segment_traits_2 -\cgalHasModels CGAL::Arr_non_caching_segment_traits_2 -\cgalHasModels CGAL::Arr_circle_segment_traits_2 -\cgalHasModels CGAL::Arr_conic_traits_2 -\cgalHasModels CGAL::Arr_rational_function_traits_2 -\cgalHasModels CGAL::Arr_Bezier_curve_traits_2 -\cgalHasModels CGAL::Arr_algebraic_segment_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Arr_segment_traits_2} +\cgalModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalModels{CGAL::Arr_circle_segment_traits_2} +\cgalModels{CGAL::Arr_conic_traits_2} +\cgalModels{CGAL::Arr_rational_function_traits_2} +\cgalModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalModels{CGAL::Arr_algebraic_segment_traits_2} \cgalHasModelsEnd \sa `ArrangementXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h index 9264a822bff..3151c6eb074 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h @@ -16,7 +16,8 @@ respectively \cgalRefines{ArrangementDcel} -\cgalHasModelsBegin CGAL::Gps_default_dcel +\cgalHasModelsBegin +\cgalModels{CGAL::Gps_default_dcel} \cgalHasModelsEnd \sa `GeneralPolygonSetDcelFace` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h index 029f24e7b3f..123f3b883cf 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h @@ -9,7 +9,8 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelFace} -\cgalHasModelsBegin CGAL::Gps_face_base +\cgalHasModelsBegin +\cgalModels{CGAL::Gps_face_base} \cgalHasModelsEnd \sa `ArrangementDcel` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h index 900f5237229..3f254f685a2 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h @@ -8,7 +8,8 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelHalfedge} -\cgalHasModelsBegin CGAL::Gps_face_halfedge +\cgalHasModelsBegin +\cgalModels{CGAL::Gps_face_halfedge} \cgalHasModelsEnd \sa `ArrangementDcel` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h index 5271a780744..bd1afb8ed78 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h @@ -13,9 +13,10 @@ types. \cgalRefines{ArrangementDirectionalXMonotoneTraits_2} -\cgalHasModelsBegin CGAL::Gps_segment_traits_2 -\cgalHasModels CGAL::Gps_circle_segment_traits_2 -\cgalHasModels CGAL::Gps_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Gps_segment_traits_2} +\cgalModels{CGAL::Gps_circle_segment_traits_2} +\cgalModels{CGAL::Gps_traits_2} \cgalHasModelsEnd \sa `ArrangementDirectionalXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h index d9103ae6839..b9e25593526 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h @@ -16,7 +16,8 @@ accordingly. Only counterclockwise oriented polygons are valid operands of Boolean set-operations. General polygon that represent holes must be clockwise oriented. -\cgalHasModelsBegin CGAL::General_polygon_2 +\cgalHasModelsBegin +\cgalModels{CGAL::General_polygon_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h index c9d62f6cef6..2515be1d0e7 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h @@ -9,7 +9,8 @@ A model of this concept represents a general polygon with holes. \cgalGeneralizes `GeneralPolygonWithHoles_2` -\cgalHasModelsBegin GeneralPolygonSetTraits_2::Polygon_with_holes2 +\cgalHasModelsBegin +\cgalModels{GeneralPolygonSetTraits_2::Polygon_with_holes2} \cgalHasModelsEnd \sa `GeneralPolygonWithHoles_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h index a9999735b0e..dc6486a1a31 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h @@ -9,8 +9,9 @@ A model of this concept represents a simple general polygon. \cgalGeneralizes `GeneralPolygon_2` -\cgalHasModelsBegin GeneralPolygonSetTraits_2::Polygon_2 -\cgalHasModels CGAL::Polygon_2 +\cgalHasModelsBegin +\cgalModels{GeneralPolygonSetTraits_2::Polygon_2} +\cgalModels{CGAL::Polygon_2} \cgalHasModelsEnd \sa `GeneralPolygon_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h index 05721090917..0ce3d2249b9 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h @@ -8,9 +8,10 @@ This concept defines the requirements for traits classes of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Approximate_min_ellipsoid_d_traits_2 -\cgalHasModels CGAL::Approximate_min_ellipsoid_d_traits_3 -\cgalHasModels CGAL::Approximate_min_ellipsoid_d_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_2} +\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_3} +\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h index 71cb832881e..3e25f230aeb 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h @@ -6,7 +6,8 @@ This concept defines the requirements for traits classes of `CGAL::Min_circle_2`. -\cgalHasModelsBegin CGAL::Min_circle_2_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Min_circle_2_traits_2} \cgalHasModelsEnd \sa `CGAL::Min_circle_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h index d6cfac02a1f..853c3243813 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h @@ -6,7 +6,8 @@ This concept defines the requirements for traits classes of `CGAL::Min_ellipse_2`. -\cgalHasModelsBegin CGAL::Min_ellipse_2_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Min_ellipse_2_traits_2} \cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h index 17da54b7774..592d52d69d9 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h @@ -8,7 +8,8 @@ needed to compute minimum enclosing quadrilaterals of a planar point set using the functions `min_rectangle_2()`, `min_parallelogram_2()` and `min_strip_2()`. -\cgalHasModelsBegin CGAL::Min_quadrilateral_default_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Min_quadrilateral_default_traits_2} \cgalHasModelsEnd \sa `CGAL::min_rectangle_2()` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h index ddd404f13c6..0d812dd559b 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h @@ -6,9 +6,10 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional min sphere and min annulus algorithms. -\cgalHasModelsBegin CGAL::Min_sphere_annulus_d_traits_2 -\cgalHasModels CGAL::Min_sphere_annulus_d_traits_3 -\cgalHasModels CGAL::Min_sphere_annulus_d_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Min_sphere_annulus_d_traits_2} +\cgalModels{CGAL::Min_sphere_annulus_d_traits_3} +\cgalModels{CGAL::Min_sphere_annulus_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Min_sphere_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h index 345beddeb9c..2e19511b810 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h @@ -6,12 +6,13 @@ A model of concept `MinSphereOfSpheresTraits` must provide the following constants, types, predicates and operations. -\cgalHasModelsBegin CGAL::Min_sphere_of_spheres_d_traits_2 -\cgalHasModels CGAL::Min_sphere_of_spheres_d_traits_3 -\cgalHasModels CGAL::Min_sphere_of_spheres_d_traits_d -\cgalHasModels CGAL::Min_sphere_of_points_d_traits_2 -\cgalHasModels CGAL::Min_sphere_of_points_d_traits_3 -\cgalHasModels CGAL::Min_sphere_of_points_d_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_2} +\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_3} +\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_d} +\cgalModels{CGAL::Min_sphere_of_points_d_traits_2} +\cgalModels{CGAL::Min_sphere_of_points_d_traits_3} +\cgalModels{CGAL::Min_sphere_of_points_d_traits_d} \cgalHasModelsEnd */ diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h index 2c9c9ba44d5..b72e77f91d3 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h @@ -7,7 +7,8 @@ The concept `RectangularPCenterTraits_2` defines types and operations needed to compute rectilinear \f$ p\f$-centers of a planar point set using the function `CGAL::rectangular_p_center_2()`. -\cgalHasModelsBegin CGAL::Rectangular_p_center_default_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Rectangular_p_center_default_traits_2} \cgalHasModelsEnd \sa `CGAL::rectangular_p_center_2()` diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h index 594f4c94ebb..d41ffd3d842 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h @@ -10,8 +10,9 @@ the dimension, the `id`-number, and the boundaries of the box. \cgalRefines{Assignable} -\cgalHasModelsBegin CGAL::Box_intersection_d::Box_d -\cgalHasModels CGAL::Box_intersection_d::Box_with_handle_d +\cgalHasModelsBegin +\cgalModels{CGAL::Box_intersection_d::Box_d} +\cgalModels{CGAL::Box_intersection_d::Box_with_handle_d} \cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h index cf6dfcb546d..98cb8e4a34f 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h @@ -9,7 +9,8 @@ the boxes manipulated in these algorithms. \cgalRefines{Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Box_intersection_d::Box_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Box_intersection_d::Box_traits_d} \cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h index f5a18c37220..05175484ac2 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h @@ -11,7 +11,8 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Polynomial_for_circles_2_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomial_for_circles_2_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h index b01eedc5a49..ee376204999 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h @@ -9,7 +9,8 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Polynomial_1_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomial_1_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h index d1771575964..13cdb511935 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h @@ -7,7 +7,8 @@ Concept to represent the roots of a system of two equations of degree 2 in two variables `x` and `y` that are models of concept `AlgebraicKernelForCircles::PolynomialForCircles_2_2` -\cgalHasModelsBegin CGAL::Root_for_circles_2_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Root_for_circles_2_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h index e0d50ab1b57..9b259e047c3 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h @@ -7,7 +7,8 @@ The `AlgebraicKernelForCircles` concept is meant to provide the curved kernel with all the algebraic functionalities required for the manipulation of circular arcs. -\cgalHasModelsBegin CGAL::Algebraic_kernel_for_circles_2_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Algebraic_kernel_for_circles_2_2} \cgalHasModelsEnd \sa `CircularKernel` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h index 603867502f9..82cf9487e87 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h @@ -7,7 +7,8 @@ Concept for points on circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Circular_arc_point_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Circular_arc_point_2} \cgalHasModelsEnd */ class CircularKernel::CircularArcPoint_2 { diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h index bd5586d0035..d5833dfa55d 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h @@ -7,7 +7,8 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Circular_arc_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Circular_arc_2} \cgalHasModelsEnd */ diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h index 7f82890c16a..e92230b10a0 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h @@ -9,7 +9,8 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Line_arc_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Line_arc_2} \cgalHasModelsEnd */ diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h index a151ed89191..d5c912468c6 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h @@ -5,8 +5,9 @@ \cgalRefines{Kernel} -\cgalHasModelsBegin CGAL::Circular_kernel_2 -\cgalHasModels CGAL::Exact_circular_kernel_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Circular_kernel_2} +\cgalModels{CGAL::Exact_circular_kernel_2} \cgalHasModelsEnd \sa `Kernel` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h index 0dbd299b9cd..70aa9278d6b 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h @@ -11,7 +11,8 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin GAL::Polynomial_for_spheres_2_ +\cgalHasModelsBegin +\cgalModels{GAL::Polynomial_for_spheres_2_} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h index 8cf947c04ba..6423e3805a0 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h @@ -9,7 +9,8 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Polynomial_1_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomial_1_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h index 70866c01e37..99d40b5860a 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h @@ -8,7 +8,8 @@ capable of storing equations of lines. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Polynomials_for_lines_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomials_for_lines_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h index 2754b94e091..cb25b3d6244 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h @@ -7,7 +7,8 @@ Concept to represent the roots of a system of three equations of degree 2 in three variables `x`, `y` and `z` that are models of concept `AlgebraicKernelForSpheres::PolynomialForSpheres_2_3`. -\cgalHasModelsBegin CGAL::Root_for_spheres_2_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Root_for_spheres_2_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h index e83eca8300d..585101b73df 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h @@ -7,7 +7,8 @@ The `AlgebraicKernelForSpheres` concept is meant to provide the curved kernel with all the algebraic functionalities required for the manipulation of spheres, circles, and circular arcs in 3D. -\cgalHasModelsBegin CGAL::Algebraic_kernel_for_spheres_2_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Algebraic_kernel_for_spheres_2_3} \cgalHasModelsEnd \sa `SphericalKernel` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h index 81128f2844e..8c932d22712 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h @@ -7,7 +7,8 @@ Concept for points on spheres, circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Circular_arc_point_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Circular_arc_point_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h index 5a8498f2824..644a5077384 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h @@ -7,7 +7,8 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Circular_arc_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Circular_arc_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h index 07946ba0f14..ca26700179f 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h @@ -9,7 +9,8 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Line_arc_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Line_arc_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h index 3bafc8659d0..22b38914961 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h @@ -5,8 +5,9 @@ \cgalRefines{Kernel} -\cgalHasModelsBegin CGAL::Spherical_kernel_3 -\cgalHasModels CGAL::Exact_spherical_kernel_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Spherical_kernel_3} +\cgalModels{CGAL::Exact_spherical_kernel_3} \cgalHasModelsEnd \sa `Kernel` diff --git a/Circulator/doc/Circulator/Concepts/ConstHandle.h b/Circulator/doc/Circulator/Concepts/ConstHandle.h index 9ff3bea6b33..b15f9c6fd0c 100644 --- a/Circulator/doc/Circulator/Concepts/ConstHandle.h +++ b/Circulator/doc/Circulator/Concepts/ConstHandle.h @@ -7,7 +7,8 @@ A constant handle. Refer to the `Handle` concept for more details. \cgalRefines{Descriptor} -\cgalHasModelsBegin const T* (const pointers) +\cgalHasModelsBegin +\cgalModels{const T* (const pointers)} \cgalHasModelsEnd \sa `Handle` diff --git a/Circulator/doc/Circulator/Concepts/ConstRange.h b/Circulator/doc/Circulator/Concepts/ConstRange.h index 643dc47c83b..a0a6751737c 100644 --- a/Circulator/doc/Circulator/Concepts/ConstRange.h +++ b/Circulator/doc/Circulator/Concepts/ConstRange.h @@ -7,7 +7,10 @@ A constant iterator range. Refer to the `Range` concept for more details. \cgalRefinesBare{Boost's %Range concept} -\cgalHasModelsBare{STL containers,`boost::iterator_range`} +\cgalHasModelsBegin +\cgalHasModelsBare{STL containers} +\cgalHasModelsBare{`boost::iterator_range`} +\cgalHasModelsEnd \sa `Range` diff --git a/Circulator/doc/Circulator/Concepts/Handle.h b/Circulator/doc/Circulator/Concepts/Handle.h index a5fade1d46f..0e531736bcf 100644 --- a/Circulator/doc/Circulator/Concepts/Handle.h +++ b/Circulator/doc/Circulator/Concepts/Handle.h @@ -23,10 +23,11 @@ operator is concerned (this serves the same purpose as NULL for pointers). (Note that this is not a generally supported feature of iterators of standard containers.) -\cgalHasModelsBegin T* (pointer) -\cgalHasModels const T* (const pointers) -\cgalHasModels Iterator -\cgalHasModels Circulator +\cgalHasModelsBegin +\cgalModels{T* (pointer)} +\cgalModels{const T* (const pointers)} +\cgalModels{Iterator} +\cgalModels{Circulator} \cgalHasModelsEnd */ class Handle { diff --git a/Circulator/doc/Circulator/Concepts/Range.h b/Circulator/doc/Circulator/Concepts/Range.h index ef6cfd56d58..afd4b427182 100644 --- a/Circulator/doc/Circulator/Concepts/Range.h +++ b/Circulator/doc/Circulator/Concepts/Range.h @@ -31,7 +31,9 @@ difference with iterators which are typically passed by value. \cgalRefinesBare{ConstRange,Boost's %Range concept} +\cgalHasModelsBegin \cgalHasModelsBare{STL containers} +\cgalHasModelsEnd */ diff --git a/Classification/doc/Classification/Concepts/Classifier.h b/Classification/doc/Classification/Concepts/Classifier.h index 9a350599794..fefec08fceb 100644 --- a/Classification/doc/Classification/Concepts/Classifier.h +++ b/Classification/doc/Classification/Concepts/Classifier.h @@ -12,9 +12,10 @@ Concept describing a classifier used by classification functions (see `CGAL::Classification::classify()`, `CGAL::Classification::classify_with_local_smoothing()` and `CGAL::Classification::classify_with_graphcut()`). -\cgalHasModelsBegin CGAL::Classification::Sum_of_weighted_features_classifier -\cgalHasModels CGAL::Classification::ETHZ::Random_forest_classifier -\cgalHasModels CGAL::Classification::OpenCV::Random_forest_classifier +\cgalHasModelsBegin +\cgalModels{CGAL::Classification::Sum_of_weighted_features_classifier} +\cgalModels{CGAL::Classification::ETHZ::Random_forest_classifier} +\cgalModels{CGAL::Classification::OpenCV::Random_forest_classifier} \cgalHasModelsEnd */ diff --git a/Classification/doc/Classification/Concepts/NeighborQuery.h b/Classification/doc/Classification/Concepts/NeighborQuery.h index 99aeb76cb2f..4db42f7b4b8 100644 --- a/Classification/doc/Classification/Concepts/NeighborQuery.h +++ b/Classification/doc/Classification/Concepts/NeighborQuery.h @@ -10,10 +10,11 @@ namespace Classification Concept describing a neighbor query used for classification. -\cgalHasModelsBegin CGAL::Classification::Point_set_neighborhood::K_neighbor_query -\cgalHasModels CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query -\cgalHasModels CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query -\cgalHasModels CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query +\cgalHasModelsBegin +\cgalModels{CGAL::Classification::Point_set_neighborhood::K_neighbor_query} +\cgalModels{CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query} +\cgalModels{CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query} +\cgalModels{CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query} \cgalHasModelsEnd */ diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h index ad331c7bc22..ec2f990abf1 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/CellAttribute.h @@ -5,7 +5,9 @@ The concept `CellAttribute` represents a non void attribute associated with a cell of a generic map. It can keep a descriptor to one dart of its associated cell, and can contain any information. +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Cell_attribute `CGAL::Cell_attribute`\endlink} +\cgalHasModelsEnd \sa `GenericMap` \sa `GenericMapItems` diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h index ecf28bda596..251d424bc02 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/CombinatorialMap.h @@ -6,7 +6,9 @@ The concept `CombinatorialMap` defines a d-dimensional combinatorial map. \cgalRefines{GenericMap} +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink} +\cgalHasModelsEnd For a combinatorial map, the function \link GenericMap::next `next`\endlink is equal to \f$ \beta_1\f$, \link GenericMap::previous `previous`\endlink is equal to \f$ \beta_0\f$ and the function \link GenericMap::opposite `opposite`\endlink is equal to \f$ \beta_i\f$. */ diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h index 87113f9aa21..9e09eb5dea8 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMap.h @@ -8,8 +8,10 @@ The concept `GenericMap` defines a d-dimensional generic map. This concep A generic map has a set of darts D, and functions \f$ f_0\f$,\f$ \ldots\f$,\f$ f_{d}\f$ that link these darts between them. -\cgalHasModelsBare{\link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink\n - \link CGAL::Generalized_map `CGAL::Generalized_map`\endlink} +\cgalHasModelsBegin +\cgalHasModelsBare{\link CGAL::Combinatorial_map `CGAL::Combinatorial_map`\endlink} +\cgalHasModelsBare{\link CGAL::Generalized_map `CGAL::Generalized_map`\endlink} +\cgalHasModelsEnd \sa `CombinatorialMap` \sa `GeneralizedMap` diff --git a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h index 6fd24033a72..4117f134ecc 100644 --- a/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h +++ b/Combinatorial_map/doc/Combinatorial_map/Concepts/GenericMapItems.h @@ -4,7 +4,9 @@ The concept `GenericMapItems` allows to customize a dD generic map by choosing the information associated with darts, by enabling and disabling some attributes, and by choosing to use indices or handles. For that, it defines an inner class template named \link GenericMapItems::Dart_wrapper `Dart_wrapper`\endlink, with one template parameter, `Map`, a model of the `GenericMap` concept. This inner class can define the two types `%Dart_info` and `%Attributes`. +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Generic_map_min_items `CGAL::Generic_map_min_items`\endlink} +\cgalHasModelsEnd \sa `GenericMap` diff --git a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h index 251e12f7fb9..f5e1d3a6f36 100644 --- a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h @@ -9,12 +9,13 @@ primitives (objects and predicates) that the convex hull algorithms use. functions. The specific subset of these primitives required by each function is specified with each function. -\cgalHasModelsBegin CGAL::Convex_hull_constructive_traits_2 -\cgalHasModels CGAL::Convex_hull_traits_2 -\cgalHasModels CGAL::Convex_hull_traits_adapter_2 -\cgalHasModels CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Convex_hull_constructive_traits_2} +\cgalModels{CGAL::Convex_hull_traits_2} +\cgalModels{CGAL::Convex_hull_traits_adapter_2} +\cgalModels{CGAL::Projection_traits_xy_3} +\cgalModels{CGAL::Projection_traits_yz_3} +\cgalModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h index 711efc4d8aa..b9fd8dac230 100644 --- a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h @@ -4,8 +4,9 @@ Requirements of the traits class of the function `CGAL::convex_hull_3()`. -\cgalHasModelsBegin CGAL::Convex_hull_traits_3 -\cgalHasModels CGAL::Extreme_points_traits_adapter_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Convex_hull_traits_3} +\cgalModels{CGAL::Extreme_points_traits_adapter_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h b/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h index 6f3bad1286e..5b03c77793f 100644 --- a/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/Concepts/IsStronglyConvexTraits_3.h @@ -6,7 +6,9 @@ Requirements of the traits class used by the function `CGAL::is_strongly_convex_3()`, which is used for postcondition checking by `CGAL::convex_hull_3()`. -\cgalHasModelsBareBegin{All models of `Kernel`} CGAL::Convex_hull_traits_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of `Kernel`} +\cgalHasModels{CGAL::Convex_hull_traits_3} \cgalHasModelsEnd \sa `ConvexHullTraits_3` diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h index 78e06df722d..fce2c1aa320 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h @@ -7,9 +7,10 @@ Requirements of the traits class to be used with the class `CGAL::Convex_hull_d`. -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d -\cgalHasModels CGAL::Convex_hull_d_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} +\cgalModels{CGAL::Convex_hull_d_traits_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h index 23352fbe2e6..0937e25239c 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h @@ -7,8 +7,9 @@ Requirements of the second traits class to be used with the class `CGAL::Delaunay_d`. -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h index b8e91a96aa9..2f91bbf7d82 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h @@ -7,8 +7,9 @@ Requirements of the first traits class to be used with the class `CGAL::Delaunay_d`. -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index 0521a19e26d..d25c24605ae 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -146,12 +146,10 @@ ALIASES = "cgal=%CGAL" \ "cgalModelsBare{2}=
    @cgalModelsHeader
    \1
    \2
    " \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModelsHeader=Has models" \ - "cgalHasModelsBegin=
    @cgalHasModelsHeader
    `" \ - "cgalHasModels=`
    `" \ - "cgalHasModelsEnd=`
    " \ - "cgalHasModelsBare{1}=
    @cgalHasModelsHeader
    \1
    " \ - "cgalHasModelsBare{2}=
    @cgalHasModelsHeader
    \1
    \2
    " \ - "cgalHasModelsBareBegin{1}=
    @cgalHasModelsHeader
    \1
    `" \ + "cgalHasModelsBegin=
    @cgalHasModelsHeader
    " \ + "cgalHasModels{1}=
    `\1`
    " \ + "cgalHasModelsBare{1}=
    \1
    " \ + "cgalHasModelsEnd=
    " \ "cgalDebugBegin=\htmlonly
    Debugging Support
    \endhtmlonly \n" \ "cgalDebugEnd=\htmlonly
    \endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 11e0fa1ae9a..6b2dbc6ae72 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -155,12 +155,10 @@ ALIASES = "cgal=%CGAL" \ "cgalModelsBare{2}=
    @cgalModelsHeader
    \1
    \2
    " \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModelsHeader=Has models" \ - "cgalHasModelsBegin=
    @cgalHasModelsHeader
    `" \ - "cgalHasModels=`
    `" \ - "cgalHasModelsEnd=`
    " \ - "cgalHasModelsBare{1}=
    @cgalHasModelsHeader
    \1
    " \ - "cgalHasModelsBare{2}=
    @cgalHasModelsHeader
    \1
    \2
    " \ - "cgalHasModelsBareBegin{1}=
    @cgalHasModelsHeader
    \1
    `" \ + "cgalHasModelsBegin=
    @cgalHasModelsHeader
    " \ + "cgalHasModels{1}=
    `\1`
    " \ + "cgalHasModelsBare{1}=
    \1
    " \ + "cgalHasModelsEnd=
    " \ "cgalDebugBegin=\htmlonly[block]
    Debugging Support
    \endhtmlonly ^^" \ "cgalDebugEnd=\htmlonly[block]
    \endhtmlonly" \ "cgalDebugFunction=This is a function for debugging purpose." \ diff --git a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h index 66b3c1f3477..02ae3ebf7cf 100644 --- a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h +++ b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h @@ -16,10 +16,11 @@ Note however, that these operations usually involve the projection of \cgalRefines{ArrangementXMonotoneTraits_2} -\cgalHasModelsBegin CGAL::Env_triangle_traits_3 -\cgalHasModels CGAL::Env_sphere_traits_3 -\cgalHasModels CGAL::Env_plane_traits_3 -\cgalHasModels CGAL::Env_surface_data_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Env_triangle_traits_3} +\cgalModels{CGAL::Env_sphere_traits_3} +\cgalModels{CGAL::Env_plane_traits_3} +\cgalModels{CGAL::Env_surface_data_traits_3} \cgalHasModelsEnd */ diff --git a/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h b/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h index f43d4b8944d..16fa1e40eab 100644 --- a/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h +++ b/Generalized_map/doc/Generalized_map/Concepts/GeneralizedMap.h @@ -6,7 +6,9 @@ The concept `GeneralizedMap` defines a d-dimensional generalized map. \cgalRefines{GenericMap} +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Generalized_map `CGAL::Generalized_map`\endlink} +\cgalHasModelsEnd For a generalized map, the function \link GenericMap::next `next`\endlink is equal to \f$ \alpha_1\circ\alpha_0\f$, \link GenericMap::previous `previous`\endlink is equal to \f$ \alpha_0\circ\alpha_1\f$ and the function \link GenericMap::opposite `opposite`\endlink is equal to \f$ \alpha_i\circ\alpha_0\f$. */ diff --git a/Generator/doc/Generator/Concepts/CombinationElement.h b/Generator/doc/Generator/Concepts/CombinationElement.h index 8e4747e0839..53872f44809 100644 --- a/Generator/doc/Generator/Concepts/CombinationElement.h +++ b/Generator/doc/Generator/Concepts/CombinationElement.h @@ -4,9 +4,11 @@ A CombinationElement can be used as template parameter for the class `Combination_enumerator`. -\cgalHasModelsBare{Any integer type (`char`, `short`, `int`, `long`, etc.)\n - Pointers\n - Random access iterators} +\cgalHasModelsBegin +\cgalHasModelsBare{Any integer type (`char`, `short`, `int`, `long`, etc.)} +\cgalHasModelsBare{Pointers} +\cgalHasModelsBare{Random access iterators} +\cgalHasModelsEnd \sa `CGAL::Combination_enumerator` diff --git a/Generator/doc/Generator/Concepts/PointGenerator.h b/Generator/doc/Generator/Concepts/PointGenerator.h index 2f96e53167d..5a70e5f0ebd 100644 --- a/Generator/doc/Generator/Concepts/PointGenerator.h +++ b/Generator/doc/Generator/Concepts/PointGenerator.h @@ -5,20 +5,21 @@ The concept `PointGenerator` defines the requirements for a point generator, which can be used in places where input iterators are called for. -\cgalHasModelsBegin CGAL::Random_points_in_ball_d -\cgalHasModels CGAL::Random_points_in_disc_2 -\cgalHasModels CGAL::Random_points_in_square_2 -\cgalHasModels CGAL::Random_points_in_triangle_2 -\cgalHasModels CGAL::Random_points_on_circle_2 -\cgalHasModels CGAL::Random_points_on_segment_2 -\cgalHasModels CGAL::Random_points_on_square_2 -\cgalHasModels CGAL::Random_points_in_cube_3 -\cgalHasModels CGAL::Random_points_in_cube_d -\cgalHasModels CGAL::Random_points_in_sphere_3 -\cgalHasModels CGAL::Random_points_in_triangle_3 -\cgalHasModels CGAL::Random_points_in_tetrahedron_3 -\cgalHasModels CGAL::Random_points_on_sphere_3 -\cgalHasModels CGAL::Random_points_on_sphere_d +\cgalHasModelsBegin +\cgalModels{CGAL::Random_points_in_ball_d} +\cgalModels{CGAL::Random_points_in_disc_2} +\cgalModels{CGAL::Random_points_in_square_2} +\cgalModels{CGAL::Random_points_in_triangle_2} +\cgalModels{CGAL::Random_points_on_circle_2} +\cgalModels{CGAL::Random_points_on_segment_2} +\cgalModels{CGAL::Random_points_on_square_2} +\cgalModels{CGAL::Random_points_in_cube_3} +\cgalModels{CGAL::Random_points_in_cube_d} +\cgalModels{CGAL::Random_points_in_sphere_3} +\cgalModels{CGAL::Random_points_in_triangle_3} +\cgalModels{CGAL::Random_points_in_tetrahedron_3} +\cgalModels{CGAL::Random_points_on_sphere_3} +\cgalModels{CGAL::Random_points_on_sphere_d} \cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h b/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h index 424119d49b9..61949762078 100644 --- a/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomConvexHullTraits_2.h @@ -5,7 +5,9 @@ The concept `RandomConvexHullTraits_2` describes the requirements for the traits class used by the function `random_convex_hull_in_disc_2()`. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the concept `Kernel`} +\cgalHasModelsEnd \cgalHeading{Operations} diff --git a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h index 630b93345d1..669f54809b3 100644 --- a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h @@ -5,7 +5,8 @@ The concept `RandomConvexSetTraits_2` describes the requirements of the traits class for the function `random_convex_set_2()`. -\cgalHasModelsBegin CGAL::Random_convex_set_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Random_convex_set_traits_2} \cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h b/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h index be8badeb641..c996e205360 100644 --- a/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomPolygonTraits_2.h @@ -5,7 +5,9 @@ The concept `RandomPolygonTraits_2` describes the requirements for the traits class used by the function `random_polygon_2()`. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the concept `Kernel`} +\cgalHasModelsEnd \cgalHeading{Operations} diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h index 227ae11cc40..6b99d22b415 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h @@ -67,9 +67,10 @@ allocators internally. A default argument is mandatory for from the `` header file can be used as default allocator. -\cgalHasModelsBegin CGAL::HalfedgeDS_default -\cgalHasModels CGAL::HalfedgeDS_list -\cgalHasModels CGAL::HalfedgeDS_vector +\cgalHasModelsBegin +\cgalModels{CGAL::HalfedgeDS_default} +\cgalModels{CGAL::HalfedgeDS_list} +\cgalModels{CGAL::HalfedgeDS_vector} \cgalHasModelsEnd \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h index cacaac7459a..fb3c3e05d2a 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h @@ -23,8 +23,9 @@ can be bypassed by the user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} -\cgalHasModelsBegin CGAL::HalfedgeDS_face_base -\cgalHasModels CGAL::HalfedgeDS_face_min_base +\cgalHasModelsBegin +\cgalModels{CGAL::HalfedgeDS_face_base} +\cgalModels{CGAL::HalfedgeDS_face_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h index 5dae57935e8..f726b2c4383 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h @@ -33,8 +33,9 @@ more protection is provided for the `set_opposite()` member function. The base class `Base_base` provides access to it. (The protection could be bypassed also by an user, but not by accident.) -\cgalHasModelsBegin ::CGAL::HalfedgeDS_halfedge_base -\cgalHasModels ::CGAL::HalfedgeDS_halfedge_min_base +\cgalHasModelsBegin +\cgalModels{::CGAL::HalfedgeDS_halfedge_base} +\cgalModels{::CGAL::HalfedgeDS_halfedge_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h index 51a99908bc0..3b52eeb48a5 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h @@ -16,9 +16,10 @@ and `Face` respectively. The requirements on these types are described on the manual pages of the concepts `HalfedgeDSVertex`, `HalfedgeDSHalfedge`, and `HalfedgeDSFace` respectively. -\cgalHasModelsBegin CGAL::HalfedgeDS_min_items -\cgalHasModels CGAL::HalfedgeDS_items_2 -\cgalHasModels CGAL::Polyhedron_items_3 +\cgalHasModelsBegin +\cgalModels{CGAL::HalfedgeDS_min_items} +\cgalModels{CGAL::HalfedgeDS_items_2} +\cgalModels{CGAL::Polyhedron_items_3} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h index 38f5afab43c..ce576613630 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h @@ -23,8 +23,9 @@ could be bypassed by an user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} -\cgalHasModelsBegin CGAL::HalfedgeDS_vertex_base -\cgalHasModels CGAL::HalfedgeDS_vertex_min_base +\cgalHasModelsBegin +\cgalModels{CGAL::HalfedgeDS_vertex_base} +\cgalModels{CGAL::HalfedgeDS_vertex_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h b/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h index cf4b6f8d9d7..9670eee46e6 100644 --- a/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h +++ b/Heat_method_3/doc/Heat_method_3/Concepts/HeatMethodTraits_3.h @@ -7,7 +7,9 @@ The concept `HeatMethodTraits_3` describes the types, predicates, and constructions required by the traits class parameter of `CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3`. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd */ diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h index 3299b6f89e3..39a254eec7e 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h @@ -16,8 +16,9 @@ constructions on these objects. This concept refines `DelaunayTriangulationTraits_2` because the class `CGAL::Hyperbolic_Delaunay_triangulation_2` internally relies on the class `CGAL::Delaunay_triangulation_2`. -\cgalHasModelsBegin CGAL::Hyperbolic_Delaunay_triangulation_traits_2 -\cgalHasModels CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Hyperbolic_Delaunay_triangulation_traits_2} +\cgalModels{CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2} \cgalHasModelsEnd */ diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h index 9f57d33da11..51a984a3c98 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h @@ -41,7 +41,8 @@ This concept provides an interface for the functionality needed in faces to comp Delaunay triangulations in the hyperbolic plane. The function `tds_data()` is used internally by the triangulation class during the insertion of points in the triangulation. -\cgalHasModelsBegin CGAL::Hyperbolic_triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Hyperbolic_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h index f6de632e04c..407337905ef 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h @@ -15,8 +15,9 @@ inscribed into a given convex polygon. precondition checking only. Therefore, they need not to be specified, in case that precondition checking is disabled. -\cgalHasModelsBegin CGAL::Extremal_polygon_area_traits_2 -\cgalHasModels CGAL::Extremal_polygon_perimeter_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Extremal_polygon_area_traits_2} +\cgalModels{CGAL::Extremal_polygon_perimeter_traits_2} \cgalHasModelsEnd \sa `CGAL::maximum_area_inscribed_k_gon_2()` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h index d3e1374d771..79629048104 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h @@ -10,8 +10,9 @@ This concept provides the types of the geometric primitives used in this class and some function object types for the required predicates on those primitives. -\cgalHasModelsBegin CGAL::Cartesian -\cgalHasModels CGAL::Homogeneous +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian} +\cgalModels{CGAL::Homogeneous} \cgalHasModelsEnd \sa `CGAL::Largest_empty_iso_rectangle_2` diff --git a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h index 4cb824c031b..0cdbc888f21 100644 --- a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h @@ -7,7 +7,8 @@ traits class that defines the primitives used by the algorithm. The concept `GradientFittingTraits` defines this common set of requirements. -\cgalHasModelsBegin CGAL::Interpolation_gradient_fitting_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Interpolation_gradient_fitting_traits_2} \cgalHasModelsEnd \sa `InterpolationTraits` diff --git a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h index a07eb526d3c..18b806952cb 100644 --- a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h @@ -7,8 +7,9 @@ Most interpolation functions are parameterized by a traits class that defines the primitives used in the interpolation algorithms. The concept `InterpolationTraits` defines this common set of requirements. -\cgalHasModelsBegin CGAL::Interpolation_traits_2 -\cgalHasModels CGAL::Interpolation_gradient_fitting_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Interpolation_traits_2} +\cgalModels{CGAL::Interpolation_gradient_fitting_traits_2} \cgalHasModelsEnd \sa `GradientFittingTraits` diff --git a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h index 1bc267a684e..fe7cbbd266e 100644 --- a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h +++ b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h @@ -9,8 +9,9 @@ The concept does not specify, whether the interval is open or closed. It is up to the implementer of a model for this concept to define that. -\cgalHasModelsBegin CGAL::Interval_skip_list_interval -\cgalHasModels CGAL::Level_interval +\cgalHasModelsBegin +\cgalModels{CGAL::Interval_skip_list_interval} +\cgalModels{CGAL::Level_interval} \cgalHasModelsEnd \sa `Interval_skip_list` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h index 9276d91c6b3..93d2ee819e5 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h @@ -13,8 +13,9 @@ the class Only constructors (from 3 scalars and copy constructors) and access methods to coordinates `x()`, `y()`, `z()` are needed. -\cgalHasModelsBegin CGAL::Cartesian -\cgalHasModels CGAL::Simple_cartesian +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian} +\cgalModels{CGAL::Simple_cartesian} \cgalHasModelsEnd \sa `LocalKernel` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h index 75629fb37f1..d4981cf4f84 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h @@ -29,8 +29,9 @@ Only constructors (from 3 scalars and copy constructors) and access methods to coordinates `x()`, `y()`, `z()` are needed for the point and vector types. -\cgalHasModelsBegin CGAL::Cartesian -\cgalHasModels CGAL::Simple_cartesian +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian} +\cgalModels{CGAL::Simple_cartesian} \cgalHasModelsEnd \sa `DataKernel` diff --git a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h index a732c7891a3..9433ac9dd05 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h +++ b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h @@ -8,7 +8,8 @@ namespace Kernel { \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Circle_2 + \cgalHasModelsBegin + \cgalModels{CGAL::Circle_2} \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` @@ -39,7 +40,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Circle_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Circle_3} \cgalHasModelsEnd \sa `Kernel::ComputeApproximateArea_3` @@ -69,7 +71,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Direction_2 + \cgalModels{CGAL::Direction_2} \cgalHasModelsEnd \sa `Kernel::CompareAngleWithXAxis_2` @@ -94,7 +96,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Direction_3 + \cgalModels{CGAL::Direction_3} \cgalHasModelsEnd \sa `Kernel::ConstructDirection_3` @@ -115,7 +117,8 @@ A type representing isocuboids in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Iso_cuboid_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Iso_cuboid_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -141,7 +144,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Iso_rectangle_2 + \cgalModels{CGAL::Iso_rectangle_2} \cgalHasModelsEnd \sa `Kernel::ConstructIsoRectangle_2` @@ -174,7 +177,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Line_2 + \cgalModels{CGAL::Line_2} \cgalHasModelsEnd \sa `Kernel::CompareXAtY_2` @@ -211,7 +214,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Line_3 + \cgalModels{CGAL::Line_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -243,7 +246,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Object + \cgalModels{CGAL::Object} \cgalHasModelsEnd \sa `Kernel::Assign_2` @@ -265,7 +268,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Object + \cgalModels{CGAL::Object} \cgalHasModelsEnd \sa `Kernel::Assign_3` @@ -285,7 +288,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Plane_3 + \cgalModels{CGAL::Plane_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -323,7 +326,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Point_2 + \cgalModels{CGAL::Point_2} \cgalHasModelsEnd \sa `Kernel::Angle_2` @@ -383,7 +386,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModels CGAL::Point_3 + \cgalModels{CGAL::Point_3} \cgalHasModelsEnd \sa `Kernel::Angle_3` @@ -445,7 +448,8 @@ A type representing rays in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Ray_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Ray_2} \cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` @@ -478,7 +482,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Ray_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Ray_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -507,7 +512,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Segment_2 + \cgalHasModelsBegin + \cgalModels{CGAL::Segment_2} \cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` @@ -542,7 +548,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Segment_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Segment_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -573,7 +580,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Sphere_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Sphere_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -604,7 +612,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Tetrahedron_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Tetrahedron_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -636,7 +645,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Triangle_2 + \cgalHasModelsBegin + \cgalModels{CGAL::Triangle_2} \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` @@ -670,7 +680,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Triangle_3 + \cgalHasModelsBegin + \cgalModels{CGAL::Triangle_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredArea_3` @@ -696,7 +707,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalHasModelsBegin CGAL::Vector_2 + \cgalHasModelsBegin + \cgalModels{CGAL::Vector_2} \cgalHasModelsEnd \sa `Kernel::ComputeDeterminant_2` @@ -730,7 +742,8 @@ A type representing vectors in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Vector_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Vector_3} \cgalHasModelsEnd \sa `Kernel::CompareDihedralAngle_3` @@ -767,7 +780,8 @@ A type representing weighted points in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Weighted_point_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Weighted_point_2} \cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_2` @@ -795,7 +809,8 @@ A type representing weighted points in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Weighted_point_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Weighted_point_3} \cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_3` diff --git a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h index ad4a0782765..2da2b9d8fb9 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h +++ b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h @@ -20,14 +20,15 @@ `Construct_`. If the result type is a number type, the name is prefixed by `Compute_`. When the result type is not determined, no prefix is used. - \cgalHasModelsBegin galHasModel `CGAL::Cartesian - \cgalHasModels CGAL::Homogeneous - \cgalHasModels CGAL::Simple_cartesian - \cgalHasModels CGAL::Simple_homogeneous - \cgalHasModels CGAL::Filtered_kernel - \cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel - \cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt - \cgalHasModels CGAL::Exact_predicates_inexact_constructions_kernel + \cgalHasModelsBegin + \cgalModels{CGAL::Cartesian} + \cgalModels{CGAL::Homogeneous} + \cgalModels{CGAL::Simple_cartesian} + \cgalModels{CGAL::Simple_homogeneous} + \cgalModels{CGAL::Filtered_kernel} + \cgalModels{CGAL::Exact_predicates_exact_constructions_kernel} + \cgalModels{CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt} + \cgalModels{CGAL::Exact_predicates_inexact_constructions_kernel} \cgalHasModelsEnd \sa `Kernel_d` diff --git a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h index 63e05367baf..4a8e19db8cd 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h @@ -8,8 +8,9 @@ general kernel concept. It adds 2 functors, the meaning of which would be unclear in kernels of fixed dimension. \cgalRefines{Kernel_d} -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ class KernelWithLifting_d { diff --git a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h index a56284feab8..c4ac4f607c8 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h @@ -18,10 +18,11 @@ predicates. The former replace constructors of the kernel classes and constructive procedures in the kernel. There are also function objects replacing operators, especially for equality testing. -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d -\cgalHasModels CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} \cgalHasModelsEnd */ class Kernel_d { diff --git a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h index f8a25811d42..8dff375eaea 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h @@ -13,8 +13,9 @@ correct. For example, if the linear system solver declares a linear system \f$ A x = b\f$ unsolvable it also returns a vector \f$ c\f$ such that \f$ c^T A = 0\f$ and \f$ c^T b \neq 0\f$. -\cgalHasModelsBegin CGAL::Linear_algebraHd -\cgalHasModels CGAL::Linear_algebraCd +\cgalHasModelsBegin +\cgalModels{CGAL::Linear_algebraHd} +\cgalModels{CGAL::Linear_algebraCd} \cgalHasModelsEnd */ diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h index 6f97471a99c..08820e4d061 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/CellAttributeWithPoint.h @@ -7,7 +7,9 @@ The concept `CellAttributeWithPoint` is a refinement of the `CellAttribute` conc \cgalRefines{CellAttribute} +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Cell_attribute_with_point `CGAL::Cell_attribute_with_point`\endlink} +\cgalHasModelsEnd \sa `LinearCellComplexItems` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h index 740405fc5b3..c7652262cf8 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplex.h @@ -7,8 +7,10 @@ The concept `LinearCellComplex` represents a linear cell complex in dimension `d \cgalRefines{GenericMap} -\cgalHasModelsBare{\link CGAL::Linear_cell_complex_for_combinatorial_map `CGAL::Linear_cell_complex_for_combinatorial_map`\endlink\n - \link CGAL::Linear_cell_complex_for_generalized_map `CGAL::Linear_cell_complex_for_generalized_map`\endlink} +\cgalHasModelsBegin +\cgalHasModelsBare{\link CGAL::Linear_cell_complex_for_combinatorial_map `CGAL::Linear_cell_complex_for_combinatorial_map`\endlink} +\cgalHasModelsBare{\link CGAL::Linear_cell_complex_for_generalized_map `CGAL::Linear_cell_complex_for_generalized_map`\endlink} +\cgalHasModelsEnd \sa `LinearCellComplexItems` \sa `LinearCellComplexTraits` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h index 25df3bed183..abc3d27eaf2 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h @@ -9,7 +9,8 @@ The concept `LinearCellComplexItems` refines the concept of `GenericMapItems` by The first type in `Attributes` tuple must be a model of the `CellAttributeWithPoint` concept. -\cgalHasModelsBegin CGAL::Linear_cell_complex_min_items +\cgalHasModelsBegin +\cgalModels{CGAL::Linear_cell_complex_min_items} \cgalHasModelsEnd \sa `LinearCellComplex` diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h index cb7de2d8382..e701f011493 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexTraits.h @@ -5,7 +5,9 @@ Required types and functors for the `LinearCellComplexTraits` concept. This geometric traits concept is used in the \link CGAL::Linear_cell_complex_for_combinatorial_map `Linear_cell_complex_for_combinatorial_map`\endlink and \link CGAL::Linear_cell_complex_for_generalized_map `Linear_cell_complex_for_generalized_map`\endlink classes. +\cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Linear_cell_complex_traits `CGAL::Linear_cell_complex_traits`\endlink} +\cgalHasModelsEnd \sa `CGAL::Linear_cell_complex_for_combinatorial_map` \sa `CGAL::Linear_cell_complex_for_generalized_map` diff --git a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h index 37512a501ec..9a7b265540b 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h +++ b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h @@ -8,7 +8,8 @@ A class `BasicMatrix` has to provide the following types and operations in order to be a model for `BasicMatrix`. -\cgalHasModelsBegin CGAL::Dynamic_matrix +\cgalHasModelsBegin +\cgalModels{CGAL::Dynamic_matrix} \cgalHasModelsEnd \sa `MonotoneMatrixSearchTraits` diff --git a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h index 3f44b807ffd..b20b74de1d0 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h @@ -21,7 +21,8 @@ add most of the functionality described above to arbitrary matrix classes. -\cgalHasModelsBegin CGAL::Dynamic_matrix +\cgalHasModelsBegin +\cgalModels{CGAL::Dynamic_matrix} \cgalHasModelsEnd \sa `CGAL::monotone_matrix_search()` diff --git a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h index e96a49bfdbe..99c3cfcba77 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h @@ -8,7 +8,8 @@ needed to compute the smallest entry in a set of sorted matrices that fulfills a certain feasibility criterion using the function `CGAL::sorted_matrix_search`. -\cgalHasModelsBegin CGAL::Sorted_matrix_search_traits_adaptor +\cgalHasModelsBegin +\cgalModels{CGAL::Sorted_matrix_search_traits_adaptor} \cgalHasModelsEnd \sa `CGAL::sorted_matrix_search()` diff --git a/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h b/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h index 745c85b0d9f..0980ae1d151 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/ConformingDelaunayTriangulationTraits_2.h @@ -17,7 +17,9 @@ points on constrained edges. \cgalRefines{DelaunayTriangulationTraits_2} -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Projection_traits_xy_3} \cgalHasModelsEnd diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h index abe11ca79a8..7bc632d6fa8 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h @@ -13,7 +13,8 @@ meshing domain or not. \cgalRefines{ConstrainedTriangulationFaceBase_2} -\cgalHasModelsBegin CGAL::Delaunay_mesh_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_mesh_face_base_2} \cgalHasModelsEnd diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h index 25d8388d962..e5e793bafff 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshTraits_2.h @@ -12,7 +12,9 @@ object `Construct_circumcenter_2`. \cgalRefines{ConformingDelaunayTriangulationTraits_2} -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Projection_traits_xy_3} \cgalHasModelsEnd */ diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h index 34188802119..ac7a4a69161 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h @@ -13,7 +13,8 @@ the mesh density everywhere while modifying the mesh. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Delaunay_mesh_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_mesh_vertex_base_2} \cgalHasModelsEnd diff --git a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h index 929119fb29a..06f5f865e33 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h @@ -37,8 +37,9 @@ comparable as the meshing algorithm will order bad triangles by quality, to split those with smallest quality first. The predicate `Is_bad` computes the quality of the triangle as a by-product. -\cgalHasModelsBegin CGAL::Delaunay_mesh_criteria_2 -\cgalHasModels CGAL::Delaunay_mesh_size_criteria_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_mesh_criteria_2} +\cgalModels{CGAL::Delaunay_mesh_size_criteria_2} \cgalHasModelsEnd diff --git a/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h index 0ca302d56fb..bab4df1ba94 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/BisectionGeometricTraits_3.h @@ -16,7 +16,9 @@ function from \f$ \mathbb{R}^3\f$ to \f$ \mathbb{R}\f$), the do-intersect predic is computed by evaluations of the function values at both end points of the segment. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `ImplicitSurfaceTraits_3` \sa `IntersectionGeometricTraits_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h index d5637c9b8e1..8773bf905f8 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/IntersectionGeometricTraits_3.h @@ -9,7 +9,9 @@ forming its boundary. The concept `IntersectionGeometricTraits_3` mainly provides the detection and construction of intersections between segments and triangles. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `BisectionGeometricTraits_3` \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h index 7ad4c56ad1c..44f0e818123 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h @@ -43,8 +43,9 @@ each cell (see below). \cgalRefines{SimplicialMeshCellBase_3,RegularTriangulationCellBaseWithWeightedCircumcenter_3,CopyConstructible} -\cgalHasModelsBegin CGAL::Compact_mesh_cell_base_3 -\cgalHasModels CGAL::Mesh_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Compact_mesh_cell_base_3} +\cgalModels{CGAL::Mesh_cell_base_3} \cgalHasModelsEnd \sa `CGAL::make_mesh_3()` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h index 4691571e9f1..bc8a60b51d3 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h @@ -9,7 +9,8 @@ that concern either mesh tetrahedra or surface facets. The concept `MeshCellCriteria_3` describes the types that handle the refinement criteria for mesh tetrahedra. -\cgalHasModelsBegin CGAL::Mesh_cell_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_cell_criteria_3} \cgalHasModelsEnd \sa `MeshEdgeCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h index e1570416dd7..dcb2123ec62 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h @@ -14,7 +14,8 @@ that describes the requirements, in terms of sizing, for the discretization of t \cgalRefines{MeshCriteria_3} -\cgalHasModelsBegin CGAL::Mesh_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_criteria_3} \cgalHasModelsEnd \sa `MeshEdgeCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h index 189afcbffcb..83fad908d25 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h @@ -12,7 +12,8 @@ while the refinement criteria for surface facets are described by the concept `MeshFacetCriteria_3`. The concept `MeshCriteria_3` encapsulates these concepts. -\cgalHasModelsBegin CGAL::Mesh_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_criteria_3} \cgalHasModelsEnd \sa `MeshFacetCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h index fbb2f2cc8ee..d3f7d1e61ea 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h @@ -5,7 +5,8 @@ The concept `MeshDomainField_3` describes a scalar field which could be queried at any point of the space. -\cgalHasModelsBegin CGAL::Mesh_constant_domain_field_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_constant_domain_field_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h index 80df66b599a..3a3a79f1105 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h @@ -17,8 +17,9 @@ between two ordered points on the same curve. \cgalRefines{MeshDomain_3} -\cgalHasModelsBegin CGAL::Mesh_domain_with_polyline_features_3 -\cgalHasModels CGAL::Polyhedral_mesh_domain_with_features_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_domain_with_polyline_features_3} +\cgalModels{CGAL::Polyhedral_mesh_domain_with_features_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h index 56c6ed59ad1..03ca9f2fef7 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h @@ -29,8 +29,9 @@ A segment, ray or line is said to intersect properly the domain boundary if it includes points which are strictly inside and strictly outside the domain (resp. the subdomain). -\cgalHasModelsBegin CGAL::Polyhedral_mesh_domain_3 -\cgalHasModels CGAL::Labeled_mesh_domain_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Polyhedral_mesh_domain_3} +\cgalModels{CGAL::Labeled_mesh_domain_3} \cgalHasModelsEnd \sa `MeshVertexBase_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h index 41b3bab4451..930a627cc76 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h @@ -7,7 +7,8 @@ the 1-dimensional features of the domain. It provides an upper bound for the distance between two protecting ball centers that are consecutive on a 1-feature. -\cgalHasModelsBegin CGAL::Mesh_edge_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_edge_criteria_3} \cgalHasModelsEnd \sa `MeshCellCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h index f8bad1f29cc..a0c32629c5a 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h @@ -9,7 +9,8 @@ that concern either mesh tetrahedra or surface facets. The concept `MeshFacetCriteria_3` describes the types that handle the refinement criteria for surface facets. -\cgalHasModelsBegin CGAL::Mesh_facet_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_facet_criteria_3} \cgalHasModelsEnd \sa `MeshCellCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h index ce8469eb8aa..043960c0e91 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshPolyline_3.h @@ -6,7 +6,9 @@ The concept `MeshPolyline_3` implements a container of points designed to repres Types and functions provided in this concept are such as standard template library containers are natural models of this concept. +\cgalHasModelsBegin \cgalHasModelsBare{`std::vector` for any Kernel of \cgal is a natural model of this concept.} +\cgalHasModelsEnd \sa `CGAL::Mesh_domain_with_polyline_features_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h index 3e1a8cf734d..be84906d8f3 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshTriangulationTraits_3.h @@ -9,7 +9,9 @@ a mesh generation process. \cgalRefines{RegularTriangulationTraits_3} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd In addition to the requirements described for the traits class RegularTriangulationTraits_3, the geometric traits class of a diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h index f4f2ff9d9b8..20a62546c2c 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h @@ -22,7 +22,8 @@ each cell (see below). \cgalRefines{SimplicialMeshVertexBase_3,RegularTriangulationVertexBase_3,SurfaceMeshVertexBase_3} -\cgalHasModelsBegin CGAL::Mesh_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_vertex_base_3} \cgalHasModelsEnd \sa `CGAL::make_mesh_3()` diff --git a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h index 1d3a376d3de..7be6df1aece 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h @@ -5,7 +5,8 @@ The concept `TriangleAccessor_3` represents an accessor to a triangulated polyhedral surface, intersection free and without boundaries. -\cgalHasModelsBegin CGAL::Triangle_accessor_3,K> +\cgalHasModelsBegin +\cgalModels{CGAL::Triangle_accessor_3,K>} \cgalHasModelsEnd \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h index 0f81aaa6a90..848c46adfda 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h @@ -6,11 +6,12 @@ A model of the `PolygonConvexDecomposition_2` concept is capable of decomposing an input polygon \f$ P\f$ into a set of convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \f$ \cup_{i=1}^{k}{P_k} = P\f$. -\cgalHasModelsBegin CGAL::Small_side_angle_bisector_decomposition_2 -\cgalHasModels CGAL::Optimal_convex_decomposition_2 -\cgalHasModels CGAL::Hertel_Mehlhorn_convex_decomposition_2 -\cgalHasModels CGAL::Greene_convex_decomposition_2 -\cgalHasModels CGAL::Polygon_nop_decomposition_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Small_side_angle_bisector_decomposition_2} +\cgalModels{CGAL::Optimal_convex_decomposition_2} +\cgalModels{CGAL::Hertel_Mehlhorn_convex_decomposition_2} +\cgalModels{CGAL::Greene_convex_decomposition_2} +\cgalModels{CGAL::Polygon_nop_decomposition_2} \cgalHasModelsEnd */ diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h index 64b8d099507..6cf7eb45c35 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h @@ -9,8 +9,9 @@ convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \cgalRefines{PolygonConvexDecomposition_2} -\cgalHasModelsBegin CGAL::Polygon_vertical_decomposition_2 -\cgalHasModels CGAL::Polygon_triangulation_decomposition_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Polygon_vertical_decomposition_2} +\cgalModels{CGAL::Polygon_triangulation_decomposition_2} \cgalHasModelsEnd */ diff --git a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h index 1bf64f2a9c9..b3f2543843f 100644 --- a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h +++ b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h @@ -9,7 +9,8 @@ function object. It maps objects of its domain type `Key` to the integral image type `std::size_t`. The image values have to be unique for all keys in the domain type `Key`. -\cgalHasModelsBegin CGAL::Handle_hash_function +\cgalHasModelsBegin +\cgalModels{CGAL::Handle_hash_function} \cgalHasModelsEnd \sa `CGAL::Unique_hash_map` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h index 0e0467a9f39..a78fde1730a 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h @@ -8,7 +8,8 @@ In case this associated type is a model of `Modularizable`, this is indicated by Boolean tag `ModularTraits::Is_modularizable`. The mapping into the `Residue_type` is provided by the functor `ModularTraits::Modular_image`. -\cgalHasModelsBegin CGAL::Modular_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Modular_traits} \cgalHasModelsEnd \sa `CGAL::Residue` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h index 8db45a2f428..1d7f832f5d8 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h @@ -18,19 +18,21 @@ of denominator, are not `Modularizable`. This is due to the fact that the denominator may be zero modulo the prime, which can not be represented. -\cgalHasModelsBegin int -\cgalHasModels long -\cgalHasModels CORE::BigInt -\cgalHasModels CGAL::Gmpz -\cgalHasModels leda_integer -\cgalHasModels mpz_class +\cgalHasModelsBegin +\cgalModels{int} +\cgalModels{long} +\cgalModels{CORE::BigInt} +\cgalModels{CGAL::Gmpz} +\cgalModels{leda_integer} +\cgalModels{mpz_class} \cgalHasModelsEnd The following types are `Modularizable` iff their template arguments are. -\cgalHasModelsBegin CGAL::Lazy_exact_nt -\cgalHasModels CGAL::Sqrt_extension -\cgalHasModels CGAL::Polynomial +\cgalHasModelsBegin +\cgalModels{CGAL::Lazy_exact_nt} +\cgalModels{CGAL::Sqrt_extension} +\cgalModels{CGAL::Polynomial} \cgalHasModelsEnd \sa `CGAL::Residue` diff --git a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h index 7161d6725e7..c46d39daa54 100644 --- a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h +++ b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h @@ -38,9 +38,10 @@ functionality for changing between standard affine and extended geometry. At the same time it provides extensible geometric primitives on the extended geometric objects. -\cgalHasModelsBegin CGAL::Extended_cartesian -\cgalHasModels CGAL::Extended_homogeneous -\cgalHasModels CGAL::Filtered_extended_homogeneous +\cgalHasModelsBegin +\cgalModels{CGAL::Extended_cartesian} +\cgalModels{CGAL::Extended_homogeneous} +\cgalModels{CGAL::Filtered_extended_homogeneous} \cgalHasModelsEnd */ diff --git a/Number_types/doc/Number_types/Concepts/RootOf_2.h b/Number_types/doc/Number_types/Concepts/RootOf_2.h index c29f30b3ab2..9ae9883f80f 100644 --- a/Number_types/doc/Number_types/Concepts/RootOf_2.h +++ b/Number_types/doc/Number_types/Concepts/RootOf_2.h @@ -30,7 +30,9 @@ special construction for extensions of degree 2: \cgalRefines{DefaultConstructible,CopyConstructible,FromIntConstructible, ImplicitInteroperable with `RT`,ImplicitInteroperable with `FT`} -\cgalHasModelsBareBegin{`double` (not exact)} CGAL::Sqrt_extension +\cgalHasModelsBegin +\cgalHasModelsBare{`double` (not exact)} +\cgalHasModels{CGAL::Sqrt_extension} \cgalHasModelsEnd \sa `CGAL::make_root_of_2` diff --git a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h index fad3d71782a..40fdf24e2d8 100644 --- a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h +++ b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h @@ -8,7 +8,8 @@ a 3x3 matrix type. \cgalRefines{Kernel} -\cgalHasModelsBegin CGAL::Oriented_bounding_box_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Oriented_bounding_box_traits_3} \cgalHasModelsEnd */ diff --git a/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h b/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h index 39b2c65b4e1..69f33226b2c 100644 --- a/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h +++ b/Optimal_transportation_reconstruction_2/doc/Optimal_transportation_reconstruction_2/Concepts/OptimalTransportationReconstructionTraits_2.h @@ -8,8 +8,10 @@ for the traits class of `CGAL::Optimal_transportation_reconstruction_2`. \cgalRefines{DelaunayTriangulationTraits_2} -\cgalHasModelsBare{All models of the \cgal concept `Kernel`, - `CGAL::Exact_predicates_inexact_constructions_kernel` (recommended)} +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsBare{`CGAL::Exact_predicates_inexact_constructions_kernel` (recommended)} +\cgalHasModelsEnd \sa `CGAL::Optimal_transportation_reconstruction_2` diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h index 8b6e0e06631..83408944f2b 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h @@ -5,9 +5,10 @@ The concept `OrthtreeTraits` defines the requirements for the template parameter of the `CGAL::Orthtree` class. - \cgalHasModelsBegin galHasModel `CGAL::Orthtree_traits_2 - \cgalHasModels CGAL::Orthtree_traits_3 - \cgalHasModels CGAL::Orthtree_traits_d + \cgalHasModelsBegin + \cgalModels{CGAL::Orthtree_traits_2} + \cgalModels{CGAL::Orthtree_traits_3} + \cgalModels{CGAL::Orthtree_traits_d} \cgalHasModelsEnd */ class OrthtreeTraits diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h index c03e9deb207..851482d8751 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h @@ -9,10 +9,11 @@ A traversal is used to iterate on a tree with a user-selected order (e.g. preorder, postorder). - \cgalHasModelsBegin galHasModel `CGAL::Orthtrees::Preorder_traversal - \cgalHasModels CGAL::Orthtrees::Postorder_traversal - \cgalHasModels CGAL::Orthtrees::Leaves_traversal - \cgalHasModels CGAL::Orthtrees::Level_traversal + \cgalHasModelsBegin + \cgalModels{CGAL::Orthtrees::Preorder_traversal} + \cgalModels{CGAL::Orthtrees::Postorder_traversal} + \cgalModels{CGAL::Orthtrees::Leaves_traversal} + \cgalModels{CGAL::Orthtrees::Level_traversal} \cgalHasModelsEnd */ class OrthtreeTraversal { diff --git a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h index ff7c9417c08..6b9be975123 100644 --- a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h @@ -6,7 +6,8 @@ Requirements of a traits class used by `convex_partition_is_valid_2` for testing the validity of a convex partition of a polygon. -\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h index 0c0d7e3fc97..112995c86f1 100644 --- a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h @@ -6,8 +6,9 @@ Requirements of a traits class to be used with the function `is_y_monotone_2()` that tests whether a sequence of 2D points defines a \f$ y\f$-monotone polygon or not. -\cgalHasModelsBegin CGAL::Partition_traits_2 -\cgalHasModels CGAL::Kernel_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_traits_2} +\cgalModels{CGAL::Kernel_traits_2} \cgalHasModelsEnd \sa `CGAL::Is_y_monotone_2` diff --git a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h index 85676075bb4..1ef70344a2d 100644 --- a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h @@ -8,7 +8,8 @@ an optimal convex partition of a polygon. \cgalRefines{PartitionTraits_2} -\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::convex_partition_is_valid_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h index b91ad810935..7edbe6dcde6 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h @@ -14,7 +14,8 @@ function `CGAL::is_convex_2()` and the concept `YMonotonePartitionTraits_2` for the additional requirements for testing for convexity and \f$ y\f$-monotonicity, respectively. -\cgalHasModelsBegin CGAL::Partition_is_valid_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_is_valid_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h index 2ad93228b1b..910d565cf10 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h @@ -8,7 +8,8 @@ common to all traits classes. The concept `PartitionTraits_2` defines this common set of requirements. -\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h index ab72c01a9f0..662bdb369a9 100644 --- a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h +++ b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h @@ -6,8 +6,9 @@ Function object that determines if a sequence of points represents a valid partition polygon or not, where "valid" can assume any of several meanings (e.g., convex or \f$ y\f$-monotone). -\cgalHasModelsBegin CGAL::Is_convex_2 -\cgalHasModels CGAL::Is_y_monotone_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Is_convex_2} +\cgalModels{CGAL::Is_y_monotone_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h index 6212b11620a..7869a2122e9 100644 --- a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h @@ -6,7 +6,8 @@ Requirements of a traits class that is used by `y_monotone_partition_is_valid_2` for testing the validity of a \f$ y\f$-monotone partition of a polygon. -\cgalHasModelsBegin CGAL::Partition_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::partition_is_valid_2()` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h index bda0b95ab29..0ae4f0fedcf 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h @@ -27,7 +27,8 @@ dual functions are called. The additional predicate type `::Periodic_2DelaunayTriangulationTraits_2::Compare_distance_2` is required if calls to `nearest_vertex(..)` are issued. -\cgalHasModelsBegin CGAL::Periodic_2_Delaunay_triangulation_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_2_Delaunay_triangulation_traits_2} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h index 56d28d5a217..172f176c7cf 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h @@ -7,7 +7,8 @@ The concept `Periodic_2Offset_2` describes a two-/dimensional integer vector with some specialized access functions and operations. -\cgalHasModelsBegin CGAL::Periodic_2_offset_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_2_offset_2} \cgalHasModelsEnd \sa `Periodic_2TriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h index 96769827f33..da6b89b93a2 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h @@ -13,7 +13,8 @@ vertex \f$ i\f$. \cgalRefines{TriangulationFaceBase_2} -\cgalHasModelsBegin CGAL::Periodic_2_triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_2_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h index 58dad3ed62d..1d93a35edbe 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h @@ -24,7 +24,8 @@ In addition to the requirements described for the traits class Periodic triangulation must fulfill the following requirements: -\cgalHasModelsBegin CGAL::Periodic_2_triangulation_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_2_triangulation_traits_2} \cgalHasModelsEnd \sa `TriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h index 33d799fec24..eeae18dcd70 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h @@ -16,7 +16,8 @@ The storage of the offset is only needed when a triangulation is copied. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Periodic_2_triangulation_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_2_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h index 2794a7f365a..73f7d1339a5 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h @@ -22,7 +22,8 @@ Wrapping any model of `Periodic_3MeshDomain_3` with the class `CGAL::Mesh_domain_with_polyline_features_3` gives a model of `Periodic_3MeshDomainWithFeatures_3`. -\cgalHasModelsBegin CGAL::Mesh_domain_with_polyline_features_3 > +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_domain_with_polyline_features_3 >} \cgalHasModelsEnd \sa `CGAL::Periodic_3_function_wrapper` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h index 63170e01edb..b92341527b9 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h @@ -20,7 +20,8 @@ The class `CGAL::Labeled_mesh_domain_3` paired with a periodic labeling fun is a model of this concept. It is possible to create artificially periodic functions through the class `CGAL::Periodic_3_function_wrapper`. -\cgalHasModelsBegin CGAL::Labeled_mesh_domain_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Labeled_mesh_domain_3} \cgalHasModelsEnd \sa `CGAL::Labeled_mesh_domain_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h index 1d72f228180..571b9a0fa98 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h @@ -15,7 +15,8 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,DelaunayTriangulationTraits_3} -\cgalHasModelsBegin CGAL::Periodic_3_Delaunay_triangulation_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_Delaunay_triangulation_traits_3} \cgalHasModelsEnd In addition to the requirements described by the concepts diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h index b5a467b4cd8..2cb71cf9bcc 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h @@ -6,7 +6,8 @@ The concept `Periodic_3Offset_3` describes a three-dimensional integer vector with some specialized access functions and operations. -\cgalHasModelsBegin CGAL::Periodic_3_offset_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_offset_3} \cgalHasModelsEnd \sa `Periodic_3TriangulationTraits_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h index 29c9fae1dc6..05b10c71e02 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h @@ -5,8 +5,9 @@ \cgalRefines{RegularTriangulationCellBase_3,Periodic_3TriangulationDSCellBase_3} -\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_3 > -\cgalHasModels CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 > +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_cell_base_3 >} +\cgalModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 >} \cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h index 8f5ce76dab5..be6214920cb 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h @@ -5,7 +5,8 @@ \cgalRefines{RegularTriangulationVertexBase_3,Periodic_3TriangulationDSVertexBase_3} -\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_3 > +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_vertex_base_3 >} \cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h index c128b08f82e..cdc5a72ead5 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h @@ -15,7 +15,8 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,RegularTriangulationTraits_3} -\cgalHasModelsBegin CGAL::Periodic_3_regular_triangulation_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_regular_triangulation_traits_3} \cgalHasModelsEnd In addition to the requirements described for the traits class diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h index 9f575b84869..d6e735e497f 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h @@ -18,7 +18,8 @@ does not contain any information. \cgalRefines{TriangulationDSCellBase_3} -\cgalHasModelsBegin CGAL::Periodic_3_triangulation_ds_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_triangulation_ds_cell_base_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h index 14b032fc1bc..2665d89bdef 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h @@ -12,7 +12,8 @@ a vertex provides access to one of its incident cells through a handle. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModelsBegin CGAL::Periodic_3_triangulation_ds_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_triangulation_ds_vertex_base_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h index ace2ebb8199..67b8f33a78a 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h @@ -14,7 +14,8 @@ functor the version without offsets. \cgalRefines{TriangulationTraits_3} -\cgalHasModelsBegin CGAL::Periodic_3_triangulation_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_3_triangulation_traits_3} \cgalHasModelsEnd \sa `Periodic_3DelaunayTriangulationTraits_3` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h index 7532e1b0797..77501fa9399 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h @@ -12,7 +12,8 @@ to `Periodic_4HyperbolicTriangulationTraits_2` that needs to be fulfilled by any class used to instantiate the first template parameter of the class `CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_2`. -\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2} \cgalHasModelsEnd */ diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h index 9766710af1e..92d62dfeeb2 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h @@ -20,7 +20,8 @@ corresponding vertex produces the canonical representative of the face in the hy Hyperbolic translations are represented by a nested type which is provided by the concept `Periodic_4HyperbolicDelaunayTriangulationTraits_2`. -\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_4_hyperbolic_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h index eb8bfe0b89d..40b3cb0d34b 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h @@ -14,7 +14,8 @@ translation during the insertion process. A boolean flag indicates whether the face stores a translation or not. The value of the flag is automatically set when storing or removing a translation. -\cgalHasModelsBegin CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h index f17b26f951a..6f58a4de0e8 100644 --- a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h +++ b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h @@ -8,8 +8,9 @@ * represents the outer boundary and the general polygons that represent * the holes. * - * \cgalHasModelsBegin CGAL::General_polygon_with_holes_2 - * \cgalHasModels CGAL::Polygon_with_holes_2 + * \cgalHasModelsBegin + * \cgalModels{CGAL::General_polygon_with_holes_2} + * \cgalModels{CGAL::Polygon_with_holes_2} * \cgalHasModelsEnd */ diff --git a/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h b/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h index 068194985bc..639ed921bb7 100644 --- a/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h +++ b/Polygon/doc/Polygon/Concepts/PolygonTraits_2.h @@ -14,9 +14,11 @@ and refer to the description of the kernel concept for details. \cgalRefines{DefaultConstructible,CopyConstructable} -\cgalHasModelsBareBegin{The kernels supplied by \cgal are models of `PolygonTraits_2`} CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{The kernels supplied by \cgal are models of `PolygonTraits_2`} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd \sa `CGAL::Polygon_2` diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index facce5d714b..683f7f58136 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -6,7 +6,8 @@ /// the creation of new faces and new edges. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Corefinement::Default_visitor +/// \cgalHasModelsBegin +/// \cgalModels{CGAL::Polygon_mesh_processing::Corefinement::Default_visitor} /// \cgalHasModelsEnd class PMPCorefinementVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h index ec983951220..c0b9c41ebe7 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h @@ -7,7 +7,9 @@ /// `sample_triangle_mesh()`, `approximate_Hausdorff_distance()` and `max_distance_to_triangle_mesh()` /// /// \cgalRefines{AABBGeomTraits,SpatialSortingTraits_3} +/// \cgalHasModelsBegin /// \cgalHasModelsBare{Any 3D Kernel is a model of this concept} +/// \cgalHasModelsEnd class PMPDistanceTraits{ public: diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h index 11af2abad0f..e524ca75ffe 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h @@ -9,7 +9,8 @@ /// If that fails, it uses an algorithm with cubic running time (*cubic phase*). /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor +/// \cgalHasModelsBegin +/// \cgalModels{CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor} /// \cgalHasModelsEnd class PMPHolefillingVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h index d0597a5c90e..0016e1cb865 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h @@ -7,7 +7,8 @@ /// during the orientation process. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Default_orientation_visitor +/// \cgalHasModelsBegin +/// \cgalModels{CGAL::Polygon_mesh_processing::Default_orientation_visitor} /// \cgalHasModelsEnd class PMPPolygonSoupOrientationVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h index a8c885e7b13..3bc52ba8786 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h @@ -6,7 +6,8 @@ /// the creation of new faces. /// /// \cgalRefines{CopyConstructible} -/// \cgalHasModelsBegin CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor +/// \cgalHasModelsBegin +/// \cgalModels{CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor} /// \cgalHasModelsEnd diff --git a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h index 31e6b981de2..d75b5d0b491 100644 --- a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h +++ b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h @@ -13,9 +13,10 @@ polyhedral surface renames faces to facets. \cgalRefines{HalfedgeDSItems} -\cgalHasModelsBegin CGAL::Polyhedron_items_3 -\cgalHasModels CGAL::Polyhedron_min_items_3 -\cgalHasModels CGAL::Polyhedron_items_with_id_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Polyhedron_items_3} +\cgalModels{CGAL::Polyhedron_min_items_3} +\cgalModels{CGAL::Polyhedron_items_with_id_3} \cgalHasModelsEnd \sa `CGAL::Polyhedron_3` diff --git a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h index 5dc824c7d55..39c4476cf7b 100644 --- a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h +++ b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronTraits_3.h @@ -10,8 +10,10 @@ and can be used directly as template argument. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModelsBareBegin{All models of the `Kernel` concept, e.g. `CGAL::Simple_cartesian`} CGAL::Polyhedron_traits_3 -\cgalHasModels CGAL::Polyhedron_traits_with_normals_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the `Kernel` concept, e.g. `CGAL::Simple_cartesian`} +\cgalHasModels{CGAL::Polyhedron_traits_3} +\cgalHasModels{CGAL::Polyhedron_traits_with_normals_3} \cgalHasModelsEnd \sa `CGAL::Polyhedron_3` diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h index 525753e4c75..bf8fb4b60ab 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h @@ -12,9 +12,10 @@ preserve the overall polyline set shape as much as possible \cgalRefines{CopyConstructible,Assignable} -\cgalHasModelsBegin CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost -\cgalHasModels CGAL::Polyline_simplification_2::Scaled_squared_distance_cost -\cgalHasModels CGAL::Polyline_simplification_2::Squared_distance_cost +\cgalHasModelsBegin +\cgalModels{CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost} +\cgalModels{CGAL::Polyline_simplification_2::Scaled_squared_distance_cost} +\cgalModels{CGAL::Polyline_simplification_2::Squared_distance_cost} \cgalHasModelsEnd */ diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h index bb5b1d98948..5d95499fd69 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h @@ -5,9 +5,10 @@ Models of this concept are passed to the polyline simplification algorithm to indicate when to stop the process. -\cgalHasModelsBegin CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold -\cgalHasModels CGAL::Polyline_simplification_2::Stop_below_count_threshold -\cgalHasModels CGAL::Polyline_simplification_2::Stop_above_cost_threshold +\cgalHasModelsBegin +\cgalModels{CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold} +\cgalModels{CGAL::Polyline_simplification_2::Stop_below_count_threshold} +\cgalModels{CGAL::Polyline_simplification_2::Stop_above_cost_threshold} \cgalHasModelsEnd */ diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h index 20aff75a93b..e4d8d079a59 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h @@ -8,7 +8,8 @@ whether a vertex can be removed, and the cost of the removal. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Polyline_simplification_2::Vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Polyline_simplification_2::Vertex_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h index 7ce0406f064..c1c13ad9640 100644 --- a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h +++ b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h @@ -31,7 +31,8 @@ is possible to select a certain variable. \sa `Polynomial_d` -\cgalHasModelsBegin CGAL::Polynomial_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomial_traits_d} \cgalHasModelsEnd */ diff --git a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h index 6a5a0c84a05..2b41053230e 100644 --- a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h +++ b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h @@ -32,7 +32,8 @@ coefficient is a `Field` the polynomial is model of `EuclideanRing`. \sa `AlgebraicStructureTraits` \sa `PolynomialTraits_d` -\cgalHasModelsBegin CGAL::Polynomial +\cgalHasModelsBegin +\cgalModels{CGAL::Polynomial} \cgalHasModelsEnd */ diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h index 64c1383c051..a0b89952bc0 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h @@ -7,10 +7,11 @@ The concept `AllFurthestNeighborsTraits_2` defines types and operations needed to compute all furthest neighbors for the vertices of a convex polygon using the function `all_furthest_neighbors_2()`. -\cgalHasModelsBegin CGAL::Cartesian -\cgalHasModels CGAL::Homogeneous -\cgalHasModels CGAL::Simple_cartesian -\cgalHasModels CGAL::Simple_homogeneous +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian} +\cgalModels{CGAL::Homogeneous} +\cgalModels{CGAL::Simple_cartesian} +\cgalModels{CGAL::Simple_homogeneous} \cgalHasModelsEnd \sa `CGAL::all_furthest_neighbors_2()` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h index 34286f63b4b..1198e0d9869 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h @@ -6,9 +6,10 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional optimisation algorithms. -\cgalHasModelsBegin CGAL::Polytope_distance_d_traits_2 -\cgalHasModels CGAL::Polytope_distance_d_traits_3 -\cgalHasModels CGAL::Polytope_distance_d_traits_d +\cgalHasModelsBegin +\cgalModels{CGAL::Polytope_distance_d_traits_2} +\cgalModels{CGAL::Polytope_distance_d_traits_3} +\cgalModels{CGAL::Polytope_distance_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Polytope_distance_d` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h index 5794f471658..7295ea2e296 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h @@ -12,7 +12,8 @@ Whatever the coordinates of the points are, it is required for the width-algorithm to have access to the homogeneous representation of points. -\cgalHasModelsBegin CGAL::Width_default_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Width_default_traits_3} \cgalHasModelsEnd \sa `CGAL::Width_3` diff --git a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h index 1882b05c73e..206dbdb1a57 100644 --- a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h @@ -35,9 +35,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModelsBegin CGAL::Quadratic_program -\cgalHasModels CGAL::Quadratic_program_from_mps -\cgalHasModels CGAL::Linear_program_from_iterators +\cgalHasModelsBegin +\cgalModels{CGAL::Quadratic_program} +\cgalModels{CGAL::Quadratic_program_from_mps} +\cgalModels{CGAL::Linear_program_from_iterators} \cgalHasModelsEnd diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h index 0e4c2928cec..e9bbee8dadd 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h @@ -29,18 +29,20 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModelsBegin CGAL::Quadratic_program -\cgalHasModels CGAL::Quadratic_program_from_mps -\cgalHasModels CGAL::Nonnegative_linear_program_from_iterators +\cgalHasModelsBegin +\cgalModels{CGAL::Quadratic_program} +\cgalModels{CGAL::Quadratic_program_from_mps} +\cgalModels{CGAL::Nonnegative_linear_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator types, respectively, for `A_iterator`) must be convertible to some common `IntegralDomain` `ET`. -\cgalHasModelsBegin CGAL::Quadratic_program -\cgalHasModels CGAL::Quadratic_program_from_mps -\cgalHasModels CGAL::Nonnegative_linear_program_from_iterators +\cgalHasModelsBegin +\cgalModels{CGAL::Quadratic_program} +\cgalModels{CGAL::Quadratic_program_from_mps} +\cgalModels{CGAL::Nonnegative_linear_program_from_iterators} \cgalHasModelsEnd \sa `QuadraticProgram` diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h index f531f27550c..508ac094f4a 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h @@ -33,9 +33,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModelsBegin CGAL::Quadratic_program -\cgalHasModels CGAL::Quadratic_program_from_mps -\cgalHasModels CGAL::Nonnegative_quadratic_program_from_iterators +\cgalHasModelsBegin +\cgalModels{CGAL::Quadratic_program} +\cgalModels{CGAL::Quadratic_program_from_mps} +\cgalModels{CGAL::Nonnegative_quadratic_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator diff --git a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h index e2531015388..3b3ebe86f27 100644 --- a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h @@ -34,9 +34,10 @@ The description is given by appropriate random-access iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. -\cgalHasModelsBegin CGAL::Quadratic_program -\cgalHasModels CGAL::Quadratic_program_from_mps -\cgalHasModels CGAL::Quadratic_program_from_iterators +\cgalHasModelsBegin +\cgalModels{CGAL::Quadratic_program} +\cgalModels{CGAL::Quadratic_program_from_mps} +\cgalModels{CGAL::Quadratic_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h index 1359f35074e..e29abc65d3b 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h @@ -48,7 +48,8 @@ of the input complex. \cgalRefines{MeshComplex_3InTriangulation_3} -\cgalHasModelsBegin CGAL::Mesh_complex_3_in_triangulation_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_complex_3_in_triangulation_3} \cgalHasModelsEnd \sa `MeshComplex_3InTriangulation_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h index fa640570e27..2bd6bf5d8e8 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h @@ -42,7 +42,8 @@ the current approximation of each subdomain and each boundary surface patch. The data structure encodes the final mesh at the end of the meshing process. -\cgalHasModelsBegin CGAL::Mesh_complex_3_in_triangulation_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_complex_3_in_triangulation_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h index 50ac974f979..37c1aa8a1df 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h @@ -18,10 +18,11 @@ of the triangulation that are surface facets. \cgalRefines{TriangulationCellBase_3,CopyConstructible} -\cgalHasModelsBegin CGAL::Compact_mesh_cell_base_3 -\cgalHasModels CGAL::Mesh_cell_base_3 -\cgalHasModels CGAL::Simplicial_mesh_cell_base_3 -\cgalHasModels CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Compact_mesh_cell_base_3} +\cgalModels{CGAL::Mesh_cell_base_3} +\cgalModels{CGAL::Simplicial_mesh_cell_base_3} +\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} \cgalHasModelsEnd */ diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h index 938ce50e7e2..accc2c9b77a 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h @@ -16,9 +16,10 @@ and to an index characteristic of this face. \cgalRefines{TriangulationVertexBase_3} -\cgalHasModelsBegin CGAL::Mesh_vertex_base_3 -\cgalHasModels CGAL::Simplicial_mesh_vertex_base_3 -\cgalHasModels CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Mesh_vertex_base_3} +\cgalModels{CGAL::Simplicial_mesh_vertex_base_3} +\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3} \cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h index 4c700b18520..900c6874eb3 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h @@ -6,8 +6,9 @@ The concept `Descriptor` allows to describe a unique object in an abstract model \cgalRefines{DefaultConstructible,CopyConstructible,Assignable,EqualityComparable} -\cgalHasModelsBegin Index -\cgalHasModels Handle +\cgalHasModelsBegin +\cgalModels{Index} +\cgalModels{Handle} \cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/Hashable.h b/STL_Extension/doc/STL_Extension/Concepts/Hashable.h index ab5c0429a90..7dffe7cd917 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Hashable.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Hashable.h @@ -6,8 +6,10 @@ A type `Key` is a model of the concept `Hashable` if the specializations `boost::hash` and `std::hash` exist. -\cgalHasModelsBare{All handles and indices of \cgal data structures, - All handles of OpenMesh\, by including the specializations of the `graph_traits` header files provided by \cgal. They can be disables by defining the macro `CGAL_DISABLE_HASH_OPENMESH`.} +\cgalHasModelsBegin +\cgalHasModelsBare{All handles and indices of \cgal data structures} +\cgalHasModelsBare{All handles of OpenMesh\, by including the specializations of the `graph_traits` header files provided by \cgal. They can be disables by defining the macro `CGAL_DISABLE_HASH_OPENMESH`.} +\cgalHasModelsEnd \sa `CGAL::Unique_hash_map` \sa `std::unordered_set` diff --git a/STL_Extension/doc/STL_Extension/Concepts/Index.h b/STL_Extension/doc/STL_Extension/Concepts/Index.h index c94791cd287..4a3c749305d 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Index.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Index.h @@ -6,8 +6,9 @@ The concept `Index` is a refinement of `Descriptor` which must be convertible fr \cgalRefines{Descriptor} -\cgalHasModelsBegin int -\cgalHasModels size_t +\cgalHasModelsBegin +\cgalModels{int} +\cgalModels{size_t} \cgalHasModelsEnd \cgalHeading{Notation} diff --git a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h index 00f421a6c67..55cd05e95da 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h +++ b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h @@ -12,19 +12,20 @@ The concept `ProjectionObject` is modeled after the STL concept `UnaryFunction`, but takes also care of (const) references. -\cgalHasModelsBegin CGAL::Identity -\cgalHasModels CGAL::Dereference -\cgalHasModels CGAL::Get_address -\cgalHasModels CGAL::Cast_function_object -\cgalHasModels CGAL::Project_vertex -\cgalHasModels CGAL::Project_facet -\cgalHasModels CGAL::Project_point -\cgalHasModels CGAL::Project_normal -\cgalHasModels CGAL::Project_plane -\cgalHasModels CGAL::Project_next -\cgalHasModels CGAL::Project_prev -\cgalHasModels CGAL::Project_next_opposite -\cgalHasModels CGAL::Project_opposite_prev +\cgalHasModelsBegin +\cgalModels{CGAL::Identity} +\cgalModels{CGAL::Dereference} +\cgalModels{CGAL::Get_address} +\cgalModels{CGAL::Cast_function_object} +\cgalModels{CGAL::Project_vertex} +\cgalModels{CGAL::Project_facet} +\cgalModels{CGAL::Project_point} +\cgalModels{CGAL::Project_normal} +\cgalModels{CGAL::Project_plane} +\cgalModels{CGAL::Project_next} +\cgalModels{CGAL::Project_prev} +\cgalModels{CGAL::Project_next_opposite} +\cgalModels{CGAL::Project_opposite_prev} \cgalHasModelsEnd diff --git a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h index 02e8a321150..89f447da3b5 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h +++ b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h @@ -21,7 +21,8 @@ We call `S` the surjective function such that `S(object)` is the \"thing\" that is locked when one tries to lock `object`. In the previous example, `S(point)` is the voxel containing `point`. -\cgalHasModelsBegin CGAL::Spatial_lock_grid_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Spatial_lock_grid_3} \cgalHasModelsEnd */ diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h index 35367ad681f..64979029e17 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h @@ -11,8 +11,9 @@ namespace Scale_space_reconstruction_3 { * A mesher is a functor that can be applied to a range of * points and that returns a set of facets. * - * \cgalHasModelsBegin CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher - * \cgalHasModels CGAL::Scale_space_reconstruction_3::Advancing_front_mesher + * \cgalHasModelsBegin + * \cgalModels{CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher} + * \cgalModels{CGAL::Scale_space_reconstruction_3::Advancing_front_mesher} * \cgalHasModelsEnd * */ diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h index 326cc4ff2df..8eaa935ce3c 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h @@ -15,8 +15,9 @@ namespace Scale_space_reconstruction_3 { * \note the functor can be applied several times by the scale space * reconstruction algorithm. * - * \cgalHasModelsBegin CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother - * \cgalHasModels CGAL::Scale_space_reconstruction_3::Jet_smoother + * \cgalHasModelsBegin + * \cgalModels{CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother} + * \cgalModels{CGAL::Scale_space_reconstruction_3::Jet_smoother} * \cgalHasModelsEnd */ class Smoother diff --git a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h index f61385ec589..75e97ae287b 100644 --- a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h +++ b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h @@ -9,12 +9,13 @@ the keys and intervals, and provide comparison functions that are needed for window queries. -\cgalHasModelsBegin CGAL::Range_segment_tree_set_traits_2 -\cgalHasModels CGAL::Range_segment_tree_set_traits_3 -\cgalHasModels CGAL::Range_tree_map_traits_2 -\cgalHasModels CGAL::Range_tree_map_traits_3 -\cgalHasModels CGAL::Segment_tree_map_traits_2 -\cgalHasModels CGAL::Segment_tree_map_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Range_segment_tree_set_traits_2} +\cgalModels{CGAL::Range_segment_tree_set_traits_3} +\cgalModels{CGAL::Range_tree_map_traits_2} +\cgalModels{CGAL::Range_tree_map_traits_3} +\cgalModels{CGAL::Segment_tree_map_traits_2} +\cgalModels{CGAL::Segment_tree_map_traits_3} \cgalHasModelsEnd \cgalHeading{Example} diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h index f5be21ae15e..15c80be49e4 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h @@ -33,7 +33,8 @@ We only describe the additional requirements with respect to the \cgalRefines{ApolloniusGraphDataStructure_2} -\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h index ee8181103a4..4ae9eec2503 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h @@ -9,7 +9,8 @@ requirements for the face base class of the \cgalRefines{TriangulationFaceBase_2} -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_face_base_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h index d53cbd55ccf..d7a281a8d81 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h @@ -26,7 +26,8 @@ The `SegmentDelaunayGraphHierarchyVertexBase_2` concept does not introduce any constructors in addition to those of the `SegmentDelaunayGraphVertexBase_2` concept. -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 > +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 >} \cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h index 99d6bf2ca9e..65002722e6d 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h @@ -8,7 +8,8 @@ requirements for the sites of a segment Delaunay graph. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_site_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_site_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h index d79098a554c..fbe6887f2eb 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h @@ -11,7 +11,8 @@ by storing handles to points instead of points. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_storage_site_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_storage_site_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h index e4866423c15..e733426405d 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h @@ -15,7 +15,8 @@ See section \ref Segment_Delaunay_graph_2StronglyIntersecting for more informati \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_storage_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_storage_traits_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h index 78e56ed2f6c..7297c1db831 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h @@ -14,10 +14,11 @@ the concept `SegmentDelaunayGraphSite_2`. It also provides constructions for sites and several function object types for the predicates. -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_traits_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_traits_without_intersections_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_filtered_traits_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_traits_2} +\cgalModels{CGAL::Segment_Delaunay_graph_traits_without_intersections_2} +\cgalModels{CGAL::Segment_Delaunay_graph_filtered_traits_2} +\cgalModels{CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h index 48097737f24..32b0b36ab17 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h @@ -11,7 +11,8 @@ requirements for the vertex base class of the site of the segment Delaunay graph and provides access to one of its incident faces through a `Face_handle`. -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_vertex_base_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h index 4a8ec7f78fc..a384691661a 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h @@ -36,10 +36,11 @@ with respect to the \cgalRefines{SegmentDelaunayGraphTraits_2} -\cgalHasModelsBegin CGAL::Segment_Delaunay_graph_Linf_traits_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Segment_Delaunay_graph_Linf_traits_2} +\cgalModels{CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2} +\cgalModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2} +\cgalModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` diff --git a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h index cb1e7eed119..1322002cd6d 100644 --- a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h +++ b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h @@ -7,7 +7,9 @@ \cgalRefines{DefaultConstructible,PolygonTraits_2} + \cgalHasModelsBegin \cgalHasModelsBare{Any CGAL kernel, e.g., CGAL::Exact_predicates_exact_constructions_kernel.} + \cgalHasModelsEnd */ diff --git a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h index e581f066cb6..9005865d80e 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h +++ b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h @@ -12,7 +12,8 @@ input data has to be provided in form of a random access iterator. Point and normal property maps have to be provided to extract the points and the normals from the input. -\cgalHasModelsBegin CGAL::Shape_detection::Efficient_RANSAC_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Shape_detection::Efficient_RANSAC_traits} \cgalHasModelsEnd */ class EfficientRANSACTraits{ diff --git a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h index 88df769ec09..76926590b35 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h +++ b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h @@ -5,10 +5,11 @@ A concept that describes the set of methods used by the `CGAL::Shape_detection::Region_growing` to access neighbors of an item. -\cgalHasModelsBegin CGAL::Shape_detection::Point_set::K_neighbor_query -\cgalHasModels CGAL::Shape_detection::Point_set::Sphere_neighbor_query -\cgalHasModels CGAL::Shape_detection::Polygon_mesh::Polyline_graph -\cgalHasModels CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query +\cgalHasModelsBegin +\cgalModels{CGAL::Shape_detection::Point_set::K_neighbor_query} +\cgalModels{CGAL::Shape_detection::Point_set::Sphere_neighbor_query} +\cgalModels{CGAL::Shape_detection::Polygon_mesh::Polyline_graph} +\cgalModels{CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query} \cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h index af3212c6759..09b97911b5d 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h +++ b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h @@ -7,13 +7,14 @@ to maintain a region. A region is represented by a set items, which are included in this region. -\cgalHasModelsBegin CGAL::Shape_detection::Point_set::Least_squares_line_fit_region -\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region -\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region -\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region -\cgalHasModels CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region -\cgalHasModels CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region -\cgalHasModels CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region +\cgalHasModelsBegin +\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_line_fit_region} +\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region} +\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region} +\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region} +\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region} +\cgalModels{CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region} +\cgalModels{CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region} \cgalHasModelsEnd */ class RegionType { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h index 9ed67563fdc..cf96c3abe8e 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h @@ -10,9 +10,10 @@ a model of this concept, the user sets such directions and provides a way to ori contour edges towards these directions. All contour regularization functions in this package are parameterized by this concept. -\cgalHasModelsBegin Contours::Longest_direction_2 -\cgalHasModels Contours::Multiple_directions_2 -\cgalHasModels Contours::User_defined_directions_2 +\cgalHasModelsBegin +\cgalModels{Contours::Longest_direction_2} +\cgalModels{Contours::Multiple_directions_2} +\cgalModels{Contours::User_defined_directions_2} \cgalHasModelsEnd */ class ContourDirections { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h index 20dbf1801e1..f2cd1486593 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h @@ -9,7 +9,8 @@ A concept that describes the set of methods used by the class `QP_regularization` to access neighbors of a geometric object being regularized. -\cgalHasModelsBegin Segments::Delaunay_neighbor_query_2 +\cgalHasModelsBegin +\cgalModels{Segments::Delaunay_neighbor_query_2} \cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h index ab3bbb08b7b..ed3a10b5e28 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h @@ -9,8 +9,9 @@ A concept that describes the set of methods used by the class `QP_regularization` to access various data required for setting up the the global regularization problem. -\cgalHasModelsBegin Segments::Angle_regularization_2 -\cgalHasModels Segments::Offset_regularization_2 +\cgalHasModelsBegin +\cgalModels{Segments::Angle_regularization_2} +\cgalModels{Segments::Offset_regularization_2} \cgalHasModelsEnd */ class RegularizationType { diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h index 180cbeeb64d..363d63a6775 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h @@ -10,7 +10,8 @@ polyhedral mesh approximating a skin surface \cgalRefines{RegularTriangulationTraits_3} -\cgalHasModelsBegin CGAL::Skin_surface_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Skin_surface_traits_3} \cgalHasModelsEnd \sa `CGAL::Skin_surface_3` diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h index 237a5d3049d..22146acf83a 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h @@ -9,8 +9,9 @@ The concept requires a constructor from an iterator range of weighted points and a shrink factor. By default the input balls are grown in such that the skin surface wraps around the input balls. -\cgalHasModelsBegin CGAL::Skin_surface_3 -\cgalHasModels CGAL::Union_of_balls_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Skin_surface_3} +\cgalModels{CGAL::Union_of_balls_3} \cgalHasModelsEnd */ diff --git a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h index 163d17faa16..49dd95d0533 100644 --- a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h +++ b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h @@ -11,7 +11,8 @@ some function object types for the required predicates on those primitives. \cgalRefines{ArrangementTraits_2} -\cgalHasModelsBegin CGAL::Snap_rounding_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Snap_rounding_traits_2} \cgalHasModelsEnd */ @@ -172,7 +173,9 @@ namespace SRTraits_2{ \cgalConcept Represents an iso rectangle \cgalRefines{DefaultConstructible,CopyConstructible,Assignable} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Iso_rectangle_2 `Snap_rounding_traits_2::Iso_rectangle_2` \endlink} + \cgalHasModelsEnd */ class IsoRectangle_2 {}; @@ -181,7 +184,9 @@ class IsoRectangle_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_vertex_2 `Snap_rounding_traits_2::Construct_vertex_2` \endlink} + \cgalHasModelsEnd */ class ConstructVertex_2 { @@ -198,7 +203,9 @@ class ConstructVertex_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_segment_2 `Snap_rounding_traits_2::Construct_segment_2` \endlink} + \cgalHasModelsEnd */ class ConstructSegment_2 { @@ -215,7 +222,9 @@ class ConstructSegment_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableQuaternaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Construct_iso_rectangle_2 `Snap_rounding_traits_2::Construct_iso_rectangle_2` \endlink} + \cgalHasModelsEnd */ class ConstructIsoRectangle_2 { @@ -236,7 +245,9 @@ class ConstructIsoRectangle_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Compare_x_2 `Snap_rounding_traits_2::Compare_x_2` \endlink} + \cgalHasModelsEnd */ class CompareX_2 { @@ -252,7 +263,9 @@ class CompareX_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Compare_y_2 `Snap_rounding_traits_2::Compare_y_2` \endlink} + \cgalHasModelsEnd */ class CompareY_2 { @@ -269,7 +282,9 @@ class CompareY_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableQuaternaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Snap_2 `Snap_rounding_traits_2::Snap_2` \endlink} + \cgalHasModelsEnd */ class Snap_2 { @@ -288,7 +303,9 @@ class Snap_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableBinaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Integer_grid_point_2 `Snap_rounding_traits_2::Integer_grid_point_2` \endlink} + \cgalHasModelsEnd */ class IntegerGridPoint_2 @@ -309,7 +326,9 @@ class IntegerGridPoint_2 \ingroup PkgSnapRounding2Concepts \cgalConcept \cgalRefines{AdaptableTernaryFunction} + \cgalHasModelsBegin \cgalHasModelsBare{\link SnapRoundingTraits_2::Minkowski_sum_with_pixel_2 `Snap_rounding_traits_2::Minkowski_sum_with_pixel_2` \endlink} + \cgalHasModelsEnd */ class MinkowskiSumWithPixel_2 { diff --git a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h index 41594f6cbfe..7791fbf59a9 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h @@ -19,7 +19,8 @@ follows: \tparam FT Number type \tparam dim Dimension of the matrices and vectors -\cgalHasModelsBegin CGAL::Eigen_diagonalize_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_diagonalize_traits} \cgalHasModelsEnd */ template diff --git a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h index 015153dd324..f73b3d14396 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h @@ -7,7 +7,8 @@ class MixedIntegerProgramTraits `MixedIntegerProgramVariable` is a concept of a variable in a Mixed Integer Programming (MIP) problem. -\cgalHasModelsBegin CGAL::Variable +\cgalHasModelsBegin +\cgalModels{CGAL::Variable} \cgalHasModelsEnd */ template @@ -113,7 +114,8 @@ public: `MixedIntegerProgramLinearConstraint` is a concept of a linear constraint in a Mixed Integer Programming (MIP) problem. -\cgalHasModelsBegin CGAL::Linear_constraint +\cgalHasModelsBegin +\cgalModels{CGAL::Linear_constraint} \cgalHasModelsEnd */ template @@ -211,7 +213,8 @@ public: `MixedIntegerProgramLinearObjective` is a concept of the linear objective function in a Mixed Integer Programming (MIP) problem. -\cgalHasModelsBegin CGAL::Linear_objective +\cgalHasModelsBegin +\cgalModels{CGAL::Linear_objective} \cgalHasModelsEnd */ template @@ -280,9 +283,10 @@ Mixed Integer Programming (MIP) problems. A model of this concept stores the int variables, linear objective, and linear constraints (if any) and provides a method to solve the problem. -\cgalHasModelsBegin CGAL::Mixed_integer_program_traits -\cgalHasModels CGAL::GLPK_mixed_integer_program_traits -\cgalHasModels CGAL::SCIP_mixed_integer_program_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Mixed_integer_program_traits} +\cgalModels{CGAL::GLPK_mixed_integer_program_traits} +\cgalModels{CGAL::SCIP_mixed_integer_program_traits} \cgalHasModelsEnd */ template diff --git a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h index 07781ed7265..49fb8ee1937 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h @@ -7,7 +7,8 @@ Concept describing the set of requirements for solving the normal equation \f$ A \sa `SparseLinearAlgebraTraits_d` -\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class NormalEquationSparseLinearAlgebraTraits_d diff --git a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h index f929f231c7b..7ed6bf55f2b 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h @@ -24,7 +24,8 @@ where \f$ l_i \in \mathbb{R} \cup \{-\infty\} \f$ for all \f$ i \f$, where \f$ u_i \in \mathbb{R} \cup \{+\infty\} \f$ for all \f$ i \f$. -\cgalHasModelsBegin CGAL::OSQP_quadratic_program_traits +\cgalHasModelsBegin +\cgalModels{CGAL::OSQP_quadratic_program_traits} \cgalHasModelsEnd */ class QuadraticProgramTraits { diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h index 7c04f914bd4..9d236d47d3d 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h @@ -4,7 +4,8 @@ The concept `SparseLinearAlgebraTraits_d` is used to solve sparse linear systems A\f$ \times \f$ X = B. -\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class SparseLinearAlgebraTraits_d @@ -63,7 +64,8 @@ by a sparse matrix. \cgalRefines{DefaultConstructible} -\cgalHasModelsBegin CGAL::Eigen_vector +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_vector} \cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` @@ -131,8 +133,9 @@ NT& operator[](Index row); \cgalRefines{Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Eigen_sparse_matrix -\cgalHasModels CGAL::Eigen_sparse_symmetric_matrix +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_sparse_matrix} +\cgalModels{CGAL::Eigen_sparse_symmetric_matrix} \cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h index 34df486f1e6..c8792ccab3a 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h @@ -8,7 +8,8 @@ method to solve the system for different right-hand vectors. \cgalRefines{SparseLinearAlgebraTraits_d} -\cgalHasModelsBegin CGAL::Eigen_solver_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class SparseLinearAlgebraWithFactorTraits_d { diff --git a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h old mode 100644 new mode 100755 index 2c843090296..cd0ec9832ee --- a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h @@ -5,7 +5,8 @@ The concept `SvdTraits` describes the linear algebra types and algorithms needed to solve in the least square sense a linear system with a singular value decomposition -\cgalHasModelsBegin galHasModel `CGAL::Eigen_svd +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_svd} \cgalHasModelsEnd */ class SvdTraits @@ -52,7 +53,8 @@ public: \cgalConcept Concept of vector type used by the concept `SvdTraits`. -\cgalHasModelsBegin CGAL::Eigen_vector +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_vector} \cgalHasModelsEnd */ class SvdTraits::Vector @@ -90,7 +92,8 @@ Concept of matrix type used by the concept `SvdTraits`. \cgalRefines{DefaultConstructible,Assignable} -\cgalHasModelsBegin CGAL::Eigen_matrix +\cgalHasModelsBegin +\cgalModels{CGAL::Eigen_matrix} \cgalHasModelsEnd */ class SvdTraits::Matrix diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h old mode 100644 new mode 100755 index 4e0837b36be..7289e042338 --- a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h @@ -4,8 +4,9 @@ The concept `FuzzyQueryItem` describes the requirements for fuzzy `d`-dimensional spatial objects. -\cgalHasModelsBegin CGAL::Fuzzy_sphere -\cgalHasModel `CGAL::Fuzzy_iso_box` +\cgalHasModelsBegin +\cgalHasModels{CGAL::Fuzzy_sphere} +\cgalHasModels{CGAL::Fuzzy_iso_box} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h index 7a8506131f6..6bf09d1211a 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h @@ -8,8 +8,9 @@ To optimize distance computations transformed distances are used, e.g., for a Euclidean distance the transformed distance is the squared Euclidean distance. -\cgalHasModelsBegin CGAL::Manhattan_distance_iso_box_point -\cgalHasModels CGAL::Euclidean_distance_sphere_point +\cgalHasModelsBegin +\cgalModels{CGAL::Manhattan_distance_iso_box_point} +\cgalModels{CGAL::Euclidean_distance_sphere_point} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h index b2f826e4074..a12b6e2a244 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h @@ -8,8 +8,9 @@ E.g., for an Euclidean distance the transformed distance is the squared Euclidea \cgalRefines{GeneralDistance} -\cgalHasModelsBegin CGAL::Euclidean_distance -\cgalHasModels CGAL::Weighted_Minkowski_distance +\cgalHasModelsBegin +\cgalModels{CGAL::Euclidean_distance} +\cgalModels{CGAL::Weighted_Minkowski_distance} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h index feb9af6f79e..22a34f8c6de 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h @@ -8,12 +8,13 @@ range search queries in a model of `SpatialTree`. \cgalRefines{SearchTraits} -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d -\cgalHasModels CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d -\cgalHasModels CGAL::Search_traits_2 -\cgalHasModels CGAL::Search_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} +\cgalModels{CGAL::Search_traits_2} +\cgalModels{CGAL::Search_traits_3} \cgalHasModelsEnd \sa `SearchTraits` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h index 96857238a64..f55a7971ea5 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_2.h @@ -5,7 +5,9 @@ The concept `SearchGeomTraits_2` defines the requirements for the template parameter of the search traits classes. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd */ class SearchGeomTraits_2 { diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h index 85191a1b096..5b5e5916dc9 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchGeomTraits_3.h @@ -5,7 +5,9 @@ The concept `SearchGeomTraits_3` defines the requirements for the template parameter of the search traits classes. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h index 6bfe70109e0..358c828ff6f 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h @@ -5,14 +5,15 @@ The concept `SearchTraits` defines the requirements for the template parameter of the search classes. -\cgalHasModelsBegin CGAL::Cartesian_d -\cgalHasModels CGAL::Homogeneous_d -\cgalHasModels CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d -\cgalHasModels CGAL::Search_traits_2 -\cgalHasModels CGAL::Search_traits_3 -\cgalHasModels CGAL::Search_traits_d -\cgalHasModels CGAL::Search_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Cartesian_d} +\cgalModels{CGAL::Homogeneous_d} +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} +\cgalModels{CGAL::Search_traits_2} +\cgalModels{CGAL::Search_traits_3} +\cgalModels{CGAL::Search_traits_d} +\cgalModels{CGAL::Search_traits} \cgalHasModelsEnd \sa `RangeSearchTraits` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h index ecdc521ce9f..357dbbfff46 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h @@ -11,7 +11,8 @@ space is said to be on the negative side of the separator and the other part of space is said to be on the positive side of the separator. -\cgalHasModelsBegin CGAL::Plane_separator +\cgalHasModelsBegin +\cgalModels{CGAL::Plane_separator} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h index 58d396cec22..aa483a29780 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h @@ -5,7 +5,8 @@ The concept `SpatialTree` defines the requirements for a tree supporting both neighbor searching and approximate range searching. -\cgalHasModelsBegin CGAL::Kd_tree +\cgalHasModelsBegin +\cgalModels{CGAL::Kd_tree} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h index 88a18887640..6621186a2f7 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h @@ -7,13 +7,14 @@ The concept `Splitter` defines the requirements for a function object class implementing a splitting rule. \cgalAdvancedEnd -\cgalHasModelsBegin CGAL::Fair -\cgalHasModels CGAL::Median_of_rectangle -\cgalHasModels CGAL::Median_of_max_spread -\cgalHasModels CGAL::Midpoint_of_rectangle -\cgalHasModels CGAL::Midpoint_of_max_spread -\cgalHasModels CGAL::Sliding_fair -\cgalHasModels CGAL::Sliding_midpoint +\cgalHasModelsBegin +\cgalModels{CGAL::Fair} +\cgalModels{CGAL::Median_of_rectangle} +\cgalModels{CGAL::Median_of_max_spread} +\cgalModels{CGAL::Midpoint_of_rectangle} +\cgalModels{CGAL::Midpoint_of_max_spread} +\cgalModels{CGAL::Sliding_fair} +\cgalModels{CGAL::Sliding_midpoint} \cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h index 8a48e705bd0..f577778a10d 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_2.h @@ -9,7 +9,9 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_2` defines the complete set of primitives required in these functions and functors. -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Spatial_sort_traits_adapter_2 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Spatial_sort_traits_adapter_2} \cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h index 2cef4c17269..f0274680a2d 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_3.h @@ -9,7 +9,9 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_3` defines the complete set of primitives required in these functions and functors. -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Spatial_sort_traits_adapter_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Spatial_sort_traits_adapter_3} \cgalHasModelsEnd */ diff --git a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h index a0c4dfd031d..8e4ca68c799 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h +++ b/Spatial_sorting/doc/Spatial_sorting/Concepts/SpatialSortingTraits_d.h @@ -9,7 +9,9 @@ primitives (objects and predicates) that the sorting algorithms use. `SpatialSortingTraits_d` defines the complete set of primitives required in these functions and functors. -\cgalHasModelsBareBegin{Any \cgal `d`-dimensional kernel.} CGAL::Spatial_sort_traits_adapter_d +\cgalHasModelsBegin +\cgalHasModelsBare{Any \cgal `d`-dimensional kernel.} +\cgalHasModels{CGAL::Spatial_sort_traits_adapter_d} \cgalHasModelsEnd */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h index 15aa1efc7da..f5f7270e043 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h @@ -7,7 +7,8 @@ The concept `PolygonOffsetBuilderTraits_2` describes the requirements for the geometric traits class required by the algorithm class `CGAL::Polygon_offset_builder_2`. -\cgalHasModelsBegin CGAL::Polygon_offset_builder_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Polygon_offset_builder_traits_2} \cgalHasModelsEnd \sa `CGAL::Polygon_offset_builder_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h index a19486171c4..5df86d3e2a6 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h @@ -7,7 +7,8 @@ The concept `StraightSkeletonBuilderTraits_2` describes the requirements for the geometric traits class required by the algorithm class `CGAL::Straight_skeleton_builder_2`. -\cgalHasModelsBegin CGAL::Straight_skeleton_builder_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_builder_traits_2} \cgalHasModelsEnd */ class StraightSkeletonBuilderTraits_2 { diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h index 316fbc4b0e0..7937ab43535 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h @@ -5,7 +5,8 @@ The concept `StraightSkeletonBuilder_2_Visitor` describes the requirements of the visitor class required by the algorithm class `CGAL::Straight_skeleton_builder_2` in its third template parameter. -\cgalHasModelsBegin CGAL::Dummy_straight_skeleton_builder_2_visitor +\cgalHasModelsBegin +\cgalModels{CGAL::Dummy_straight_skeleton_builder_2_visitor} \cgalHasModelsEnd \sa `CGAL::Straight_skeleton_builder_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h index 16bf5a396b5..af125ad42f5 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h @@ -8,7 +8,8 @@ The concept `StraightSkeletonFace_2` describes the requirements for the face typ `StraightSkeleton_2` concept. It is a refinement of the `HalfedgeDSFace` concept with support for storage of the incident halfedge. -\cgalHasModelsBegin CGAL::Straight_skeleton_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_face_base_2} \cgalHasModelsEnd \sa `StraightSkeletonVertex_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h index 22caa9419c0..67f6dafc5c4 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h @@ -12,7 +12,8 @@ The only geometric embedding used by the Straight Skeleton Data Structure are th in the contour and skeleton vertices. However, for any halfedge, there is a 2D segment implicitly given by its `source` and `target` vertices. -\cgalHasModelsBegin CGAL::Straight_skeleton_halfedge_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_halfedge_base_2} \cgalHasModelsEnd \sa `StraightSkeleton_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h index a95688dc6e7..0bf7cab0c87 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h @@ -6,7 +6,8 @@ The concept `StraightSkeletonItemsConverter_2` describes the requirements for it as the third template argument to the class `Straight_skeleton_converter_2`. It converts the `HDS` items from one type of straight skeleton to another. -\cgalHasModelsBegin CGAL::Straight_skeleton_items_converter_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_items_converter_2} \cgalHasModelsEnd \sa `CGAL::Straight_skeleton_converter_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h index a53a002940e..29f50118cb4 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h @@ -9,7 +9,8 @@ The concept `StraightSkeletonVertex_2` describes the requirements for the vertex with support for storage of the incident halfedge. The `StraightSkeletonVertex_2` concept requires the geometric embedding to be a 2D point. -\cgalHasModelsBegin CGAL::Straight_skeleton_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_vertex_base_2} \cgalHasModelsEnd \sa `StraightSkeletonHalfedge_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h index 52dcfe61484..9df0937e9ff 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h @@ -9,7 +9,8 @@ used to represent a straight skeleton. It refines the concept `HalfedgeDS` and adds additional requirements on the nested types `Vertex`, `Halfedge`, and `Face` of the halfedge data structure. -\cgalHasModelsBegin CGAL::Straight_skeleton_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Straight_skeleton_2} \cgalHasModelsEnd \attention This concept explicitly protects all the modifying diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h index 6f001fda04e..9e23002f51d 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h @@ -9,8 +9,9 @@ the second template parameter of the class provides the operation that integrates a new point from a given point with a predefined step, and according to a specified vector. -\cgalHasModelsBegin CGAL::Euler_integrator_2 -\cgalHasModels CGAL::Runge_kutta_integrator_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Euler_integrator_2} +\cgalModels{CGAL::Runge_kutta_integrator_2} \cgalHasModelsEnd */ diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h index e1394b70945..a2e24fd2fba 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/StreamLinesTraits_2.h @@ -9,7 +9,9 @@ the template parameter of the class This concept provides the types handled by the `CGAL::Stream_lines_2` class. +\cgalHasModelsBegin \cgalHasModelsBare{The kernels of \cgal are models for this traits class.} +\cgalHasModelsEnd */ class StreamLinesTraits_2 { diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h index b42a88dba95..b79ed1e740f 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h @@ -9,8 +9,9 @@ the first template parameter of the class provides the types of the geometric primitives used in the placement of streamlines and some functions for answering different queries. -\cgalHasModelsBegin CGAL::Regular_grid_2 -\cgalHasModels CGAL::Triangular_field_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_grid_2} +\cgalModels{CGAL::Triangular_field_2} \cgalHasModelsEnd */ diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h index 2a0e662a0e8..ea351a5d2ba 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h @@ -11,7 +11,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModelsBegin CGAL::DooSabin_mask_3 +\cgalHasModelsBegin +\cgalModels{CGAL::DooSabin_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h index 22c59d45ad2..15a337e68c9 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h @@ -11,7 +11,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModelsBegin CGAL::CatmullClark_mask_3 +\cgalHasModelsBegin +\cgalModels{CGAL::CatmullClark_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h index 2faff045bd6..190f970bd00 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h @@ -10,7 +10,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModelsBegin CGAL::Loop_mask_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Loop_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h index ed311db671a..72823a073e1 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h @@ -9,7 +9,8 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} -\cgalHasModelsBegin CGAL::Sqrt3_mask_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Sqrt3_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h index 68364e07863..f6e59cdaf67 100644 --- a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h +++ b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h @@ -6,8 +6,9 @@ The concept `ErrorMetricProxy` defines the notion of proxy, computes the fitting error from a face to a proxy, and fits a proxy from a range of faces. -\cgalHasModelsBegin CGAL::Surface_mesh_approximation::L21_metric_plane_proxy -\cgalHasModels CGAL::Surface_mesh_approximation::L2_metric_plane_proxy +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_approximation::L21_metric_plane_proxy} +\cgalModels{CGAL::Surface_mesh_approximation::L2_metric_plane_proxy} \cgalHasModelsEnd */ diff --git a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h index 65137707986..4332ebda74b 100644 --- a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h +++ b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h @@ -9,8 +9,9 @@ to implement models of this concept. \cgalRefines{DefaultConstructible} -\cgalHasModelsBegin CGAL::Deformation_Eigen_closest_rotation_traits_3 -\cgalHasModels CGAL::Deformation_Eigen_polar_closest_rotation_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Deformation_Eigen_closest_rotation_traits_3} +\cgalModels{CGAL::Deformation_Eigen_polar_closest_rotation_traits_3} \cgalHasModelsEnd */ diff --git a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h index 67002d031ae..35a8d8a2e1a 100644 --- a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h +++ b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h @@ -12,16 +12,17 @@ the border of a given mesh. Construction and destruction are undefined. -\cgalHasModelsBegin CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3 -\cgalHasModels CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3} +\cgalModels{CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3} \cgalHasModelsEnd \sa `CGAL::Surface_mesh_parameterization::Orbifold_Tutte_parameterizer_3` diff --git a/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h b/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h index 2e0a58fa0a2..81e7848328b 100644 --- a/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h +++ b/Surface_mesh_segmentation/doc/Surface_mesh_segmentation/Concepts/SegmentationGeomTraits.h @@ -5,7 +5,9 @@ The concept `SegmentationGeomTraits` describes the set of requirements of the geometric traits needed by the segmentation functions. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \cgalRefines{AABBGeomTraits} diff --git a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h index 51d4ae712eb..9724634b10f 100644 --- a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h +++ b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h @@ -8,7 +8,8 @@ predicates, and constructions required by the traits class parameter of `CGAL::Surface_mesh_shortest_path`. \cgalRefines{CopyConstructible,Assignable} -\cgalHasModelsBegin CGAL::Surface_mesh_shortest_path_traits +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_shortest_path_traits} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h index f31143efcc6..2bd7a6bd201 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h @@ -12,9 +12,10 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Edge_length_cost -\cgalHasModels CGAL::Surface_mesh_simplification::LindstromTurk_cost -\cgalHasModels CGAL::Surface_mesh_simplification::GarlandHeckbert_policies +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_simplification::Edge_length_cost} +\cgalModels{CGAL::Surface_mesh_simplification::LindstromTurk_cost} +\cgalModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h index bb66ff08d05..cf87c5e2400 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h @@ -14,11 +14,12 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Midpoint_placement -\cgalHasModels CGAL::Surface_mesh_simplification::LindstromTurk_placement -\cgalHasModels CGAL::Surface_mesh_simplification::GarlandHeckbert_policies -\cgalHasModels CGAL::Surface_mesh_simplification::Bounded_normal_change_placement -\cgalHasModels CGAL::Surface_mesh_simplification::Constrained_placement +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_simplification::Midpoint_placement} +\cgalModels{CGAL::Surface_mesh_simplification::LindstromTurk_placement} +\cgalModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} +\cgalModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_placement} +\cgalModels{CGAL::Surface_mesh_simplification::Constrained_placement} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h index b6654407400..6f53b84171e 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h @@ -14,8 +14,9 @@ be absent). The value `boost::none` indicates that the edge should not be collap \cgalRefines{DefaultConstructible,CopyConstructible} -\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Bounded_normal_change_filter -\cgalHasModels CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_filter} +\cgalModels{CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h index df8fc845f5b..9a51402119c 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h @@ -4,11 +4,12 @@ The concept `StopPredicate` describes the requirements for the predicate which indicates if the simplification process must finish. -\cgalHasModelsBegin CGAL::Surface_mesh_simplification::Edge_count_stop_predicate -\cgalHasModels CGAL::Surface_mesh_simplification::Face_count_stop_predicate -\cgalHasModels CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate -\cgalHasModels CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate -\cgalHasModels CGAL::Surface_mesh_simplification::Edge_length_stop_predicate +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_simplification::Edge_count_stop_predicate} +\cgalModels{CGAL::Surface_mesh_simplification::Face_count_stop_predicate} +\cgalModels{CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate} +\cgalModels{CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate} +\cgalModels{CGAL::Surface_mesh_simplification::Edge_length_stop_predicate} \cgalHasModelsEnd */ diff --git a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h index b7466a2ecd4..8e929d561dd 100644 --- a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h +++ b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h @@ -5,7 +5,9 @@ * * Traits class concept defining the requirements of the class `CGAL::Mean_curvature_flow_skeletonization`. * + * \cgalHasModelsBegin * \cgalHasModelsBare{Any \cgal `Kernel` with `double` as `%Kernel::%FT`} + * \cgalHasModelsEnd * * */ diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h index 6f6355c9390..ea183d1c13f 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchema.h @@ -9,8 +9,10 @@ \cgalRefines{GenericMap} - \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map`\endlink\n - \link CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map`\endlink} + \cgalHasModelsBegin + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_combinatorial_map`\endlink} + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map `CGAL::Surface_mesh_topology::Polygonal_schema_with_generalized_map`\endlink} + \cgalHasModelsEnd */ class PolygonalSchema diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h index 0bf077baf42..ee039139ce1 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/PolygonalSchemaItems.h @@ -6,7 +6,9 @@ \cgalRefines{GenericMapItems} + \cgalHasModelsBegin \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Polygonal_schema_min_items `CGAL::Surface_mesh_topology::Polygonal_schema_min_items`\endlink} + \cgalHasModelsEnd */ class PolygonalSchemaItems diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h index 4650a313f02..6f9cbefceb6 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/Concepts/WeightFunctor.h @@ -5,8 +5,10 @@ The concept `WeightFunctor` defines a functor to calculate the weight of an edge. - \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Unit_weight_functor `CGAL::Surface_mesh_topology::Unit_weight_functor`\endlink, - \link CGAL::Surface_mesh_topology::Euclidean_length_weight_functor `CGAL::Surface_mesh_topology::Euclidean_length_weight_functor`\endlink} + \cgalHasModelsBegin + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Unit_weight_functor `CGAL::Surface_mesh_topology::Unit_weight_functor`\endlink} + \cgalHasModelsBare{\link CGAL::Surface_mesh_topology::Euclidean_length_weight_functor `CGAL::Surface_mesh_topology::Euclidean_length_weight_functor`\endlink} + \cgalHasModelsEnd */ class WeightFunctor { public: diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h index 319bf352f0c..299065f4890 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitFunction.h @@ -7,7 +7,9 @@ The concept `ImplicitFunction` describes a function object whose `operator()` computes the values of a function \f$ f : \mathbb{R}^3 \longrightarrow \mathbb{R}\f$. -\cgalHasModelsBareBegin{any pointer to a function of type `FT (*)(Point)`} CGAL::Gray_level_image_3 +\cgalHasModelsBegin +\cgalHasModelsBare{any pointer to a function of type `FT (*)(Point)`} +\cgalHasModels{CGAL::Gray_level_image_3} \cgalHasModelsEnd \sa `CGAL::Implicit_surface_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h index 28814f2648e..d06d695c40e 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/ImplicitSurfaceTraits_3.h @@ -15,7 +15,9 @@ the concept `ImplicitSurfaceTraits_3` provides the types, predicates and constru that are passed to the generated model of `SurfaceMeshTraits_3`. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Implicit_surface_3` \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h index 1b16bc506f1..3dcc8a0dedf 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h @@ -37,8 +37,9 @@ of the restriction to the surface of a three dimensional triangulation. In the following we call surface center of a facet, the center of its biggest Delaunay surface ball. -\cgalHasModelsBegin CGAL::Surface_mesh_cell_base_3 -\cgalHasModels CGAL::Surface_mesh_default_triangulation_3::Cell +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_cell_base_3} +\cgalModels{CGAL::Surface_mesh_default_triangulation_3::Cell} \cgalHasModelsEnd \sa `SurfaceMeshTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h index ec9eba19372..35b923bbb8b 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h @@ -30,7 +30,8 @@ A model of this concept is a type to be plugged as first template parameter in the function template `CGAL::make_surface_mesh()`. -\cgalHasModelsBegin CGAL::Surface_mesh_complex_2_in_triangulation_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_complex_2_in_triangulation_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h index 7380607aca0..0f3431af56c 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h @@ -33,7 +33,8 @@ is just a lexicographical comparison. The meshing algorithm handles facets with lowest quality first. The qualities are computed by a function `is_bad(const Facet& f, const Quality& q)`. -\cgalHasModelsBegin CGAL::Surface_mesh_default_criteria_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_default_criteria_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h index dd728781a7f..672f7466948 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h @@ -11,7 +11,8 @@ and to compute some intersection points if any exists. The concept `SurfaceMeshTraits_3` also includes a funcctor able to provide a small set of initial points on the surface. -\cgalHasModelsBegin CGAL::Surface_mesh_traits_generator_3::type +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_traits_generator_3::type} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h index 7af1aba64ca..a8411edcbbd 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTriangulation_3.h @@ -17,7 +17,9 @@ the requirements for the triangulation type plugged in the class `CGAL::Surface_mesh_complex_2_in_triangulation_3`. +\cgalHasModelsBegin \cgalHasModelsBare{Any 3D Delaunay triangulation class of \cgal} +\cgalHasModelsEnd \sa `CGAL::Triangulation_3` \sa `CGAL::Delaunay_triangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h index 086b7759ac9..32663ac10dd 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h @@ -31,8 +31,9 @@ integers, which, when they are valid, store respectively the number of complex facets incident to the vertex and the number of connected components of the adjacency graph of those facets. -\cgalHasModelsBegin CGAL::Surface_mesh_vertex_base_3 -\cgalHasModels CGAL::Surface_mesh_default_triangulation_3::Vertex +\cgalHasModelsBegin +\cgalModels{CGAL::Surface_mesh_vertex_base_3} +\cgalModels{CGAL::Surface_mesh_default_triangulation_3::Vertex} \cgalHasModelsEnd \sa `SurfaceMeshComplex_2InTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h index 0e5cca74dfe..4b4d11da894 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h @@ -8,7 +8,8 @@ The surface types are required to be copy constructible and assignable. -\cgalHasModelsBegin CGAL::Implicit_surface_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Implicit_surface_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h index e10d068c1b1..e1dc359a13f 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h @@ -48,7 +48,8 @@ that the `CGAL::Triangulation_data_structure_2` actually uses as a base class for the class `CGAL::Triangulation_data_structure_2::Face`. -\cgalHasModelsBegin CGAL::Triangulation_ds_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_face_base_2} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h index e47b7cfbf3f..994a0f82b9b 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h @@ -44,7 +44,8 @@ that the `CGAL::Triangulation_data_structure_2` actually uses as a base class for the class of `CGAL::Triangulation_data_structure_2::Vertex`. -\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h index 051a1359d2e..a0731074095 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h @@ -64,7 +64,8 @@ the rank of this item in the output order. When dimension \f$ <\f$ 2, the same information is output for faces of maximal dimension instead of faces. -\cgalHasModelsBegin CGAL::Triangulation_data_structure_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2::Face` @@ -727,7 +728,8 @@ In order to obtain new vertices or destruct unused vertices, the user must call the `create_vertex()` and `delete_vertex()` methods of the triangulation data structure. -\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` @@ -849,7 +851,8 @@ The methods `create_face()` and have to be used to define new faces and to delete no longer used faces. -\cgalHasModelsBegin CGAL::Triangulation_ds_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_face_base_2} \cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h index 59f5b45bbe2..8f8ec146dbf 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h @@ -33,7 +33,8 @@ cell classes. The rebound base classes so obtained are the classes which are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. -\cgalHasModelsBegin CGAL::Triangulation_ds_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_cell_base_3} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h index 9ef2cd34bbc..0a9d10b04bf 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h @@ -28,7 +28,8 @@ cell classes. The rebound base classes so obtained are the classes which are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. -\cgalHasModelsBegin CGAL::Triangulation_ds_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_vertex_base_3} \cgalHasModelsEnd \sa `TriangulationDSCellBase_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h index a2c6d41e933..c3a7ba38023 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h @@ -65,7 +65,8 @@ neighbors of each cell, where the index corresponds to the preceding list of cells. When dimension < 3, the same information is stored for faces of maximal dimension instead of cells. -\cgalHasModelsBegin CGAL::Triangulation_data_structure_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_data_structure_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3::Vertex` diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h index aa3f4d68dc1..342e203e259 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h @@ -6,7 +6,8 @@ Cell base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. -\cgalHasModelsBegin CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} \cgalHasModelsEnd */ diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h index ad71f044d99..85e92da96c3 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingTriangulationTraits_3.h @@ -10,7 +10,9 @@ of the class `Remeshing_triangulation_3`. It defines the geometric objects (points, segments, triangles, and tetrahedra) forming the triangulation together with a few geometric predicates and constructions on these objects. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Triangulation_3` */ diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h index 2b1b5bc8fc3..2ce117b8ff3 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h @@ -6,7 +6,8 @@ Vertex base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. -\cgalHasModelsBegin Tetrahedral_remeshing::Remeshing_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{Tetrahedral_remeshing::Remeshing_vertex_base_3} \cgalHasModelsEnd */ diff --git a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h index 14395b71b93..1dd4fa17d49 100644 --- a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h @@ -9,8 +9,9 @@ a Delaunay triangulation. It corresponds to the first template parameter of the \cgalRefines{TriangulationTraits} -\cgalHasModelsBegin CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d +\cgalHasModelsBegin +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `TriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h index 35b31839b7a..1afb3084639 100644 --- a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h @@ -9,8 +9,9 @@ a regular triangulation. It corresponds to the first template parameter of the c \cgalRefines{TriangulationTraits} -\cgalHasModelsBegin CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d +\cgalHasModelsBegin +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `TriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h index d92afbd427e..b72f4ee1fd0 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h @@ -15,7 +15,8 @@ The dimension of a face is implicitly set when `TriangulationDSFace::set_index` is called two times to set the first two vertices (`i = 0` and `i = 1`), then the dimension is 1. -\cgalHasModelsBegin CGAL::Triangulation_face +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_face} \cgalHasModelsEnd \sa `TriangulationDSFullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h index 3e32c2423a2..231e29f5a08 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h @@ -36,8 +36,9 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::FullCell} -\cgalHasModelsBegin CGAL::Triangulation_ds_full_cell -\cgalHasModels CGAL::Triangulation_full_cell +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_full_cell} +\cgalModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `TriangulationDSVertex` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h index c23aaabe1ea..51fb7cad627 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h @@ -36,8 +36,9 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::Vertex} -\cgalHasModelsBegin CGAL::Triangulation_ds_vertex -\cgalHasModels CGAL::Triangulation_vertex +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_vertex} +\cgalModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \sa `TriangulationDSFullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h index c17ded6feb1..a8da6d39849 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h @@ -69,7 +69,8 @@ The classes `Vertex` and `Full_cell` have to provide the relevant I/O operators (possibly empty). -\cgalHasModelsBegin CGAL::Triangulation_data_structure +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_data_structure} \cgalHasModelsEnd \sa `TriangulationDataStructure::Vertex` @@ -661,8 +662,9 @@ It sets requirements of combinatorial nature only, as geometry is not concerned here. In particular, we only require that the vertex holds a handle to a full cell incident to it in the triangulation. -\cgalHasModelsBegin CGAL::Triangulation_ds_vertex -\cgalHasModels CGAL::Triangulation_vertex +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_vertex} +\cgalModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` @@ -769,8 +771,9 @@ full cell as well as handles to the adjacent full cells. Two full cells are said to be adjacent when they share a facet. Adjacent full cells are called hereafter neighbors. -\cgalHasModelsBegin CGAL::Triangulation_ds_full_cell -\cgalHasModels CGAL::Triangulation_full_cell +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_ds_full_cell} +\cgalModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h index eba0214810a..95cac2eab13 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h @@ -10,7 +10,8 @@ represent a full cell. \cgalRefines{TriangulationDSFullCell We only list below the additional specific requirements of `TriangulationFullCell`} -\cgalHasModelsBegin CGAL::Triangulation_full_cell +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `CGAL::Triangulation_full_cell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h index 3d004b52c28..198e3a73650 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h @@ -14,8 +14,9 @@ traits must refine `SpatialSortingTraits_d`. The insertion is then optimized using spatial sorting. This is not required if the points are inserted one by one. -\cgalHasModelsBegin CGAL::Epick_d -\cgalHasModels CGAL::Epeck_d +\cgalHasModelsBegin +\cgalModels{CGAL::Epick_d} +\cgalModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h index 956acd269f1..457339f28b0 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h @@ -12,7 +12,8 @@ We only list below the additional specific requirements of ::TriangulationVertex Compared to ::TriangulationDSVertex, the main difference is the addition of an association of the vertex with a geometric point. -\cgalHasModelsBegin CGAL::Triangulation_vertex +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \cgalHeading{Input/Output} diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h index bf4b52d43c4..cf9b15d466e 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedDelaunayTriangulationTraits_2.h @@ -17,9 +17,11 @@ The concept `ConstrainedDelaunayTriangulationTraits_2` refines both the concept \cgalRefines{DelaunayTriangulationTraits_2,ConstrainedTriangulationTraits_2} -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h index a5a98882faa..73951fc22c1 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h @@ -19,7 +19,8 @@ constraints. Defines the same types as the `TriangulationFaceBase_2` concept -\cgalHasModelsBegin CGAL::Constrained_triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Constrained_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h index 0af95612856..892053e3bac 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationTraits_2.h @@ -19,10 +19,12 @@ to compute the squared distance between a point and a line \cgalRefines{TriangulationTraits_2} -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_3 -\cgalHasModels CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Projection_traits_3} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd \sa `TriangulationTraits_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h index d223c281d3c..f76e24c327a 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/DelaunayTriangulationTraits_2.h @@ -22,12 +22,14 @@ required if the method `nearest_vertex()` is used. \cgalRefines{TriangulationTraits_2} -\cgalHasModelsBare{All models of the \cgal concept `Kernel`\n - `CGAL::Projection_traits_3` (not for dual Voronoi functions)\n - `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)\n - `CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)\n - `CGAL::Projection_traits_yz_3` (not for dual Voronoi functions)\n - `CGAL::Projection_traits_xz_3` (not for dual Voronoi functions)} +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsBare{`CGAL::Projection_traits_3` (not for dual Voronoi functions)} +\cgalHasModelsBare{`CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)} +\cgalHasModelsBare{`CGAL::Projection_traits_xy_3` (not for dual Voronoi functions)} +\cgalHasModelsBare{`CGAL::Projection_traits_yz_3` (not for dual Voronoi functions)} +\cgalHasModelsBare{`CGAL::Projection_traits_xz_3` (not for dual Voronoi functions)} +\cgalHasModelsEnd \sa `TriangulationTraits_2` */ diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h index 26c24a4e86b..4ec20557747 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h @@ -34,7 +34,8 @@ in the face a list to store hidden vertices. \cgalRefines{TriangulationFaceBase_2} -\cgalHasModelsBegin CGAL::Regular_triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h index e935587ab86..71dc4f72468 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationTraits_2.h @@ -18,7 +18,9 @@ of Delaunay triangulations. \cgalRefines{TriangulationTraits_2} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Regular_triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h index af73baa9681..feee66c0b11 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h @@ -35,7 +35,8 @@ vertex of the triangulation or a hidden vertex. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h index 17ee831ec0b..9a364975955 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h @@ -16,7 +16,8 @@ and only provided for symmetry with the vertex case. \cgalRefines{TriangulationDSFaceBase_2} -\cgalHasModelsBegin CGAL::Triangulation_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h index 497c1fadde7..83e3992d81c 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h @@ -14,7 +14,8 @@ next and previous level triangulations. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Triangulation_hierarchy_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_hierarchy_vertex_base_2} \cgalHasModelsEnd \sa `CGAL::Triangulation_hierarchy_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h index f158bbeea8d..0d810e92288 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationTraits_2.h @@ -12,10 +12,12 @@ provides the types of the geometric primitives used in the triangulation and some function object types for the required predicates on those primitives. -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} CGAL::Projection_traits_3 -\cgalHasModels CGAL::Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{CGAL::Projection_traits_3} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd \sa `CGAL::Triangulation_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h index c5e59974834..8cca35af421 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_2} -\cgalHasModelsBegin CGAL::Triangulation_vertex_base_with_info_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_vertex_base_with_info_2} \cgalHasModelsEnd */ diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h index 816e93b382a..9790b02cecc 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h @@ -15,7 +15,8 @@ the vertex base of a triangulation stores a point. \cgalRefines{TriangulationDSVertexBase_2} -\cgalHasModelsBegin CGAL::Triangulation_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h index 4df0ce0f752..b71b96cc439 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h @@ -11,8 +11,9 @@ in the cell an operator that computes its circumcenter. \cgalRefines{TriangulationCellBase_3} -\cgalHasModelsBegin CGAL::Delaunay_triangulation_cell_base_3 -\cgalHasModels CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_triangulation_cell_base_3} +\cgalModels{CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h index b727b6013c9..3493e4ef1fa 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h @@ -10,13 +10,14 @@ predicates and constructions on these objects. \cgalRefines{TriangulationTraits_3} -\cgalHasModelsBegin CGAL::Exact_predicates_inexact_constructions_kernel (recommended) -\cgalHasModels CGAL::Exact_predicates_exact_constructions_kernel (recommended for Voronoi) -\cgalHasModels CGAL::Filtered_kernel -\cgalHasModels CGAL::Cartesian -\cgalHasModels CGAL::Simple_cartesian -\cgalHasModels CGAL::Homogeneous -\cgalHasModels CGAL::Simple_homogeneous +\cgalHasModelsBegin +\cgalModels{CGAL::Exact_predicates_inexact_constructions_kernel (recommended)} +\cgalModels{CGAL::Exact_predicates_exact_constructions_kernel (recommended for Voronoi)} +\cgalModels{CGAL::Filtered_kernel} +\cgalModels{CGAL::Cartesian} +\cgalModels{CGAL::Simple_cartesian} +\cgalModels{CGAL::Homogeneous} +\cgalModels{CGAL::Simple_homogeneous} \cgalHasModelsEnd In addition to the requirements described for the traits class of diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h index 9c776448106..cd00268b2b9 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h @@ -19,7 +19,8 @@ circumcenter by calling `invalidate_weighted_circumcenter_cache()`. \cgalRefines{RegularTriangulationCellBase_3} -\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3} \cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h index b7362aca63f..b95816da296 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h @@ -35,7 +35,8 @@ and an operator to compute its weighted circumcenter. \cgalRefines{TriangulationCellBase_3} -\cgalHasModelsBegin CGAL::Regular_triangulation_cell_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_cell_base_3} \cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h index 41cd3c59fbc..cea91c4d670 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationTraits_3.h @@ -15,7 +15,9 @@ or the weighted point \f$ {p}^{(w)}=(p,w_p)\f$. \cgalRefines{TriangulationTraits_3} +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Regular_triangulation_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h index aa5da85428d..09d9ce0a0fc 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h @@ -9,7 +9,8 @@ by adding a geometric point member. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModelsBegin CGAL::Regular_triangulation_vertex_base_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Regular_triangulation_vertex_base_3} \cgalHasModelsEnd \sa `RegularTriangulationCellBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h index 4efba49955a..84add9f98c9 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationCellBase_3} -\cgalHasModelsBegin CGAL::Triangulation_cell_base_with_info_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_cell_base_with_info_3} \cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h index 419ba6c4417..8b26efc32c4 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h @@ -10,8 +10,9 @@ structure apply. \cgalRefines{TriangulationDSCellBase_3} -\cgalHasModelsBegin CGAL::Triangulation_cell_base_3 -\cgalHasModels CGAL::Triangulation_cell_base_with_info_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_cell_base_3} +\cgalModels{CGAL::Triangulation_cell_base_with_info_3} \cgalHasModelsEnd \sa `TriangulationVertexBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h index 96a428da050..99f5fda1753 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationTraits_3.h @@ -11,7 +11,9 @@ triangles and tetrahedra) forming the triangulation together with a few geometric predicates and constructions on these objects: lexicographical comparison, orientation in case of coplanar points and orientation in space. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd \sa `CGAL::Triangulation_3` */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h index 2801c458013..37e2fd97140 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h @@ -8,7 +8,8 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_3} -\cgalHasModelsBegin CGAL::Triangulation_vertex_base_with_info_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_vertex_base_with_info_3} \cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h index 75d23eb5581..5110b87d71f 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h @@ -9,8 +9,9 @@ for the triangulation data structure. \cgalRefines{TriangulationDSVertexBase_3} -\cgalHasModelsBegin CGAL::Triangulation_vertex_base_3 -\cgalHasModels CGAL::Triangulation_vertex_base_with_info_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_vertex_base_3} +\cgalModels{CGAL::Triangulation_vertex_base_with_info_3} \cgalHasModelsEnd \sa `TriangulationCellBase_3` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h index d73727aaabc..df1da8edad5 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h @@ -11,8 +11,9 @@ parameter of the class `CGAL::Delaunay_triangulation_on_sphere_2`. To the requirements listed within the concept `TriangulationOnSphereTraits_2`, this concept adds types and functors requirements related to build the dual on the sphere. -\cgalHasModelsBegin CGAL::Delaunay_triangulation_on_sphere_traits_2 -\cgalHasModels CGAL::Projection_on_sphere_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} +\cgalModels{CGAL::Projection_on_sphere_traits_3} \cgalHasModelsEnd */ class DelaunayTriangulationOnSphereTraits_2 diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h index 0d1fe175810..5e49109a4da 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h @@ -19,7 +19,8 @@ then the triangulation is not an orientable triangulated surface without boundar In this case, fictitious faces are added to the triangulation, called ghost faces, such that the triangulation is a topological sphere. -\cgalHasModelsBegin CGAL::Triangulation_on_sphere_face_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_on_sphere_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h index 4ccf99b9a26..ea94dfc395c 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h @@ -13,8 +13,9 @@ triangulation and the function object types for the required predicates on those In particular, the traits class is expected to contain information about the sphere (center and radius) on which the points of the triangulation lie, as well as to provide means to change this information. -\cgalHasModelsBegin CGAL::Delaunay_triangulation_on_sphere_traits_2 -\cgalHasModels CGAL::Projection_on_sphere_traits_3 +\cgalHasModelsBegin +\cgalModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} +\cgalModels{CGAL::Projection_on_sphere_traits_3} \cgalHasModelsEnd \sa `DelaunayTriangulationOnSphereTraits_2` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h index 7701fde798b..23f0fbce9e0 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h @@ -9,7 +9,8 @@ of a triangulation data structure to be plugged in a triangulation on the sphere It refines the concept `TriangulationDSVertexBase_2`, adding geometric information: the vertex base of a triangulation stores a point. -\cgalHasModelsBegin CGAL::Triangulation_on_sphere_vertex_base_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Triangulation_on_sphere_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h index 3d656b13a16..a39c04b2179 100644 --- a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h +++ b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h @@ -6,9 +6,10 @@ A model of the `Visibility_2` concept can be attached to an `Arrangement_2` instance to answer visibility queries within the faces of this arrangement. -\cgalHasModelsBegin CGAL::Simple_polygon_visibility_2 -\cgalHasModels CGAL::Rotational_sweep_visibility_2 -\cgalHasModels CGAL::Triangular_expansion_visibility_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Simple_polygon_visibility_2} +\cgalModels{CGAL::Rotational_sweep_visibility_2} +\cgalModels{CGAL::Triangular_expansion_visibility_2} \cgalHasModelsEnd */ diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h index 916a678290f..bec40a64a9f 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h @@ -13,15 +13,16 @@ graph they take as an argument, the last ones does. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Identity_policy_2 -\cgalHasModels CGAL::Apollonius_graph_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Delaunay_triangulation_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Regular_triangulation_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Identity_policy_2} +\cgalModels{CGAL::Apollonius_graph_degeneracy_removal_policy_2} +\cgalModels{CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2} +\cgalModels{CGAL::Delaunay_triangulation_degeneracy_removal_policy_2} +\cgalModels{CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2} +\cgalModels{CGAL::Regular_triangulation_degeneracy_removal_policy_2} +\cgalModels{CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2} +\cgalModels{CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2} +\cgalModels{CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2} \cgalHasModelsEnd \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h index 941a0b9dfbe..452c25d3e02 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h @@ -11,10 +11,11 @@ tag is provided for determining whether this functor is defined or not. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} -\cgalHasModelsBegin CGAL::Apollonius_graph_adaptation_traits_2 -\cgalHasModels CGAL::Delaunay_triangulation_adaptation_traits_2 -\cgalHasModels CGAL::Regular_triangulation_adaptation_traits_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_adaptation_traits_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Apollonius_graph_adaptation_traits_2} +\cgalModels{CGAL::Delaunay_triangulation_adaptation_traits_2} +\cgalModels{CGAL::Regular_triangulation_adaptation_traits_2} +\cgalModels{CGAL::Segment_Delaunay_graph_adaptation_traits_2} \cgalHasModelsEnd \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h index 01749c2be48..2c302fd96a9 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/DelaunayGraph_2.h @@ -18,12 +18,14 @@ iterators and circulators that allow to traverse it (completely or partially). All iterators and circulators must be convertible to the corresponding handles. -\cgalHasModelsBareBegin{ `CGAL::Triangulation_hierarchy_2` provided that `Tr` is a model of `DelaunayGraph_2`} CGAL::Delaunay_triangulation_2 -\cgalHasModels CGAL::Regular_triangulation_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_2 -\cgalHasModels CGAL::Segment_Delaunay_graph_hierarchy_2 -\cgalHasModels CGAL::Apollonius_graph_2 -\cgalHasModels CGAL::Apollonius_graph_hierarchy_2 +\cgalHasModelsBegin +\cgalHasModelsBare{ `CGAL::Triangulation_hierarchy_2` provided that `Tr` is a model of `DelaunayGraph_2`} +\cgalHasModels{CGAL::Delaunay_triangulation_2} +\cgalHasModels{CGAL::Regular_triangulation_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_hierarchy_2} +\cgalHasModels{CGAL::Apollonius_graph_2} +\cgalHasModels{CGAL::Apollonius_graph_hierarchy_2} \cgalHasModelsEnd \sa `AdaptationTraits_2` diff --git a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h index a6f6793d19c..1bbfda65f44 100644 --- a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h +++ b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_2.h @@ -5,9 +5,11 @@ A concept that describes the set of requirements of classes used in the computation of analytic weights in 2D. -\cgalHasModelsBareBegin{All models of the \cgal concept `Kernel`} sCGAL:Projection_traits_xy_3 -\cgalHasModels CGAL::Projection_traits_yz_3 -\cgalHasModels CGAL::Projection_traits_xz_3 +\cgalHasModelsBegin +\cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModels{sCGAL:Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd */ class AnalyticWeightTraits_2 { diff --git a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h index 5aab656b612..488c87558c0 100644 --- a/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h +++ b/Weights/doc/Weights/Concepts/AnalyticWeightTraits_3.h @@ -5,7 +5,9 @@ A concept that describes the set of requirements of classes used in the computation of analytic weights in 3D. +\cgalHasModelsBegin \cgalHasModelsBare{All models of the \cgal concept `Kernel`} +\cgalHasModelsEnd */ class AnalyticWeightTraits_3 { diff --git a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h index 95d700e8e51..76104f35929 100644 --- a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h +++ b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h @@ -5,9 +5,10 @@ A concept that describes the set of methods required in all classes used in the computation of 2D generalized barycentric weights. -\cgalHasModelsBegin CGAL::Weights::Wachspress_weights_2 -\cgalHasModels CGAL::Weights::Mean_value_weights_2 -\cgalHasModels CGAL::Weights::Discrete_harmonic_weights_2 +\cgalHasModelsBegin +\cgalModels{CGAL::Weights::Wachspress_weights_2} +\cgalModels{CGAL::Weights::Mean_value_weights_2} +\cgalModels{CGAL::Weights::Discrete_harmonic_weights_2} \cgalHasModelsEnd */ class BarycentricWeights_2 { From 894b2e2f9286e4cd04be41db40aeb9007c427eb2 Mon Sep 17 00:00:00 2001 From: albert-github Date: Sat, 15 Jul 2023 13:20:03 +0200 Subject: [PATCH 11/94] issue #7395 Improvement of layout of model relations Correcting permissions --- Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h | 0 Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h mode change 100755 => 100644 Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h diff --git a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h old mode 100755 new mode 100644 diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h old mode 100755 new mode 100644 From 178d063536b0128e09d593ae3c4b0f6c581de642 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Tue, 18 Jul 2023 11:46:42 +0200 Subject: [PATCH 12/94] Improve the doc of Face_filtered_graph: patch IDs can be more than size_t --- BGL/include/CGAL/boost/graph/Face_filtered_graph.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h index 28afe86c27a..ffb41b041dd 100644 --- a/BGL/include/CGAL/boost/graph/Face_filtered_graph.h +++ b/BGL/include/CGAL/boost/graph/Face_filtered_graph.h @@ -49,9 +49,11 @@ namespace CGAL { * the adapted graph must define a manifold mesh. In order to check that this condition is verified, you can * use the function `is_selection_valid()`. * - * There are two different ways to initialize this class. You can directly provide the set of faces selected, or - * if you have a face patch map, select the patches of faces. The latter option is convenient if you want to access - * some connected components of a graph after having called `CGAL::Polygon_mesh_processing::connected_components()`. + * There are two different ways to initialize this class: you can directly provide a set of selected faces, + * or provide a set of patch identifiers as well as a map between faces and patch identifiers. + * The latter option is convenient if you want to access some connected components of a graph + * after having called `CGAL::Polygon_mesh_processing::connected_components()`, or if you want + * to select only faces of a given color, for example. * * The documented interface of this class is limited on purpose and free functions of the concept * this class is a model of must be used to manipulate it. From ad41766454cf5c72ea9e3cbfb9063b4d4384b827 Mon Sep 17 00:00:00 2001 From: albert-github Date: Tue, 18 Jul 2023 13:23:37 +0200 Subject: [PATCH 13/94] issue #7395 Improvement of layout of model relations Corrected `cgalModels` to `cgalHasModes` inside `cgalHasNodelsBegin` / `cgalHasModelsEnd` --- .../doc/AABB_tree/Concepts/AABBPrimitive.h | 10 ++-- .../Concepts/AABBPrimitiveWithSharedData.h | 6 +- .../Concepts/AABBRayIntersectionTraits.h | 2 +- AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h | 2 +- .../Concepts/AlgebraicStructureTraits.h | 2 +- .../Concepts/FieldNumberType.h | 20 +++---- .../Concepts/FractionTraits.h | 2 +- .../Concepts/FromIntConstructible.h | 6 +- .../Concepts/RealEmbeddableTraits.h | 2 +- .../Concepts/AlgebraicKernel_d_1.h | 4 +- .../Concepts/AlphaShapeFace_2.h | 2 +- .../Alpha_wrap_3/Concepts/AlphaWrapOracle.h | 8 +-- .../Concepts/ApolloniusGraphDataStructure_2.h | 2 +- .../ApolloniusGraphHierarchyVertexBase_2.h | 2 +- .../Concepts/ApolloniusGraphTraits_2.h | 4 +- .../Concepts/ApolloniusGraphVertexBase_2.h | 2 +- .../Concepts/ArrTraits--Approximate_2.h | 2 +- .../Concepts/ArrTraits--AreMergeable_2.h | 2 +- .../ArrTraits--CompareXNearBoundary_2.h | 2 +- ...rrTraits--CompareXOnBoundaryOfCurveEnd_2.h | 6 +- .../ArrTraits--CompareXOnBoundary_2.h | 6 +- .../Concepts/ArrTraits--CompareX_2.h | 2 +- .../Concepts/ArrTraits--CompareXy_2.h | 2 +- .../Concepts/ArrTraits--CompareYAtXLeft_2.h | 2 +- .../Concepts/ArrTraits--CompareYAtXRight_2.h | 2 +- .../Concepts/ArrTraits--CompareYAtX_2.h | 2 +- .../ArrTraits--CompareYNearBoundary_2.h | 2 +- .../ArrTraits--CompareYOnBoundary_2.h | 8 +-- .../Concepts/ArrTraits--ConstructCurve_2.h | 2 +- .../ArrTraits--ConstructMaxVertex_2.h | 2 +- .../ArrTraits--ConstructMinVertex_2.h | 2 +- .../ArrTraits--ConstructXMonotoneCurve_2.h | 2 +- .../Concepts/ArrTraits--Curve_2.h | 2 +- .../Concepts/ArrTraits--Equal_2.h | 2 +- .../Concepts/ArrTraits--Intersect_2.h | 2 +- .../ArrTraits--IsOnXIdentification_2.h | 2 +- .../ArrTraits--IsOnYIdentification_2.h | 2 +- .../Concepts/ArrTraits--IsVertical_2.h | 2 +- .../Concepts/ArrTraits--MakeXMonotone_2.h | 2 +- .../Concepts/ArrTraits--Merge_2.h | 2 +- .../Concepts/ArrTraits--ParameterSpaceInX_2.h | 6 +- .../Concepts/ArrTraits--ParameterSpaceInY_2.h | 6 +- .../Concepts/ArrTraits--Point_2.h | 2 +- .../Concepts/ArrTraits--Split_2.h | 2 +- .../Concepts/ArrTraits--XMonotoneCurve_2.h | 2 +- .../Concepts/ArrangementApproximateTraits_2.h | 16 ++--- .../Concepts/ArrangementBasicTopologyTraits.h | 2 +- .../Concepts/ArrangementBasicTraits_2.h | 30 +++++----- .../ArrangementConstructCurveTraits_2.h | 14 ++--- ...rangementConstructXMonotoneCurveTraits_2.h | 14 ++--- .../Concepts/ArrangementDcel.h | 8 +-- .../Concepts/ArrangementDcelWithRebind.h | 6 +- .../ArrangementHorizontalSideTraits_2.h | 8 +-- .../Concepts/ArrangementInputFormatter.h | 6 +- .../Concepts/ArrangementLandmarkTraits_2.h | 16 ++--- .../ArrangementOpenBoundaryTraits_2.h | 10 ++-- .../Concepts/ArrangementOutputFormatter.h | 6 +- .../Concepts/ArrangementPointLocation_2.h | 8 +-- .../ArrangementSphericalBoundaryTraits_2.h | 2 +- .../Concepts/ArrangementTopologyTraits.h | 6 +- .../Concepts/ArrangementTraits_2.h | 28 ++++----- .../Concepts/ArrangementVerticalRayShoot_2.h | 8 +-- .../ArrangementVerticalSideTraits_2.h | 8 +-- .../ArrangementWithHistoryInputFormatter.h | 2 +- .../ArrangementWithHistoryOutputFormatter.h | 2 +- .../Concepts/ArrangementXMonotoneTraits_2.h | 28 ++++----- .../Concepts/OverlayTraits.h | 4 +- .../Concepts/BarycentricCoordinates_2.h | 6 +- .../Concepts/DiscretizedDomain_2.h | 2 +- .../ArrDirectionalTraits--AreMergeable_2.h | 2 +- ...rDirectionalTraits--CompareEndpointsXy_2.h | 2 +- ...rrDirectionalTraits--ConstructOpposite_2.h | 2 +- .../ArrDirectionalTraits--Intersect_2.h | 2 +- .../Concepts/ArrDirectionalTraits--Merge_2.h | 2 +- .../Concepts/ArrDirectionalTraits--Split_2.h | 2 +- .../ArrangementDirectionalXMonotoneTraits_2.h | 14 ++--- .../Concepts/GeneralPolygonSetDcel.h | 2 +- .../Concepts/GeneralPolygonSetDcelFace.h | 2 +- .../Concepts/GeneralPolygonSetDcelHalfedge.h | 2 +- .../Concepts/GeneralPolygonSetTraits_2.h | 6 +- .../Concepts/GeneralPolygon_2.h | 2 +- .../GpsTraitsGeneralPolygonWithHoles_2.h | 2 +- .../Concepts/GpsTraitsGeneralPolygon_2.h | 4 +- .../ApproximateMinEllipsoid_d_Traits_d.h | 6 +- .../Concepts/MinCircle2Traits.h | 2 +- .../Concepts/MinEllipse2Traits.h | 2 +- .../Concepts/MinQuadrilateralTraits_2.h | 2 +- .../Concepts/MinSphereAnnulusDTraits.h | 6 +- .../Concepts/MinSphereOfSpheresTraits.h | 12 ++-- .../Concepts/RectangularPCenterTraits_2.h | 2 +- .../Concepts/BoxIntersectionBox_d.h | 4 +- .../Concepts/BoxIntersectionTraits_d.h | 2 +- ...rnelForCircles--PolynomialForCircles_2_2.h | 2 +- ...lgebraicKernelForCircles--Polynomial_1_2.h | 2 +- ...raicKernelForCircles--RootForCircles_2_2.h | 2 +- .../Concepts/AlgebraicKernelForCircles.h | 2 +- .../CircularKernel--CircularArcPoint_2.h | 2 +- .../Concepts/CircularKernel--CircularArc_2.h | 2 +- .../Concepts/CircularKernel--LineArc_2.h | 2 +- .../Concepts/CircularKernel.h | 4 +- ...rnelForSpheres--PolynomialForSpheres_2_3.h | 2 +- ...lgebraicKernelForSpheres--Polynomial_1_3.h | 2 +- ...cKernelForSpheres--PolynomialsForLines_3.h | 2 +- ...raicKernelForSpheres--RootForSpheres_2_3.h | 2 +- .../Concepts/AlgebraicKernelForSpheres.h | 2 +- .../SphericalKernel--CircularArcPoint_3.h | 2 +- .../Concepts/SphericalKernel--CircularArc_3.h | 2 +- .../Concepts/SphericalKernel--LineArc_3.h | 2 +- .../Concepts/SphericalKernel.h | 4 +- .../doc/Circulator/Concepts/ConstHandle.h | 2 +- Circulator/doc/Circulator/Concepts/Handle.h | 8 +-- .../doc/Classification/Concepts/Classifier.h | 6 +- .../Classification/Concepts/NeighborQuery.h | 8 +-- .../Concepts/ConvexHullTraits_2.h | 12 ++-- .../Concepts/ConvexHullTraits_3.h | 4 +- .../Concepts/ConvexHullTraits_d.h | 6 +- .../Concepts/DelaunayLiftedTraits_d.h | 4 +- .../Convex_hull_d/Concepts/DelaunayTraits_d.h | 4 +- .../Envelope_3/Concepts/EnvelopeTraits_3.h | 8 +-- .../doc/Generator/Concepts/PointGenerator.h | 28 ++++----- .../Concepts/RandomConvexSetTraits_2.h | 2 +- .../doc/HalfedgeDS/Concepts/HalfedgeDS.h | 6 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSFace.h | 4 +- .../HalfedgeDS/Concepts/HalfedgeDSHalfedge.h | 4 +- .../doc/HalfedgeDS/Concepts/HalfedgeDSItems.h | 6 +- .../HalfedgeDS/Concepts/HalfedgeDSVertex.h | 4 +- .../HyperbolicDelaunayTriangulationTraits_2.h | 4 +- .../HyperbolicTriangulationFaceBase_2.h | 2 +- .../Concepts/ExtremalPolygonTraits_2.h | 4 +- .../LargestEmptyIsoRectangleTraits_2.h | 4 +- .../Concepts/GradientFittingTraits.h | 2 +- .../Concepts/InterpolationTraits.h | 4 +- .../Interval_skip_list/Concepts/Interval.h | 4 +- .../doc/Jet_fitting_3/Concepts/DataKernel.h | 4 +- .../doc/Jet_fitting_3/Concepts/LocalKernel.h | 4 +- .../doc/Kernel_23/Concepts/GeomObjects.h | 60 +++++++++++-------- Kernel_23/doc/Kernel_23/Concepts/Kernel.h | 16 ++--- .../Kernel_d/Concepts/KernelWithLifting_d.h | 4 +- Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h | 8 +-- .../Kernel_d/Concepts/LinearAlgebraTraits_d.h | 4 +- .../Concepts/LinearCellComplexItems.h | 2 +- .../doc/Matrix_search/Concepts/BasicMatrix.h | 2 +- .../Concepts/MonotoneMatrixSearchTraits.h | 2 +- .../Concepts/SortedMatrixSearchTraits.h | 2 +- .../Mesh_2/Concepts/DelaunayMeshFaceBase_2.h | 2 +- .../Concepts/DelaunayMeshVertexBase_2.h | 2 +- .../doc/Mesh_2/Concepts/MeshingCriteria_2.h | 4 +- Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h | 4 +- .../doc/Mesh_3/Concepts/MeshCellCriteria_3.h | 2 +- .../Concepts/MeshCriteriaWithFeatures_3.h | 2 +- Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h | 2 +- .../doc/Mesh_3/Concepts/MeshDomainField_3.h | 2 +- .../Concepts/MeshDomainWithFeatures_3.h | 4 +- Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h | 4 +- .../doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h | 2 +- .../doc/Mesh_3/Concepts/MeshFacetCriteria_3.h | 2 +- Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h | 2 +- .../doc/Mesh_3/Concepts/TriangleAccessor_3.h | 2 +- .../Concepts/PolygonConvexDecomposition_2.h | 10 ++-- .../PolygonWithHolesConvexDecomposition_2.h | 4 +- .../Miscellany/Concepts/UniqueHashFunction.h | 2 +- .../Concepts/ModularTraits.h | 2 +- .../Concepts/Modularizable.h | 18 +++--- .../Nef_2/Concepts/ExtendedKernelTraits_2.h | 6 +- .../Concepts/OrientedBoundingBoxTraits.h | 2 +- .../doc/Orthtree/Concepts/OrthtreeTraits.h | 6 +- .../doc/Orthtree/Concepts/OrthtreeTraversal.h | 8 +-- .../Concepts/ConvexPartitionIsValidTraits_2.h | 2 +- .../Concepts/IsYMonotoneTraits_2.h | 4 +- .../Concepts/OptimalConvexPartitionTraits_2.h | 2 +- .../Concepts/PartitionIsValidTraits_2.h | 2 +- .../Partition_2/Concepts/PartitionTraits_2.h | 2 +- .../doc/Partition_2/Concepts/PolygonIsValid.h | 4 +- .../YMonotonePartitionIsValidTraits_2.h | 2 +- .../Periodic_2DelaunayTriangulationTraits_2.h | 2 +- .../Concepts/Periodic_2Offset_2.h | 2 +- .../Periodic_2TriangulationFaceBase_2.h | 2 +- .../Periodic_2TriangulationTraits_2.h | 2 +- .../Periodic_2TriangulationVertexBase_2.h | 2 +- .../Periodic_3MeshDomainWithFeatures_3.h | 2 +- .../Concepts/Periodic_3MeshDomain_3.h | 2 +- .../Periodic_3DelaunayTriangulationTraits_3.h | 2 +- .../Concepts/Periodic_3Offset_3.h | 2 +- ...riodic_3RegularTriangulationDSCellBase_3.h | 4 +- ...odic_3RegularTriangulationDSVertexBase_3.h | 2 +- .../Periodic_3RegularTriangulationTraits_3.h | 2 +- .../Periodic_3TriangulationDSCellBase_3.h | 2 +- .../Periodic_3TriangulationDSVertexBase_3.h | 2 +- .../Periodic_3TriangulationTraits_3.h | 2 +- ...4HyperbolicDelaunayTriangulationTraits_2.h | 2 +- ...iodic_4HyperbolicTriangulationFaceBase_2.h | 2 +- ...dic_4HyperbolicTriangulationVertexBase_2.h | 2 +- .../Concepts/GeneralPolygonWithHoles_2.h | 4 +- .../Concepts/PMPCorefinementVisitor.h | 2 +- .../Concepts/PMPHolefillingVisitor.h | 2 +- .../PMPPolygonSoupOrientationVisitor.h | 2 +- .../Concepts/PMPTriangulateFaceVisitor.h | 2 +- .../Polyhedron/Concepts/PolyhedronItems_3.h | 6 +- .../PolylineSimplificationCostFunction.h | 6 +- .../PolylineSimplificationStopPredicate.h | 6 +- .../PolylineSimplificationVertexBase_2.h | 2 +- .../Polynomial/Concepts/PolynomialTraits_d.h | 2 +- .../doc/Polynomial/Concepts/Polynomial_d.h | 2 +- .../Concepts/AllFurthestNeighborsTraits_2.h | 8 +-- .../Concepts/PolytopeDistanceDTraits.h | 6 +- .../Concepts/WidthTraits_3.h | 2 +- .../doc/QP_solver/Concepts/LinearProgram.h | 6 +- .../Concepts/NonnegativeLinearProgram.h | 12 ++-- .../Concepts/NonnegativeQuadraticProgram.h | 6 +- .../doc/QP_solver/Concepts/QuadraticProgram.h | 6 +- ...shComplexWithFeatures_3InTriangulation_3.h | 2 +- .../Concepts/MeshComplex_3InTriangulation_3.h | 2 +- .../Concepts/SimplicialMeshCellBase_3.h | 8 +-- .../Concepts/SimplicialMeshVertexBase_3.h | 6 +- .../doc/STL_Extension/Concepts/Descriptor.h | 4 +- .../doc/STL_Extension/Concepts/Index.h | 4 +- .../STL_Extension/Concepts/ProjectionObject.h | 26 ++++---- .../Concepts/SurjectiveLockDataStructure.h | 2 +- .../Concepts/ScaleSpaceMesher.h | 4 +- .../Concepts/ScaleSpaceSmoother.h | 4 +- .../Concepts/RangeSegmentTreeTraits_k.h | 12 ++-- .../SegmentDelaunayGraphDataStructure_2.h | 2 +- .../Concepts/SegmentDelaunayGraphFaceBase_2.h | 2 +- ...egmentDelaunayGraphHierarchyVertexBase_2.h | 2 +- .../Concepts/SegmentDelaunayGraphSite_2.h | 2 +- .../SegmentDelaunayGraphStorageSite_2.h | 2 +- .../SegmentDelaunayGraphStorageTraits_2.h | 2 +- .../Concepts/SegmentDelaunayGraphTraits_2.h | 8 +-- .../SegmentDelaunayGraphVertexBase_2.h | 2 +- .../SegmentDelaunayGraphLinfTraits_2.h | 8 +-- .../Concepts/EfficientRANSACTraits.h | 2 +- .../Shape_detection/Concepts/NeighborQuery.h | 8 +-- .../doc/Shape_detection/Concepts/RegionType.h | 14 ++--- .../Concepts/ContourDirections.h | 6 +- .../Concepts/NeighborQuery.h | 2 +- .../Concepts/RegularizationType.h | 4 +- .../Concepts/SkinSurfaceTraits_3.h | 2 +- .../Skin_surface_3/Concepts/SkinSurface_3.h | 4 +- .../Concepts/SnapRoundingTraits_2.h | 2 +- .../Concepts/DiagonalizeTraits.h | 2 +- .../Concepts/MixedIntegerProgramTraits.h | 12 ++-- ...ormalEquationSparseLinearAlgebraTraits_d.h | 2 +- .../Concepts/QuadraticProgramTraits.h | 2 +- .../Concepts/SparseLinearAlgebraTraits_d.h | 8 +-- .../SparseLinearAlgebraWithFactorTraits_d.h | 2 +- .../doc/Solver_interface/Concepts/SvdTraits.h | 6 +- .../Concepts/GeneralDistance.h | 4 +- .../Concepts/OrthogonalDistance.h | 4 +- .../Concepts/RangeSearchTraits.h | 12 ++-- .../Spatial_searching/Concepts/SearchTraits.h | 16 ++--- .../Concepts/SpatialSeparator.h | 2 +- .../Spatial_searching/Concepts/SpatialTree.h | 2 +- .../doc/Spatial_searching/Concepts/Splitter.h | 14 ++--- .../Concepts/PolygonOffsetBuilderTraits_2.h | 2 +- .../StraightSkeletonBuilderTraits_2.h | 2 +- .../StraightSkeletonBuilder_2_Visitor.h | 2 +- .../Concepts/StraightSkeletonFace_2.h | 2 +- .../Concepts/StraightSkeletonHalfedge_2.h | 2 +- .../StraightSkeletonItemsConverter_2.h | 2 +- .../Concepts/StraightSkeletonVertex_2.h | 2 +- .../Concepts/StraightSkeleton_2.h | 2 +- .../Stream_lines_2/Concepts/Integrator_2.h | 4 +- .../Stream_lines_2/Concepts/VectorField_2.h | 4 +- .../Subdivision_method_3/Concepts/DQQMask_3.h | 2 +- .../Subdivision_method_3/Concepts/PQQMask_3.h | 2 +- .../Subdivision_method_3/Concepts/PTQMask_3.h | 2 +- .../Concepts/Sqrt3Mask_3.h | 2 +- .../Concepts/ErrorMetricProxy.h | 4 +- .../DeformationClosestRotationTraits_3.h | 4 +- .../Concepts/Parameterizer_3.h | 20 +++---- .../Concepts/SurfaceMeshShortestPathTraits.h | 2 +- .../Concepts/GetCost.h | 6 +- .../Concepts/GetPlacement.h | 10 ++-- .../Concepts/PlacementFilter.h | 4 +- .../Concepts/StopPredicate.h | 10 ++-- .../Concepts/SurfaceMeshCellBase_3.h | 4 +- .../SurfaceMeshComplex_2InTriangulation_3.h | 2 +- .../Concepts/SurfaceMeshFacetsCriteria_3.h | 2 +- .../Concepts/SurfaceMeshTraits_3.h | 2 +- .../Concepts/SurfaceMeshVertexBase_3.h | 4 +- .../doc/Surface_mesher/Concepts/Surface_3.h | 2 +- .../Concepts/TriangulationDSFaceBase_2.h | 2 +- .../Concepts/TriangulationDSVertexBase_2.h | 2 +- .../Concepts/TriangulationDataStructure_2.h | 6 +- .../Concepts/TriangulationDSCellBase_3.h | 2 +- .../Concepts/TriangulationDSVertexBase_3.h | 2 +- .../Concepts/TriangulationDataStructure_3.h | 2 +- .../Concepts/RemeshingCellBase_3.h | 2 +- .../Concepts/RemeshingVertexBase_3.h | 2 +- .../Concepts/DelaunayTriangulationTraits.h | 4 +- .../Concepts/RegularTriangulationTraits.h | 4 +- .../Concepts/TriangulationDSFace.h | 2 +- .../Concepts/TriangulationDSFullCell.h | 4 +- .../Concepts/TriangulationDSVertex.h | 4 +- .../Concepts/TriangulationDataStructure.h | 10 ++-- .../Concepts/TriangulationFullCell.h | 2 +- .../Concepts/TriangulationTraits.h | 4 +- .../Concepts/TriangulationVertex.h | 2 +- .../ConstrainedTriangulationFaceBase_2.h | 2 +- .../Concepts/RegularTriangulationFaceBase_2.h | 2 +- .../RegularTriangulationVertexBase_2.h | 2 +- .../Concepts/TriangulationFaceBase_2.h | 2 +- .../TriangulationHierarchyVertexBase_2.h | 2 +- .../TriangulationVertexBaseWithInfo_2.h | 2 +- .../Concepts/TriangulationVertexBase_2.h | 2 +- .../DelaunayTriangulationCellBase_3.h | 4 +- .../Concepts/DelaunayTriangulationTraits_3.h | 14 ++--- ...lationCellBaseWithWeightedCircumcenter_3.h | 2 +- .../Concepts/RegularTriangulationCellBase_3.h | 2 +- .../RegularTriangulationVertexBase_3.h | 2 +- .../TriangulationCellBaseWithInfo_3.h | 2 +- .../Concepts/TriangulationCellBase_3.h | 4 +- .../TriangulationVertexBaseWithInfo_3.h | 2 +- .../Concepts/TriangulationVertexBase_3.h | 4 +- .../DelaunayTriangulationOnSphereTraits_2.h | 4 +- .../TriangulationOnSphereFaceBase_2.h | 2 +- .../Concepts/TriangulationOnSphereTraits_2.h | 4 +- .../TriangulationOnSphereVertexBase_2.h | 2 +- .../doc/Visibility_2/Concepts/Visibility_2.h | 6 +- .../Concepts/AdaptationPolicy_2.h | 18 +++--- .../Concepts/AdaptationTraits_2.h | 8 +-- .../Weights/Concepts/BarycentricWeights_2.h | 6 +- 322 files changed, 754 insertions(+), 744 deletions(-) diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h index cee0dc90296..3abb0cf153b 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitive.h @@ -13,11 +13,11 @@ The concept `AABBPrimitive` describes the requirements for the primitives stored The `Primitive` type can be, e.g., a wrapper around a `Handle`. Assume for instance that the input objects are the triangle faces of a mesh stored as a `CGAL::Polyhedron_3`. The `Datum` would be a `Triangle_3` and the `Id` would be a polyhedron `Face_handle`. Method `datum()` can return either a `Triangle_3` constructed on the fly from the face handle or a `Triangle_3` stored internally. This provides a way for the user to trade memory for efficiency. \cgalHasModelsBegin -\cgalModels{CGAL::AABB_primitive} -\cgalModels{CGAL::AABB_segment_primitive} -\cgalModels{CGAL::AABB_triangle_primitive} -\cgalModels{CGAL::AABB_halfedge_graph_segment_primitive} -\cgalModels{CGAL::AABB_face_graph_triangle_primitive} +\cgalHasModels{CGAL::AABB_primitive} +\cgalHasModels{CGAL::AABB_segment_primitive} +\cgalHasModels{CGAL::AABB_triangle_primitive} +\cgalHasModels{CGAL::AABB_halfedge_graph_segment_primitive} +\cgalHasModels{CGAL::AABB_face_graph_triangle_primitive} \cgalHasModelsEnd */ diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h index 27f6805cbca..416cc785468 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBPrimitiveWithSharedData.h @@ -22,9 +22,9 @@ The `Datum` would be a `Triangle_3` and the `Id` a `std::size_t`. The shared dat The method `datum(const Shared_data&)` then returns a triangle from the vector. \cgalHasModelsBegin -\cgalModels{CGAL::AABB_primitive} -\cgalModels{CGAL::AABB_halfedge_graph_segment_primitive} -\cgalModels{CGAL::AABB_face_graph_triangle_primitive} +\cgalHasModels{CGAL::AABB_primitive} +\cgalHasModels{CGAL::AABB_halfedge_graph_segment_primitive} +\cgalHasModels{CGAL::AABB_face_graph_triangle_primitive} \cgalHasModelsEnd */ diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h index 1df2c9802b2..a372fc66524 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBRayIntersectionTraits.h @@ -8,7 +8,7 @@ The concept `AABBRayIntersectionTraits` is a refinement of the concept distance of an intersection along a ray. \cgalHasModelsBegin -\cgalModels{CGAL::AABB_traits} +\cgalHasModels{CGAL::AABB_traits} \cgalHasModelsEnd \sa `CGAL::AABB_tree` diff --git a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h index 5dfba2998c8..3b02a004439 100644 --- a/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h +++ b/AABB_tree/doc/AABB_tree/Concepts/AABBTraits.h @@ -6,7 +6,7 @@ The concept `AABBTraits` provides the geometric primitive types and methods for the class `CGAL::AABB_tree`. \cgalHasModelsBegin -\cgalModels{CGAL::AABB_traits} +\cgalHasModels{CGAL::AABB_traits} \cgalHasModelsEnd \cgalRefines{SearchGeomTraits_3} diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h index d21861c1c28..13c87daede5 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/AlgebraicStructureTraits.h @@ -29,7 +29,7 @@ algebraic operations within that structure. \sa `CGAL::Field_with_root_of_tag` \cgalHasModelsBegin -\cgalModels{CGAL::Algebraic_structure_traits} +\cgalHasModels{CGAL::Algebraic_structure_traits} \cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h index 5cd89e524e6..eeb128e81b6 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h @@ -10,16 +10,16 @@ for Cartesian kernels. \cgalRefines{Field,RealEmbeddable} \cgalHasModelsBegin -\cgalModels{float} -\cgalModels{double} -\cgalModels{CGAL::Gmpq} -\cgalModels{CGAL::Interval_nt} -\cgalModels{CGAL::Interval_nt_advanced} -\cgalModels{CGAL::Lazy_exact_nt} -\cgalModels{CGAL::Quotient} -\cgalModels{leda_rational} -\cgalModels{leda_bigfloat} -\cgalModels{leda_real} +\cgalHasModels{float} +\cgalHasModels{double} +\cgalHasModels{CGAL::Gmpq} +\cgalHasModels{CGAL::Interval_nt} +\cgalHasModels{CGAL::Interval_nt_advanced} +\cgalHasModels{CGAL::Lazy_exact_nt} +\cgalHasModels{CGAL::Quotient} +\cgalHasModels{leda_rational} +\cgalHasModels{leda_bigfloat} +\cgalHasModels{leda_real} \cgalHasModelsEnd \sa `RingNumberType` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h index f1248606d90..d4f0b88f916 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FractionTraits.h @@ -9,7 +9,7 @@ In case the associated type is a `Fraction`, a model of `FractionTraits` provide as the numerator and denominator type. \cgalHasModelsBegin -\cgalModels{CGAL::Fraction_traits} +\cgalHasModels{CGAL::Fraction_traits} \cgalHasModelsEnd \sa `FractionTraits_::Decompose` diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h index f31912ba5d8..779b96188a7 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FromIntConstructible.h @@ -7,9 +7,9 @@ A model of the concept `FromIntConstructible` is required to be constructible from int. \cgalHasModelsBegin -\cgalModels{int} -\cgalModels{long} -\cgalModels{double} +\cgalHasModels{int} +\cgalHasModels{long} +\cgalHasModels{double} \cgalHasModelsEnd */ diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h index 312eff6326f..4a40e131286 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RealEmbeddableTraits.h @@ -8,7 +8,7 @@ A model of `RealEmbeddableTraits` is associated to a number type to the concept `RealEmbeddable`. \cgalHasModelsBegin -\cgalModels{CGAL::Real_embeddable_traits} +\cgalHasModels{CGAL::Real_embeddable_traits} \cgalHasModelsEnd */ diff --git a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h index 4bc59c9e388..b895e7665b9 100644 --- a/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h +++ b/Algebraic_kernel_d/doc/Algebraic_kernel_d/Concepts/AlgebraicKernel_d_1.h @@ -9,8 +9,8 @@ algebraic functionalities on univariate polynomials of general degree \f$ d\f$. \cgalRefines{CopyConstructible,Assignable} \cgalHasModelsBegin -\cgalModels{CGAL::Algebraic_kernel_rs_gmpz_d_1} -\cgalModels{CGAL::Algebraic_kernel_rs_gmpq_d_1} +\cgalHasModels{CGAL::Algebraic_kernel_rs_gmpz_d_1} +\cgalHasModels{CGAL::Algebraic_kernel_rs_gmpq_d_1} \cgalHasModelsEnd \sa `AlgebraicKernel_d_2` diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h index 498eaed26d7..a3bcacd1fc2 100644 --- a/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h +++ b/Alpha_shapes_2/doc/Alpha_shapes_2/Concepts/AlphaShapeFace_2.h @@ -10,7 +10,7 @@ The concept `AlphaShapeFace_2` describes the requirements for the base face of a Periodic_2TriangulationFaceBase_2 if the underlying triangulation of the alpha shape is a periodic triangulation} \cgalHasModelsBegin -\cgalModels{CGAL::Alpha_shape_face_base_2 (templated with the appropriate triangulation face base class)} +\cgalHasModels{CGAL::Alpha_shape_face_base_2 (templated with the appropriate triangulation face base class)} \cgalHasModelsEnd */ diff --git a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h index bf8076c9794..49244706c9b 100644 --- a/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h +++ b/Alpha_wrap_3/doc/Alpha_wrap_3/Concepts/AlphaWrapOracle.h @@ -10,10 +10,10 @@ that answers a number of queries over the input of the algorithm. The oracle is the template parameter of the class `CGAL::Alpha_wraps_3_::Alpha_wrap_3`. \cgalHasModelsBegin -\cgalModels{CGAL::Alpha_wraps_3_::Point_set_oracle} -\cgalModels{CGAL::Alpha_wraps_3_::Segment_soup_oracle} -\cgalModels{CGAL::Alpha_wraps_3_::Triangle_mesh_oracle} -\cgalModels{CGAL::Alpha_wraps_3_::Triangle_soup_oracle} +\cgalHasModels{CGAL::Alpha_wraps_3_::Point_set_oracle} +\cgalHasModels{CGAL::Alpha_wraps_3_::Segment_soup_oracle} +\cgalHasModels{CGAL::Alpha_wraps_3_::Triangle_mesh_oracle} +\cgalHasModels{CGAL::Alpha_wraps_3_::Triangle_soup_oracle} \cgalHasModelsEnd */ diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h index 78e8ce69c6a..914bf0feedf 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphDataStructure_2.h @@ -28,7 +28,7 @@ We only describe the additional requirements with respect to the \cgalRefines{TriangulationDataStructure_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_data_structure_2} +\cgalHasModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h index 354d27f68bf..76d3320b2dd 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphHierarchyVertexBase_2.h @@ -20,7 +20,7 @@ next and previous level graphs. types in addition to those of `ApolloniusGraphVertexBase_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Apollonius_graph_hierarchy_vertex_base_2 >} +\cgalHasModels{CGAL::Apollonius_graph_hierarchy_vertex_base_2 >} \cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h index d62bc56484e..f14497d3ec6 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphTraits_2.h @@ -13,8 +13,8 @@ constructions for sites and several function object types for the predicates. \cgalHasModelsBegin -\cgalModels{CGAL::Apollonius_graph_traits_2} -\cgalModels{CGAL::Apollonius_graph_filtered_traits_2} +\cgalHasModels{CGAL::Apollonius_graph_traits_2} +\cgalHasModels{CGAL::Apollonius_graph_filtered_traits_2} \cgalHasModelsEnd \sa `CGAL::Apollonius_graph_2` diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h index 45e4bd35745..f6246b21112 100644 --- a/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h +++ b/Apollonius_graph_2/doc/Apollonius_graph_2/Concepts/ApolloniusGraphVertexBase_2.h @@ -13,7 +13,7 @@ sites. The container stores the hidden sites related to the vertex. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Apollonius_graph_vertex_base_2} +\cgalHasModels{CGAL::Apollonius_graph_vertex_base_2} \cgalHasModelsEnd \sa `ApolloniusGraphDataStructure_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h index 8b105f4dab9..3a43a08c1a2 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Approximate_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementApproximateTraits_2::Approximate_2} + * \cgalHasModels{ArrangementApproximateTraits_2::Approximate_2} * \cgalHasModelsEnd */ class Approximate_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h index a5c401dc85f..8c9f51309ab 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--AreMergeable_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementXMonotoneTraits_2::Are_mergeable_2} + * \cgalHasModels{ArrangementXMonotoneTraits_2::Are_mergeable_2} * \cgalHasModelsEnd */ class AreMergeable_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h index 0d85b1f0ae7..ad6f44f179a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXNearBoundary_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableTernaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_} + * \cgalHasModels{ArrangementOpenBoundaryTraits_2::Compare_x_near_boundary_} * \cgalHasModelsEnd */ class CompareXNearBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h index 8fccd130906..28208660fec 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundaryOfCurveEnd_2.h @@ -6,9 +6,9 @@ namespace ArrTraits { * \cgalRefines{AdaptableFunctor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2} - * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2} - * \cgalModels{ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementHorizontalSideTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementOpenBoundaryTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementSphericalBoundaryTraits_2::Compare_x_on_boundary_2} * \cgalHasModelsEnd */ class CompareXOnBoundaryOfCurveEnd_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h index 77eea00561d..af30ebbfb93 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXOnBoundary_2.h @@ -6,9 +6,9 @@ namespace ArrTraits { * \cgalRefines{AdaptableFunctor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2} - * \cgalModels{ArrangementClosedTopTraits_2::Compare_x_on_boundary_2} - * \cgalModels{ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementClosedBottomTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementClosedTopTraits_2::Compare_x_on_boundary_2} + * \cgalHasModels{ArrangementIdentifiedHorizontalTraits_2::Compare_x_on_boundary_2} * \cgalHasModelsEnd */ class CompareXOnBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h index 9e9e4fe45cd..466869d5a01 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareX_2.h @@ -5,7 +5,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Compare_x_2} + * \cgalHasModels{ArrangementBasicTraits_2::Compare_x_2} * \cgalHasModelsEnd */ class CompareX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h index 7e423c1d5cd..db282c6d238 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareXy_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Compare_xy_2} + * \cgalHasModels{ArrangementBasicTraits_2::Compare_xy_2} * \cgalHasModelsEnd */ class CompareXy_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h index 871add8868c..f49c04d0ec1 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXLeft_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableTernaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_left_2} + * \cgalHasModels{ArrangementBasicTraits_2::Compare_y_at_x_left_2} * \cgalHasModelsEnd */ class CompareYAtXLeft_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h index 4959f78d530..62fe93cdc3a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtXRight_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableTernaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_right_2} + * \cgalHasModels{ArrangementBasicTraits_2::Compare_y_at_x_right_2} * \cgalHasModelsEnd */ class CompareYAtXRight_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h index 55ae2fc00fa..bc8d1d81573 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYAtX_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Compare_y_at_x_2} + * \cgalHasModels{ArrangementBasicTraits_2::Compare_y_at_x_2} * \cgalHasModelsEnd */ class CompareYAtX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h index e2ab7e9cae9..cb11491e316 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYNearBoundary_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableTernaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2} + * \cgalHasModels{ArrangementOpenBoundaryTraits_2::Compare_y_near_boundary_2} * \cgalHasModelsEnd */ class CompareYNearBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h index 38a9090fd53..206458c178b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--CompareYOnBoundary_2.h @@ -6,10 +6,10 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2} - * \cgalModels{ArrangementClosedRightTraits_2::Compare_y_on_boundary_2} - * \cgalModels{ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2} - * \cgalModels{ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2} + * \cgalHasModels{ArrangementClosedLeftTraits_2::Compare_y_on_boundary_2} + * \cgalHasModels{ArrangementClosedRightTraits_2::Compare_y_on_boundary_2} + * \cgalHasModels{ArrangementIdentifiedVerticalTraits_2::Compare_y_on_boundary_2} + * \cgalHasModels{ArrangementSphericalBoundaryTraits_2::Compare_y_on_boundary_2} * \cgalHasModelsEnd */ class CompareYOnBoundary_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h index 75306891423..12a1109a33b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructCurve_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementConstructCurveTraits_2::Construct_curve_2} + * \cgalHasModels{ArrangementConstructCurveTraits_2::Construct_curve_2} * \cgalHasModelsEnd */ class ConstructCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h index 85b5f9a7fe2..85d379693bf 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMaxVertex_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableUnaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Construct_max_vertex_2} + * \cgalHasModels{ArrangementBasicTraits_2::Construct_max_vertex_2} * \cgalHasModelsEnd */ class ConstructMaxVertex_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h index a434876ac15..f9f8f3b99ac 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructMinVertex_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableUnaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Construct_min_vertex_2} + * \cgalHasModels{ArrangementBasicTraits_2::Construct_min_vertex_2} * \cgalHasModelsEnd */ class ConstructMinVertex_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h index 73a5a007b91..39c1e7b42e5 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ConstructXMonotoneCurve_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2} + * \cgalHasModels{ArrangementConstructXMonotoneCurveTraits_2::Construct_x_monotone_curve_2} * \cgalHasModelsEnd */ class ConstructXMonotoneCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h index 6ecf5245832..5268f489519 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Curve_2.h @@ -7,7 +7,7 @@ namespace ArrTraits { * * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * \cgalHasModelsBegin - * \cgalModels{ArrangementTraits_2::Curve_2} + * \cgalHasModels{ArrangementTraits_2::Curve_2} * \cgalHasModelsEnd */ class Curve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h index ca9e3d1a098..ed6d47ed592 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Equal_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Equal_2} + * \cgalHasModels{ArrangementBasicTraits_2::Equal_2} * \cgalHasModelsEnd */ class Equal_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h index df17bc89d08..feda290b2eb 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Intersect_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementXMonotoneTraits_2::Intersect_2} + * \cgalHasModels{ArrangementXMonotoneTraits_2::Intersect_2} * \cgalHasModelsEnd */ class Intersect_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h index 6ead4d30e3f..351ae415352 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnXIdentification_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableUnaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2} + * \cgalHasModels{ArrangementIdentifiedHorizontalTraits_2::Is_on_x_identification_2} * \cgalHasModelsEnd */ class IsOnXIdentification_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h index 9da39191b06..5ca8c772233 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsOnYIdentification_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableUnaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2} + * \cgalHasModels{ArrangementIdentifiedVerticalTraits_2::Is_on_y_identification_2} * \cgalHasModelsEnd */ class IsOnYIdentification_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h index 1df66d52a0b..e6894c911cf 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--IsVertical_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{AdaptableUnaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Is_vertical_2} + * \cgalHasModels{ArrangementBasicTraits_2::Is_vertical_2} * \cgalHasModelsEnd */ class IsVertical_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h index 2731e990a2f..f88d4200140 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--MakeXMonotone_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementTraits_2::Make_x_monotone_2} + * \cgalHasModels{ArrangementTraits_2::Make_x_monotone_2} * \cgalHasModelsEnd */ class MakeXMonotone_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h index b2ec195a148..0ff9c3ff392 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Merge_2.h @@ -6,7 +6,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementXMonotoneTraits_2::Merge_2} + * \cgalHasModels{ArrangementXMonotoneTraits_2::Merge_2} * \cgalHasModelsEnd */ class Merge_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h index 1973f4a5371..3f0c55da195 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInX_2.h @@ -6,9 +6,9 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementVerticalSideTraits_2::Parameter_space_in_x_2} - * \cgalModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2} - * \cgalModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2} + * \cgalHasModels{ArrangementVerticalSideTraits_2::Parameter_space_in_x_2} + * \cgalHasModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_x_2} + * \cgalHasModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_x_2} * \cgalHasModelsEnd */ class ParameterSpaceInX_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h index 19dae4f4cde..c598003b214 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--ParameterSpaceInY_2.h @@ -6,9 +6,9 @@ namespace ArrTraits { * \cgalRefines{AdaptableBinaryFunction} * * \cgalHasModelsBegin - * \cgalModels{ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2} - * \cgalModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2} - * \cgalModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2} + * \cgalHasModels{ArrangementHorizontalSideTraits_2::Parameter_space_in_y_2} + * \cgalHasModels{ArrangementOpenBoundaryTraits_2::Parameter_space_in_y_2} + * \cgalHasModels{ArrangementSphericalBoundaryTraits_2::Parameter_space_in_y_2} * \cgalHasModelsEnd */ class ParameterSpaceInY_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h index cc53c3b9467..337ccf35ae5 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Point_2.h @@ -8,7 +8,7 @@ namespace ArrTraits { * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::Point_2} + * \cgalHasModels{ArrangementBasicTraits_2::Point_2} * \cgalHasModelsEnd */ class Point_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h index 71519a41aea..68a833aa549 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--Split_2.h @@ -5,7 +5,7 @@ namespace ArrTraits { * \cgalRefines{Functor} * * \cgalHasModelsBegin - * \cgalModels{ArrangementXMonotoneTraits_2::Split_2} + * \cgalHasModels{ArrangementXMonotoneTraits_2::Split_2} * \cgalHasModelsEnd */ class Split_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h index cf004f92dd0..3b61bb2dca4 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrTraits--XMonotoneCurve_2.h @@ -7,7 +7,7 @@ namespace ArrTraits { * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * * \cgalHasModelsBegin - * \cgalModels{ArrangementBasicTraits_2::X_monotone_curve_2} + * \cgalHasModels{ArrangementBasicTraits_2::X_monotone_curve_2} * \cgalHasModelsEnd */ class XMonotoneCurve_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h index a6940b050c1..7dfd9a01f6b 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementApproximateTraits_2.h @@ -9,14 +9,14 @@ point. \cgalRefines{ArrangementBasicTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_conic_traits_2} -\cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} -\cgalModels{CGAL::Arr_linear_traits_2} -\cgalModels{CGAL::Arr_non_caching_segment_traits_2} -\cgalModels{CGAL::Arr_segment_traits_2} -\cgalModels{CGAL::Arr_polycurve_traits_2} -\cgalModels{CGAL::Arr_polyline_traits_2} -\cgalModels{CGAL::Arr_rational_function_traits_2} +\cgalHasModels{CGAL::Arr_conic_traits_2} +\cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} +\cgalHasModels{CGAL::Arr_linear_traits_2} +\cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalHasModels{CGAL::Arr_segment_traits_2} +\cgalHasModels{CGAL::Arr_polycurve_traits_2} +\cgalHasModels{CGAL::Arr_polyline_traits_2} +\cgalHasModels{CGAL::Arr_rational_function_traits_2} \cgalHasModelsEnd \sa `ArrangementConstructXMonotoneCurveTraits_2`, diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h index 6edbb7820d6..e30fada356a 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTopologyTraits.h @@ -10,7 +10,7 @@ * incident relations between them. * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_spherical_topology_traits_2} + * \cgalHasModels{CGAL::Arr_spherical_topology_traits_2} * \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h index 530aac71c9c..3771c0af1e0 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementBasicTraits_2.h @@ -28,21 +28,21 @@ * \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_segment_traits_2} - * \cgalModels{CGAL::Arr_non_caching_segment_basic_traits_2} - * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_polyline_traits_2} - * \cgalModels{CGAL::Arr_circle_segment_traits_2} - * \cgalModels{CGAL::Arr_line_arc_traits_2} - * \cgalModels{CGAL::Arr_circular_arc_traits_2} - * \cgalModels{CGAL::Arr_circular_line_arc_traits_2} - * \cgalModels{CGAL::Arr_conic_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} - * \cgalModels{CGAL::Arr_Bezier_curve_traits_2} - * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} - * \cgalModels{CGAL::Arr_curve_data_traits_2} - * \cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} + * \cgalHasModels{CGAL::Arr_segment_traits_2} + * \cgalHasModels{CGAL::Arr_non_caching_segment_basic_traits_2} + * \cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_polyline_traits_2} + * \cgalHasModels{CGAL::Arr_circle_segment_traits_2} + * \cgalHasModels{CGAL::Arr_line_arc_traits_2} + * \cgalHasModels{CGAL::Arr_circular_arc_traits_2} + * \cgalHasModels{CGAL::Arr_circular_line_arc_traits_2} + * \cgalHasModels{CGAL::Arr_conic_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_Bezier_curve_traits_2} + * \cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalHasModels{CGAL::Arr_curve_data_traits_2} + * \cgalHasModels{CGAL::Arr_consolidated_curve_data_traits_2} * \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h index c0f8193d057..570967c2932 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructCurveTraits_2.h @@ -8,13 +8,13 @@ * \cgalRefines{ArrangementTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_conic_traits_2} - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} - * \cgalModels{CGAL::Arr_segment_traits_2} - * \cgalModels{CGAL::Arr_polyline_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_conic_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalHasModels{CGAL::Arr_segment_traits_2} + * \cgalHasModels{CGAL::Arr_polyline_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementConstructXMonotoneCurveTraits_2`, and diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h index 7bfebe4906f..6d0a822280e 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementConstructXMonotoneCurveTraits_2.h @@ -8,13 +8,13 @@ * \cgalRefines{ArrangementBasicTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_conic_traits_2} - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} - * \cgalModels{CGAL::Arr_segment_traits_2} - * \cgalModels{CGAL::Arr_polyline_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_conic_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalHasModels{CGAL::Arr_segment_traits_2} + * \cgalHasModels{CGAL::Arr_polyline_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementApproximateTraits_2`, diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h index b750989c9ff..b0cb67e12e9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcel.h @@ -15,10 +15,10 @@ * `ArrangementDcelInnerCcb`, and `ArrangementDcelIsolatedVertex` respectively.) * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_dcel_base} - * \cgalModels{CGAL::Arr_default_dcel} - * \cgalModels{CGAL::Arr_face_extended_dcel} - * \cgalModels{CGAL::Arr_extended_dcel} + * \cgalHasModels{CGAL::Arr_dcel_base} + * \cgalHasModels{CGAL::Arr_default_dcel} + * \cgalHasModels{CGAL::Arr_face_extended_dcel} + * \cgalHasModels{CGAL::Arr_extended_dcel} * \cgalHasModelsEnd * * \sa `ArrangementDcelVertex` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h index c3d607c6e98..f263a1aae0d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementDcelWithRebind.h @@ -11,9 +11,9 @@ Instantiate a dcel class with many different possible types without ad-hoc limit \cgalRefines{ArrangementDcel} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_default_dcel} -\cgalModels{CGAL::Arr_face_extended_dcel} -\cgalModels{CGAL::Arr_extended_dcel} +\cgalHasModels{CGAL::Arr_default_dcel} +\cgalHasModels{CGAL::Arr_face_extended_dcel} +\cgalHasModels{CGAL::Arr_extended_dcel} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h index 8dfbfb22707..e28c300acea 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementHorizontalSideTraits_2.h @@ -12,10 +12,10 @@ * \cgalRefines{ArrangementBasicTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} - * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h index 07c14685f6e..286b02727ad 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementInputFormatter.h @@ -6,9 +6,9 @@ * specific format. * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_text_formatter} - * \cgalModels{CGAL::Arr_face_extended_text_formatter} - * \cgalModels{CGAL::Arr_extended_dcel_text_formatter} + * \cgalHasModels{CGAL::Arr_text_formatter} + * \cgalHasModels{CGAL::Arr_face_extended_text_formatter} + * \cgalHasModels{CGAL::Arr_extended_dcel_text_formatter} * \cgalHasModelsEnd * */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h index 79624fa8238..75c1a6bd241 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementLandmarkTraits_2.h @@ -12,14 +12,14 @@ * \cgalRefines{ArrangementApproximateTraits_2,ArrangementConstructXMonotoneCurveTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_conic_traits_2} - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_non_caching_segment_traits_2} - * \cgalModels{CGAL::Arr_segment_traits_2} - * \cgalModels{CGAL::Arr_polycurve_traits_2} - * \cgalModels{CGAL::Arr_polyline_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_conic_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} + * \cgalHasModels{CGAL::Arr_segment_traits_2} + * \cgalHasModels{CGAL::Arr_polycurve_traits_2} + * \cgalHasModels{CGAL::Arr_polyline_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementXMonotoneTraits_2` and diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h index 3bf6b089be6..7cce69c075d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOpenBoundaryTraits_2.h @@ -40,11 +40,11 @@ * \cgalRefines{ArrangementBasicTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} - * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} - * \cgalModels{CGAL::Arr_curve_data_traits_2} - * \cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalHasModels{CGAL::Arr_curve_data_traits_2} + * \cgalHasModels{CGAL::Arr_consolidated_curve_data_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h index eb6c67a142b..bb1846ad8f5 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementOutputFormatter.h @@ -7,9 +7,9 @@ A model for the `ArrangementOutputFormatter` concept supports a set of functions writing an arrangement to an output stream using a specific format. \cgalHasModelsBegin -\cgalModels{CGAL::Arr_text_formatter} -\cgalModels{CGAL::Arr_face_extended_text_formatter} -\cgalModels{CGAL::Arr_extended_dcel_text_formatter} +\cgalHasModels{CGAL::Arr_text_formatter} +\cgalHasModels{CGAL::Arr_face_extended_text_formatter} +\cgalHasModels{CGAL::Arr_extended_dcel_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h index 782af5d25cd..4217e268e82 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h @@ -21,10 +21,10 @@ the old style without any overhead, the macro \cgal header is included. \cgalHasModelsBegin -\cgalModels{CGAL::Arr_naive_point_location} -\cgalModels{CGAL::Arr_walk_along_line_point_location} -\cgalModels{CGAL::Arr_trapezoid_ric_point_location} -\cgalModels{CGAL::Arr_landmarks_point_location} +\cgalHasModels{CGAL::Arr_naive_point_location} +\cgalHasModels{CGAL::Arr_walk_along_line_point_location} +\cgalHasModels{CGAL::Arr_trapezoid_ric_point_location} +\cgalHasModels{CGAL::Arr_landmarks_point_location} \cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h index 2c2d0ad0208..25fde7ef42d 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementSphericalBoundaryTraits_2.h @@ -12,7 +12,7 @@ * ArrangementContractedBottomTraits_2,ArrangementContractedTopTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementOpenBoundaryTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h index defff744a97..bf0c5121709 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTopologyTraits.h @@ -21,9 +21,9 @@ * At this point we do not expose all the requirements of this concept. * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_bounded_planar_topology_traits_2} - * \cgalModels{CGAL::Arr_unb_planar_topology_traits_2} - * \cgalModels{CGAL::Arr_spherical_topology_traits_2} + * \cgalHasModels{CGAL::Arr_bounded_planar_topology_traits_2} + * \cgalHasModels{CGAL::Arr_unb_planar_topology_traits_2} + * \cgalHasModels{CGAL::Arr_spherical_topology_traits_2} * \cgalHasModelsEnd * * \sa `Arrangement_on_surface_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h index 897ede7f25a..e7f2288b560 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementTraits_2.h @@ -31,20 +31,20 @@ that accept such curves, such as `intsert()`. \cgalRefines{ArrangementXMonotoneTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_segment_traits_2} -\cgalModels{CGAL::Arr_non_caching_segment_traits_2} -\cgalModels{CGAL::Arr_linear_traits_2} -\cgalModels{CGAL::Arr_polyline_traits_2} -\cgalModels{CGAL::Arr_circle_segment_traits_2} -\cgalModels{CGAL::Arr_line_arc_traits_2} -\cgalModels{CGAL::Arr_circular_arc_traits_2} -\cgalModels{CGAL::Arr_circular_line_arc_traits_2} -\cgalModels{CGAL::Arr_conic_traits_2} -\cgalModels{CGAL::Arr_rational_function_traits_2} -\cgalModels{CGAL::Arr_Bezier_curve_traits_2} -\cgalModels{CGAL::Arr_algebraic_segment_traits_2} -\cgalModels{CGAL::Arr_curve_data_traits_2} -\cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} +\cgalHasModels{CGAL::Arr_segment_traits_2} +\cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalHasModels{CGAL::Arr_linear_traits_2} +\cgalHasModels{CGAL::Arr_polyline_traits_2} +\cgalHasModels{CGAL::Arr_circle_segment_traits_2} +\cgalHasModels{CGAL::Arr_line_arc_traits_2} +\cgalHasModels{CGAL::Arr_circular_arc_traits_2} +\cgalHasModels{CGAL::Arr_circular_line_arc_traits_2} +\cgalHasModels{CGAL::Arr_conic_traits_2} +\cgalHasModels{CGAL::Arr_rational_function_traits_2} +\cgalHasModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} +\cgalHasModels{CGAL::Arr_curve_data_traits_2} +\cgalHasModels{CGAL::Arr_consolidated_curve_data_traits_2} \cgalHasModelsEnd \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h index 0b7c89be158..f82ff109737 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h @@ -29,10 +29,10 @@ is recommended. To enable the old style without any overhead, the macro \cgal header is included. \cgalHasModelsBegin -\cgalModels{CGAL::Arr_naive_point_location} -\cgalModels{CGAL::Arr_walk_along_line_point_location} -\cgalModels{CGAL::Arr_trapezoid_ric_point_location} -\cgalModels{CGAL::Arr_landmarks_point_location} +\cgalHasModels{CGAL::Arr_naive_point_location} +\cgalHasModels{CGAL::Arr_walk_along_line_point_location} +\cgalHasModels{CGAL::Arr_trapezoid_ric_point_location} +\cgalHasModels{CGAL::Arr_landmarks_point_location} \cgalHasModelsEnd \sa `CGAL::Arr_naive_point_location` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h index 2b9d1c9f6c1..88802d7ad61 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalSideTraits_2.h @@ -12,10 +12,10 @@ * \cgalRefines{ArrangementBasicTraits_2} * * \cgalHasModelsBegin - * \cgalModels{CGAL::Arr_linear_traits_2} - * \cgalModels{CGAL::Arr_rational_function_traits_2} - * \cgalModels{CGAL::Arr_algebraic_segment_traits_2} - * \cgalModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} + * \cgalHasModels{CGAL::Arr_linear_traits_2} + * \cgalHasModels{CGAL::Arr_rational_function_traits_2} + * \cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} + * \cgalHasModels{CGAL::Arr_geodesic_arc_on_sphere_traits_2} * \cgalHasModelsEnd * * \sa `ArrangementVerticalSideTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h index 601725e3c06..0e6ec4d3af8 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryInputFormatter.h @@ -10,7 +10,7 @@ specific format. \cgalRefines{ArrangementInputFormatter} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_with_history_text_formatter} +\cgalHasModels{CGAL::Arr_with_history_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h index 287a3a9f7eb..2aa87cc1d95 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementWithHistoryOutputFormatter.h @@ -10,7 +10,7 @@ specific format. \cgalRefines{ArrangementOutputFormatter} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_with_history_text_formatter} +\cgalHasModels{CGAL::Arr_with_history_text_formatter} \cgalHasModelsEnd */ diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h index 32e49f947dc..88cc075b5b1 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementXMonotoneTraits_2.h @@ -19,20 +19,20 @@ curve splitting. \cgalRefines{ArrangementBasicTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_segment_traits_2} -\cgalModels{CGAL::Arr_non_caching_segment_traits_2} -\cgalModels{CGAL::Arr_linear_traits_2} -\cgalModels{CGAL::Arr_polyline_traits_2} -\cgalModels{CGAL::Arr_circle_segment_traits_2} -\cgalModels{CGAL::Arr_line_arc_traits_2} -\cgalModels{CGAL::Arr_circular_arc_traits_2} -\cgalModels{CGAL::Arr_circular_line_arc_traits_2} -\cgalModels{CGAL::Arr_conic_traits_2} -\cgalModels{CGAL::Arr_rational_function_traits_2} -\cgalModels{CGAL::Arr_Bezier_curve_traits_2} -\cgalModels{CGAL::Arr_algebraic_segment_traits_2} -\cgalModels{CGAL::Arr_curve_data_traits_2} -\cgalModels{CGAL::Arr_consolidated_curve_data_traits_2} +\cgalHasModels{CGAL::Arr_segment_traits_2} +\cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalHasModels{CGAL::Arr_linear_traits_2} +\cgalHasModels{CGAL::Arr_polyline_traits_2} +\cgalHasModels{CGAL::Arr_circle_segment_traits_2} +\cgalHasModels{CGAL::Arr_line_arc_traits_2} +\cgalHasModels{CGAL::Arr_circular_arc_traits_2} +\cgalHasModels{CGAL::Arr_circular_line_arc_traits_2} +\cgalHasModels{CGAL::Arr_conic_traits_2} +\cgalHasModels{CGAL::Arr_rational_function_traits_2} +\cgalHasModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} +\cgalHasModels{CGAL::Arr_curve_data_traits_2} +\cgalHasModels{CGAL::Arr_consolidated_curve_data_traits_2} \cgalHasModelsEnd \sa `ArrangementBasicTraits_2` diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h index 678d26425c4..137ccd40de4 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/OverlayTraits.h @@ -12,8 +12,8 @@ maintain the auxiliary data stored with the \dcel records of the resulting overlaid arrangement, based on the contents of the input records. \cgalHasModelsBegin -\cgalModels{CGAL::Arr_default_overlay_traits} -\cgalModels{CGAL::Arr_face_overlay_traits} +\cgalHasModels{CGAL::Arr_default_overlay_traits} +\cgalHasModels{CGAL::Arr_face_overlay_traits} \cgalHasModelsEnd \sa `overlay` diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h index 35818aa505d..933edcacacb 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricCoordinates_2.h @@ -9,9 +9,9 @@ A concept that describes the set of methods that should be defined for all coord models used to parameterize the class `Generalized_barycentric_coordinates_2`. \cgalHasModelsBegin -\cgalModels{Wachspress_2} -\cgalModels{Mean_value_2} -\cgalModels{Discrete_harmonic_2} +\cgalHasModels{Wachspress_2} +\cgalHasModels{Mean_value_2} +\cgalHasModels{Discrete_harmonic_2} \cgalHasModelsEnd \deprecated This part of the package is deprecated since the version 5.4 of \cgal. diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h index b1613da6b02..394a074d270 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/DiscretizedDomain_2.h @@ -14,7 +14,7 @@ used to approximate certain types of generalized barycentric coordinate function The domain is bounded by the polygon. \cgalHasModelsBegin -\cgalModels{Delaunay_domain_2} +\cgalHasModels{Delaunay_domain_2} \cgalHasModelsEnd */ class DiscretizedDomain_2 { diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h index bc3fa2117d3..65fd4f347a8 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--AreMergeable_2.h @@ -6,7 +6,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Are_mergeable_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h index a2e684be626..e7714c04561 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--CompareEndpointsXy_2.h @@ -7,7 +7,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Compare_endpoints_xy_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h index bac19b87072..92ee2585b2d 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--ConstructOpposite_2.h @@ -7,7 +7,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Construct_opposite_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h index f82f215155a..0a62ec61aad 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Intersect_2.h @@ -6,7 +6,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Intersect_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Intersect_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h index a2b89befdec..18f8f26e936 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Merge_2.h @@ -6,7 +6,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableBinaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Merge_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Merge_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h index 7bca25154fd..5d6529d4862 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrDirectionalTraits--Split_2.h @@ -6,7 +6,7 @@ namespace ArrDirectionalTraits { \cgalRefines{AdaptableUnaryFunction} \cgalHasModelsBegin -\cgalModels{ArrangementDirectionalXMonotoneTraits_2::Split_2} +\cgalHasModels{ArrangementDirectionalXMonotoneTraits_2::Split_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h index 15aaffd0788..3278e482000 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/ArrangementDirectionalXMonotoneTraits_2.h @@ -17,13 +17,13 @@ as its source and the other as its target. \cgalRefines{ArrangementXMonotoneTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Arr_segment_traits_2} -\cgalModels{CGAL::Arr_non_caching_segment_traits_2} -\cgalModels{CGAL::Arr_circle_segment_traits_2} -\cgalModels{CGAL::Arr_conic_traits_2} -\cgalModels{CGAL::Arr_rational_function_traits_2} -\cgalModels{CGAL::Arr_Bezier_curve_traits_2} -\cgalModels{CGAL::Arr_algebraic_segment_traits_2} +\cgalHasModels{CGAL::Arr_segment_traits_2} +\cgalHasModels{CGAL::Arr_non_caching_segment_traits_2} +\cgalHasModels{CGAL::Arr_circle_segment_traits_2} +\cgalHasModels{CGAL::Arr_conic_traits_2} +\cgalHasModels{CGAL::Arr_rational_function_traits_2} +\cgalHasModels{CGAL::Arr_Bezier_curve_traits_2} +\cgalHasModels{CGAL::Arr_algebraic_segment_traits_2} \cgalHasModelsEnd \sa `ArrangementXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h index 3151c6eb074..6d28d6afbf4 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcel.h @@ -17,7 +17,7 @@ respectively \cgalRefines{ArrangementDcel} \cgalHasModelsBegin -\cgalModels{CGAL::Gps_default_dcel} +\cgalHasModels{CGAL::Gps_default_dcel} \cgalHasModelsEnd \sa `GeneralPolygonSetDcelFace` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h index 123f3b883cf..01a99bce20e 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelFace.h @@ -10,7 +10,7 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelFace} \cgalHasModelsBegin -\cgalModels{CGAL::Gps_face_base} +\cgalHasModels{CGAL::Gps_face_base} \cgalHasModelsEnd \sa `ArrangementDcel` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h index 3f254f685a2..a21a5fd8b7f 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetDcelHalfedge.h @@ -9,7 +9,7 @@ to represent the underlying internal `Arrangement_2` data structure. \cgalRefines{ArrangementDcelHalfedge} \cgalHasModelsBegin -\cgalModels{CGAL::Gps_face_halfedge} +\cgalHasModels{CGAL::Gps_face_halfedge} \cgalHasModelsEnd \sa `ArrangementDcel` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h index bd1afb8ed78..2c8966d8239 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygonSetTraits_2.h @@ -14,9 +14,9 @@ types. \cgalRefines{ArrangementDirectionalXMonotoneTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Gps_segment_traits_2} -\cgalModels{CGAL::Gps_circle_segment_traits_2} -\cgalModels{CGAL::Gps_traits_2} +\cgalHasModels{CGAL::Gps_segment_traits_2} +\cgalHasModels{CGAL::Gps_circle_segment_traits_2} +\cgalHasModels{CGAL::Gps_traits_2} \cgalHasModelsEnd \sa `ArrangementDirectionalXMonotoneTraits_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h index b9e25593526..e8a9a5b76e5 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GeneralPolygon_2.h @@ -17,7 +17,7 @@ of Boolean set-operations. General polygon that represent holes must be clockwise oriented. \cgalHasModelsBegin -\cgalModels{CGAL::General_polygon_2} +\cgalHasModels{CGAL::General_polygon_2} \cgalHasModelsEnd */ diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h index 2515be1d0e7..ae3edc16589 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygonWithHoles_2.h @@ -10,7 +10,7 @@ A model of this concept represents a general polygon with holes. \cgalGeneralizes `GeneralPolygonWithHoles_2` \cgalHasModelsBegin -\cgalModels{GeneralPolygonSetTraits_2::Polygon_with_holes2} +\cgalHasModels{GeneralPolygonSetTraits_2::Polygon_with_holes2} \cgalHasModelsEnd \sa `GeneralPolygonWithHoles_2` diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h index dc6486a1a31..18872ffd1a0 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/Concepts/GpsTraitsGeneralPolygon_2.h @@ -10,8 +10,8 @@ A model of this concept represents a simple general polygon. \cgalGeneralizes `GeneralPolygon_2` \cgalHasModelsBegin -\cgalModels{GeneralPolygonSetTraits_2::Polygon_2} -\cgalModels{CGAL::Polygon_2} +\cgalHasModels{GeneralPolygonSetTraits_2::Polygon_2} +\cgalHasModels{CGAL::Polygon_2} \cgalHasModelsEnd \sa `GeneralPolygon_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h index 0ce3d2249b9..62853106bae 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/ApproximateMinEllipsoid_d_Traits_d.h @@ -9,9 +9,9 @@ This concept defines the requirements for traits classes of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_2} -\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_3} -\cgalModels{CGAL::Approximate_min_ellipsoid_d_traits_d} +\cgalHasModels{CGAL::Approximate_min_ellipsoid_d_traits_2} +\cgalHasModels{CGAL::Approximate_min_ellipsoid_d_traits_3} +\cgalHasModels{CGAL::Approximate_min_ellipsoid_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h index 3e25f230aeb..0e78063f3e0 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinCircle2Traits.h @@ -7,7 +7,7 @@ This concept defines the requirements for traits classes of `CGAL::Min_circle_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Min_circle_2_traits_2} +\cgalHasModels{CGAL::Min_circle_2_traits_2} \cgalHasModelsEnd \sa `CGAL::Min_circle_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h index 853c3243813..d498ece7baf 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinEllipse2Traits.h @@ -7,7 +7,7 @@ This concept defines the requirements for traits classes of `CGAL::Min_ellipse_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Min_ellipse_2_traits_2} +\cgalHasModels{CGAL::Min_ellipse_2_traits_2} \cgalHasModelsEnd \sa `CGAL::Min_ellipse_2` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h index 592d52d69d9..65ffccff529 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinQuadrilateralTraits_2.h @@ -9,7 +9,7 @@ set using the functions `min_rectangle_2()`, `min_parallelogram_2()` and `min_strip_2()`. \cgalHasModelsBegin -\cgalModels{CGAL::Min_quadrilateral_default_traits_2} +\cgalHasModels{CGAL::Min_quadrilateral_default_traits_2} \cgalHasModelsEnd \sa `CGAL::min_rectangle_2()` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h index 0d812dd559b..6815393e7bd 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereAnnulusDTraits.h @@ -7,9 +7,9 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional min sphere and min annulus algorithms. \cgalHasModelsBegin -\cgalModels{CGAL::Min_sphere_annulus_d_traits_2} -\cgalModels{CGAL::Min_sphere_annulus_d_traits_3} -\cgalModels{CGAL::Min_sphere_annulus_d_traits_d} +\cgalHasModels{CGAL::Min_sphere_annulus_d_traits_2} +\cgalHasModels{CGAL::Min_sphere_annulus_d_traits_3} +\cgalHasModels{CGAL::Min_sphere_annulus_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Min_sphere_d` diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h index 2e19511b810..9e08fa9312a 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/MinSphereOfSpheresTraits.h @@ -7,12 +7,12 @@ A model of concept `MinSphereOfSpheresTraits` must provide the following constants, types, predicates and operations. \cgalHasModelsBegin -\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_2} -\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_3} -\cgalModels{CGAL::Min_sphere_of_spheres_d_traits_d} -\cgalModels{CGAL::Min_sphere_of_points_d_traits_2} -\cgalModels{CGAL::Min_sphere_of_points_d_traits_3} -\cgalModels{CGAL::Min_sphere_of_points_d_traits_d} +\cgalHasModels{CGAL::Min_sphere_of_spheres_d_traits_2} +\cgalHasModels{CGAL::Min_sphere_of_spheres_d_traits_3} +\cgalHasModels{CGAL::Min_sphere_of_spheres_d_traits_d} +\cgalHasModels{CGAL::Min_sphere_of_points_d_traits_2} +\cgalHasModels{CGAL::Min_sphere_of_points_d_traits_3} +\cgalHasModels{CGAL::Min_sphere_of_points_d_traits_d} \cgalHasModelsEnd */ diff --git a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h index b72e77f91d3..4b18a7a762a 100644 --- a/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/Concepts/RectangularPCenterTraits_2.h @@ -8,7 +8,7 @@ needed to compute rectilinear \f$ p\f$-centers of a planar point set using the function `CGAL::rectangular_p_center_2()`. \cgalHasModelsBegin -\cgalModels{CGAL::Rectangular_p_center_default_traits_2} +\cgalHasModels{CGAL::Rectangular_p_center_default_traits_2} \cgalHasModelsEnd \sa `CGAL::rectangular_p_center_2()` diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h index d41ffd3d842..edd402137ed 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionBox_d.h @@ -11,8 +11,8 @@ the dimension, the `id`-number, and the boundaries of the box. \cgalRefines{Assignable} \cgalHasModelsBegin -\cgalModels{CGAL::Box_intersection_d::Box_d} -\cgalModels{CGAL::Box_intersection_d::Box_with_handle_d} +\cgalHasModels{CGAL::Box_intersection_d::Box_d} +\cgalHasModels{CGAL::Box_intersection_d::Box_with_handle_d} \cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink diff --git a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h index 98cb8e4a34f..c3541e6cfd2 100644 --- a/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h +++ b/Box_intersection_d/doc/Box_intersection_d/Concepts/BoxIntersectionTraits_d.h @@ -10,7 +10,7 @@ the boxes manipulated in these algorithms. \cgalRefines{Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Box_intersection_d::Box_traits_d} +\cgalHasModels{CGAL::Box_intersection_d::Box_traits_d} \cgalHasModelsEnd \sa \link PkgBoxIntersectionD_box_intersection_d `CGAL::box_intersection_d()` \endlink diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h index 05175484ac2..6018fabb347 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--PolynomialForCircles_2_2.h @@ -12,7 +12,7 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Polynomial_for_circles_2_2} +\cgalHasModels{CGAL::Polynomial_for_circles_2_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h index ee376204999..d045a84662e 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--Polynomial_1_2.h @@ -10,7 +10,7 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Polynomial_1_2} +\cgalHasModels{CGAL::Polynomial_1_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h index 13cdb511935..b11014950b4 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles--RootForCircles_2_2.h @@ -8,7 +8,7 @@ in two variables `x` and `y` that are models of concept `AlgebraicKernelForCircles::PolynomialForCircles_2_2` \cgalHasModelsBegin -\cgalModels{CGAL::Root_for_circles_2_2} +\cgalHasModels{CGAL::Root_for_circles_2_2} \cgalHasModelsEnd \sa `AlgebraicKernelForCircles` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h index 9b259e047c3..6241ca39f35 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/AlgebraicKernelForCircles.h @@ -8,7 +8,7 @@ curved kernel with all the algebraic functionalities required for the manipulation of circular arcs. \cgalHasModelsBegin -\cgalModels{CGAL::Algebraic_kernel_for_circles_2_2} +\cgalHasModels{CGAL::Algebraic_kernel_for_circles_2_2} \cgalHasModelsEnd \sa `CircularKernel` diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h index 82cf9487e87..d9019e31e3a 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArcPoint_2.h @@ -8,7 +8,7 @@ Concept for points on circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Circular_arc_point_2} +\cgalHasModels{CGAL::Circular_arc_point_2} \cgalHasModelsEnd */ class CircularKernel::CircularArcPoint_2 { diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h index d5833dfa55d..dff040e6a32 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--CircularArc_2.h @@ -8,7 +8,7 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Circular_arc_2} +\cgalHasModels{CGAL::Circular_arc_2} \cgalHasModelsEnd */ diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h index e92230b10a0..ca08be2ae84 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel--LineArc_2.h @@ -10,7 +10,7 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Line_arc_2} +\cgalHasModels{CGAL::Line_arc_2} \cgalHasModelsEnd */ diff --git a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h index d5c912468c6..1c78b2d50ea 100644 --- a/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h +++ b/Circular_kernel_2/doc/Circular_kernel_2/Concepts/CircularKernel.h @@ -6,8 +6,8 @@ \cgalRefines{Kernel} \cgalHasModelsBegin -\cgalModels{CGAL::Circular_kernel_2} -\cgalModels{CGAL::Exact_circular_kernel_2} +\cgalHasModels{CGAL::Circular_kernel_2} +\cgalHasModels{CGAL::Exact_circular_kernel_2} \cgalHasModelsEnd \sa `Kernel` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h index 70aa9278d6b..99b16c59c63 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialForSpheres_2_3.h @@ -12,7 +12,7 @@ are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{GAL::Polynomial_for_spheres_2_} +\cgalHasModels{GAL::Polynomial_for_spheres_2_} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h index 6423e3805a0..0df9eeb89b1 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--Polynomial_1_3.h @@ -10,7 +10,7 @@ coefficients are of a type that is a model of the concept \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Polynomial_1_3} +\cgalHasModels{CGAL::Polynomial_1_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h index 99d40b5860a..6dd59fc1a88 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--PolynomialsForLines_3.h @@ -9,7 +9,7 @@ capable of storing equations of lines. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Polynomials_for_lines_3} +\cgalHasModels{CGAL::Polynomials_for_lines_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h index cb25b3d6244..5da83e31c6f 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres--RootForSpheres_2_3.h @@ -8,7 +8,7 @@ in three variables `x`, `y` and `z` that are models of concept `AlgebraicKernelForSpheres::PolynomialForSpheres_2_3`. \cgalHasModelsBegin -\cgalModels{CGAL::Root_for_spheres_2_3} +\cgalHasModels{CGAL::Root_for_spheres_2_3} \cgalHasModelsEnd \sa `AlgebraicKernelForSpheres` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h index 585101b73df..c258b5020a9 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/AlgebraicKernelForSpheres.h @@ -8,7 +8,7 @@ curved kernel with all the algebraic functionalities required for the manipulation of spheres, circles, and circular arcs in 3D. \cgalHasModelsBegin -\cgalModels{CGAL::Algebraic_kernel_for_spheres_2_3} +\cgalHasModels{CGAL::Algebraic_kernel_for_spheres_2_3} \cgalHasModelsEnd \sa `SphericalKernel` diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h index 8c932d22712..60f3f613b6d 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArcPoint_3.h @@ -8,7 +8,7 @@ Concept for points on spheres, circles, circular arcs or line arcs. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Circular_arc_point_3} +\cgalHasModels{CGAL::Circular_arc_point_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h index 644a5077384..ad062120fdc 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--CircularArc_3.h @@ -8,7 +8,7 @@ Concept for arcs of circles. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Circular_arc_3} +\cgalHasModels{CGAL::Circular_arc_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h index ca26700179f..0c750dff3ac 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel--LineArc_3.h @@ -10,7 +10,7 @@ Concept for line segments supported by a line that is a model of \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Line_arc_3} +\cgalHasModels{CGAL::Line_arc_3} \cgalHasModelsEnd */ diff --git a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h index 22b38914961..23be29fe5b6 100644 --- a/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h +++ b/Circular_kernel_3/doc/Circular_kernel_3/Concepts/SphericalKernel.h @@ -6,8 +6,8 @@ \cgalRefines{Kernel} \cgalHasModelsBegin -\cgalModels{CGAL::Spherical_kernel_3} -\cgalModels{CGAL::Exact_spherical_kernel_3} +\cgalHasModels{CGAL::Spherical_kernel_3} +\cgalHasModels{CGAL::Exact_spherical_kernel_3} \cgalHasModelsEnd \sa `Kernel` diff --git a/Circulator/doc/Circulator/Concepts/ConstHandle.h b/Circulator/doc/Circulator/Concepts/ConstHandle.h index b15f9c6fd0c..281902ecce4 100644 --- a/Circulator/doc/Circulator/Concepts/ConstHandle.h +++ b/Circulator/doc/Circulator/Concepts/ConstHandle.h @@ -8,7 +8,7 @@ A constant handle. Refer to the `Handle` concept for more details. \cgalRefines{Descriptor} \cgalHasModelsBegin -\cgalModels{const T* (const pointers)} +\cgalHasModels{const T* (const pointers)} \cgalHasModelsEnd \sa `Handle` diff --git a/Circulator/doc/Circulator/Concepts/Handle.h b/Circulator/doc/Circulator/Concepts/Handle.h index 0e531736bcf..fd08f96c22b 100644 --- a/Circulator/doc/Circulator/Concepts/Handle.h +++ b/Circulator/doc/Circulator/Concepts/Handle.h @@ -24,10 +24,10 @@ operator is concerned (this serves the same purpose as NULL for pointers). standard containers.) \cgalHasModelsBegin -\cgalModels{T* (pointer)} -\cgalModels{const T* (const pointers)} -\cgalModels{Iterator} -\cgalModels{Circulator} +\cgalHasModels{T* (pointer)} +\cgalHasModels{const T* (const pointers)} +\cgalHasModels{Iterator} +\cgalHasModels{Circulator} \cgalHasModelsEnd */ class Handle { diff --git a/Classification/doc/Classification/Concepts/Classifier.h b/Classification/doc/Classification/Concepts/Classifier.h index fefec08fceb..03ba639d256 100644 --- a/Classification/doc/Classification/Concepts/Classifier.h +++ b/Classification/doc/Classification/Concepts/Classifier.h @@ -13,9 +13,9 @@ Concept describing a classifier used by classification functions (see `CGAL::Classification::classify_with_graphcut()`). \cgalHasModelsBegin -\cgalModels{CGAL::Classification::Sum_of_weighted_features_classifier} -\cgalModels{CGAL::Classification::ETHZ::Random_forest_classifier} -\cgalModels{CGAL::Classification::OpenCV::Random_forest_classifier} +\cgalHasModels{CGAL::Classification::Sum_of_weighted_features_classifier} +\cgalHasModels{CGAL::Classification::ETHZ::Random_forest_classifier} +\cgalHasModels{CGAL::Classification::OpenCV::Random_forest_classifier} \cgalHasModelsEnd */ diff --git a/Classification/doc/Classification/Concepts/NeighborQuery.h b/Classification/doc/Classification/Concepts/NeighborQuery.h index 4db42f7b4b8..8de58a6c523 100644 --- a/Classification/doc/Classification/Concepts/NeighborQuery.h +++ b/Classification/doc/Classification/Concepts/NeighborQuery.h @@ -11,10 +11,10 @@ namespace Classification Concept describing a neighbor query used for classification. \cgalHasModelsBegin -\cgalModels{CGAL::Classification::Point_set_neighborhood::K_neighbor_query} -\cgalModels{CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query} -\cgalModels{CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query} -\cgalModels{CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query} +\cgalHasModels{CGAL::Classification::Point_set_neighborhood::K_neighbor_query} +\cgalHasModels{CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query} +\cgalHasModels{CGAL::Classification::Mesh_neighborhood::One_ring_neighbor_query} +\cgalHasModels{CGAL::Classification::Mesh_neighborhood::N_ring_neighbor_query} \cgalHasModelsEnd */ diff --git a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h index f5e1d3a6f36..639a45e5f4c 100644 --- a/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h +++ b/Convex_hull_2/doc/Convex_hull_2/Concepts/ConvexHullTraits_2.h @@ -10,12 +10,12 @@ functions. The specific subset of these primitives required by each function is specified with each function. \cgalHasModelsBegin -\cgalModels{CGAL::Convex_hull_constructive_traits_2} -\cgalModels{CGAL::Convex_hull_traits_2} -\cgalModels{CGAL::Convex_hull_traits_adapter_2} -\cgalModels{CGAL::Projection_traits_xy_3} -\cgalModels{CGAL::Projection_traits_yz_3} -\cgalModels{CGAL::Projection_traits_xz_3} +\cgalHasModels{CGAL::Convex_hull_constructive_traits_2} +\cgalHasModels{CGAL::Convex_hull_traits_2} +\cgalHasModels{CGAL::Convex_hull_traits_adapter_2} +\cgalHasModels{CGAL::Projection_traits_xy_3} +\cgalHasModels{CGAL::Projection_traits_yz_3} +\cgalHasModels{CGAL::Projection_traits_xz_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h index b9fd8dac230..ba20411843b 100644 --- a/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h +++ b/Convex_hull_3/doc/Convex_hull_3/Concepts/ConvexHullTraits_3.h @@ -5,8 +5,8 @@ Requirements of the traits class of the function `CGAL::convex_hull_3()`. \cgalHasModelsBegin -\cgalModels{CGAL::Convex_hull_traits_3} -\cgalModels{CGAL::Extreme_points_traits_adapter_3} +\cgalHasModels{CGAL::Convex_hull_traits_3} +\cgalHasModels{CGAL::Extreme_points_traits_adapter_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h index fce2c1aa320..19c5793f9c0 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/ConvexHullTraits_d.h @@ -8,9 +8,9 @@ Requirements of the traits class to be used with the class `CGAL::Convex_hull_d`. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} -\cgalModels{CGAL::Convex_hull_d_traits_3} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Convex_hull_d_traits_3} \cgalHasModelsEnd */ diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h index 0937e25239c..a584e7433ed 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayLiftedTraits_d.h @@ -8,8 +8,8 @@ Requirements of the second traits class to be used with the class `CGAL::Delaunay_d`. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ diff --git a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h index 2f91bbf7d82..c04db63b19c 100644 --- a/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h +++ b/Convex_hull_d/doc/Convex_hull_d/Concepts/DelaunayTraits_d.h @@ -8,8 +8,8 @@ Requirements of the first traits class to be used with the class `CGAL::Delaunay_d`. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ diff --git a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h index 02ae3ebf7cf..3665e2ae25a 100644 --- a/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h +++ b/Envelope_3/doc/Envelope_3/Concepts/EnvelopeTraits_3.h @@ -17,10 +17,10 @@ Note however, that these operations usually involve the projection of \cgalRefines{ArrangementXMonotoneTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Env_triangle_traits_3} -\cgalModels{CGAL::Env_sphere_traits_3} -\cgalModels{CGAL::Env_plane_traits_3} -\cgalModels{CGAL::Env_surface_data_traits_3} +\cgalHasModels{CGAL::Env_triangle_traits_3} +\cgalHasModels{CGAL::Env_sphere_traits_3} +\cgalHasModels{CGAL::Env_plane_traits_3} +\cgalHasModels{CGAL::Env_surface_data_traits_3} \cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/PointGenerator.h b/Generator/doc/Generator/Concepts/PointGenerator.h index 5a70e5f0ebd..39019e4b99a 100644 --- a/Generator/doc/Generator/Concepts/PointGenerator.h +++ b/Generator/doc/Generator/Concepts/PointGenerator.h @@ -6,20 +6,20 @@ The concept `PointGenerator` defines the requirements for a point generator, which can be used in places where input iterators are called for. \cgalHasModelsBegin -\cgalModels{CGAL::Random_points_in_ball_d} -\cgalModels{CGAL::Random_points_in_disc_2} -\cgalModels{CGAL::Random_points_in_square_2} -\cgalModels{CGAL::Random_points_in_triangle_2} -\cgalModels{CGAL::Random_points_on_circle_2} -\cgalModels{CGAL::Random_points_on_segment_2} -\cgalModels{CGAL::Random_points_on_square_2} -\cgalModels{CGAL::Random_points_in_cube_3} -\cgalModels{CGAL::Random_points_in_cube_d} -\cgalModels{CGAL::Random_points_in_sphere_3} -\cgalModels{CGAL::Random_points_in_triangle_3} -\cgalModels{CGAL::Random_points_in_tetrahedron_3} -\cgalModels{CGAL::Random_points_on_sphere_3} -\cgalModels{CGAL::Random_points_on_sphere_d} +\cgalHasModels{CGAL::Random_points_in_ball_d} +\cgalHasModels{CGAL::Random_points_in_disc_2} +\cgalHasModels{CGAL::Random_points_in_square_2} +\cgalHasModels{CGAL::Random_points_in_triangle_2} +\cgalHasModels{CGAL::Random_points_on_circle_2} +\cgalHasModels{CGAL::Random_points_on_segment_2} +\cgalHasModels{CGAL::Random_points_on_square_2} +\cgalHasModels{CGAL::Random_points_in_cube_3} +\cgalHasModels{CGAL::Random_points_in_cube_d} +\cgalHasModels{CGAL::Random_points_in_sphere_3} +\cgalHasModels{CGAL::Random_points_in_triangle_3} +\cgalHasModels{CGAL::Random_points_in_tetrahedron_3} +\cgalHasModels{CGAL::Random_points_on_sphere_3} +\cgalHasModels{CGAL::Random_points_on_sphere_d} \cgalHasModelsEnd */ diff --git a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h index 669f54809b3..05cb1eda3a8 100644 --- a/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h +++ b/Generator/doc/Generator/Concepts/RandomConvexSetTraits_2.h @@ -6,7 +6,7 @@ The concept `RandomConvexSetTraits_2` describes the requirements of the traits class for the function `random_convex_set_2()`. \cgalHasModelsBegin -\cgalModels{CGAL::Random_convex_set_traits_2} +\cgalHasModels{CGAL::Random_convex_set_traits_2} \cgalHasModelsEnd */ diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h index 6b99d22b415..ed5f246b5f0 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDS.h @@ -68,9 +68,9 @@ from the `` header file can be used as default allocator. \cgalHasModelsBegin -\cgalModels{CGAL::HalfedgeDS_default} -\cgalModels{CGAL::HalfedgeDS_list} -\cgalModels{CGAL::HalfedgeDS_vector} +\cgalHasModels{CGAL::HalfedgeDS_default} +\cgalHasModels{CGAL::HalfedgeDS_list} +\cgalHasModels{CGAL::HalfedgeDS_vector} \cgalHasModelsEnd \sa `HalfedgeDSItems` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h index fb3c3e05d2a..e8ef9f27a86 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSFace.h @@ -24,8 +24,8 @@ can be bypassed by the user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::HalfedgeDS_face_base} -\cgalModels{CGAL::HalfedgeDS_face_min_base} +\cgalHasModels{CGAL::HalfedgeDS_face_base} +\cgalHasModels{CGAL::HalfedgeDS_face_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h index f726b2c4383..d464d21ca1c 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSHalfedge.h @@ -34,8 +34,8 @@ function. The base class `Base_base` provides access to it. (The protection could be bypassed also by an user, but not by accident.) \cgalHasModelsBegin -\cgalModels{::CGAL::HalfedgeDS_halfedge_base} -\cgalModels{::CGAL::HalfedgeDS_halfedge_min_base} +\cgalHasModels{::CGAL::HalfedgeDS_halfedge_base} +\cgalHasModels{::CGAL::HalfedgeDS_halfedge_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h index 3b52eeb48a5..b4399e4121c 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSItems.h @@ -17,9 +17,9 @@ types are described on the manual pages of the concepts `HalfedgeDSVertex`, `HalfedgeDSHalfedge`, and `HalfedgeDSFace` respectively. \cgalHasModelsBegin -\cgalModels{CGAL::HalfedgeDS_min_items} -\cgalModels{CGAL::HalfedgeDS_items_2} -\cgalModels{CGAL::Polyhedron_items_3} +\cgalHasModels{CGAL::HalfedgeDS_min_items} +\cgalHasModels{CGAL::HalfedgeDS_items_2} +\cgalHasModels{CGAL::Polyhedron_items_3} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h index ce576613630..19efa29448b 100644 --- a/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h +++ b/HalfedgeDS/doc/HalfedgeDS/Concepts/HalfedgeDSVertex.h @@ -24,8 +24,8 @@ could be bypassed by an user, but not by accident.) \cgalRefines{CopyConstructible,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::HalfedgeDS_vertex_base} -\cgalModels{CGAL::HalfedgeDS_vertex_min_base} +\cgalHasModels{CGAL::HalfedgeDS_vertex_base} +\cgalHasModels{CGAL::HalfedgeDS_vertex_min_base} \cgalHasModelsEnd \sa `HalfedgeDS` diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h index 39a254eec7e..1aaec1a1a00 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicDelaunayTriangulationTraits_2.h @@ -17,8 +17,8 @@ This concept refines `DelaunayTriangulationTraits_2` because the class `CGAL::Hy internally relies on the class `CGAL::Delaunay_triangulation_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Hyperbolic_Delaunay_triangulation_traits_2} -\cgalModels{CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2} +\cgalHasModels{CGAL::Hyperbolic_Delaunay_triangulation_traits_2} +\cgalHasModels{CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2} \cgalHasModelsEnd */ diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h index 51a984a3c98..f4f5ab1c62e 100644 --- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h +++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Concepts/HyperbolicTriangulationFaceBase_2.h @@ -42,7 +42,7 @@ Delaunay triangulations in the hyperbolic plane. The function `tds_data()` is us internally by the triangulation class during the insertion of points in the triangulation. \cgalHasModelsBegin -\cgalModels{CGAL::Hyperbolic_triangulation_face_base_2} +\cgalHasModels{CGAL::Hyperbolic_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h index 407337905ef..d31bfb5c861 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/ExtremalPolygonTraits_2.h @@ -16,8 +16,8 @@ precondition checking only. Therefore, they need not to be specified, in case that precondition checking is disabled. \cgalHasModelsBegin -\cgalModels{CGAL::Extremal_polygon_area_traits_2} -\cgalModels{CGAL::Extremal_polygon_perimeter_traits_2} +\cgalHasModels{CGAL::Extremal_polygon_area_traits_2} +\cgalHasModels{CGAL::Extremal_polygon_perimeter_traits_2} \cgalHasModelsEnd \sa `CGAL::maximum_area_inscribed_k_gon_2()` diff --git a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h index 79629048104..5a269cc649f 100644 --- a/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h +++ b/Inscribed_areas/doc/Inscribed_areas/Concepts/LargestEmptyIsoRectangleTraits_2.h @@ -11,8 +11,8 @@ this class and some function object types for the required predicates on those primitives. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian} -\cgalModels{CGAL::Homogeneous} +\cgalHasModels{CGAL::Cartesian} +\cgalHasModels{CGAL::Homogeneous} \cgalHasModelsEnd \sa `CGAL::Largest_empty_iso_rectangle_2` diff --git a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h index 0cdbc888f21..222fc82d203 100644 --- a/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/GradientFittingTraits.h @@ -8,7 +8,7 @@ traits class that defines the primitives used by the algorithm. The concept `GradientFittingTraits` defines this common set of requirements. \cgalHasModelsBegin -\cgalModels{CGAL::Interpolation_gradient_fitting_traits_2} +\cgalHasModels{CGAL::Interpolation_gradient_fitting_traits_2} \cgalHasModelsEnd \sa `InterpolationTraits` diff --git a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h index 18b806952cb..d3b8bd79bec 100644 --- a/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h +++ b/Interpolation/doc/Interpolation/Concepts/InterpolationTraits.h @@ -8,8 +8,8 @@ defines the primitives used in the interpolation algorithms. The concept `InterpolationTraits` defines this common set of requirements. \cgalHasModelsBegin -\cgalModels{CGAL::Interpolation_traits_2} -\cgalModels{CGAL::Interpolation_gradient_fitting_traits_2} +\cgalHasModels{CGAL::Interpolation_traits_2} +\cgalHasModels{CGAL::Interpolation_gradient_fitting_traits_2} \cgalHasModelsEnd \sa `GradientFittingTraits` diff --git a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h index fe7cbbd266e..7ca67466f3c 100644 --- a/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h +++ b/Interval_skip_list/doc/Interval_skip_list/Concepts/Interval.h @@ -10,8 +10,8 @@ closed. It is up to the implementer of a model for this concept to define that. \cgalHasModelsBegin -\cgalModels{CGAL::Interval_skip_list_interval} -\cgalModels{CGAL::Level_interval} +\cgalHasModels{CGAL::Interval_skip_list_interval} +\cgalHasModels{CGAL::Level_interval} \cgalHasModelsEnd \sa `Interval_skip_list` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h index 93d2ee819e5..bea789a167b 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/DataKernel.h @@ -14,8 +14,8 @@ Only constructors (from 3 scalars and copy constructors) and access methods to coordinates `x()`, `y()`, `z()` are needed. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian} -\cgalModels{CGAL::Simple_cartesian} +\cgalHasModels{CGAL::Cartesian} +\cgalHasModels{CGAL::Simple_cartesian} \cgalHasModelsEnd \sa `LocalKernel` diff --git a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h index d4981cf4f84..17dbcfae03f 100644 --- a/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h +++ b/Jet_fitting_3/doc/Jet_fitting_3/Concepts/LocalKernel.h @@ -30,8 +30,8 @@ methods to coordinates `x()`, `y()`, `z()` are needed for the point and vector types. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian} -\cgalModels{CGAL::Simple_cartesian} +\cgalHasModels{CGAL::Cartesian} +\cgalHasModels{CGAL::Simple_cartesian} \cgalHasModelsEnd \sa `DataKernel` diff --git a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h index 9433ac9dd05..57ad06016b8 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h +++ b/Kernel_23/doc/Kernel_23/Concepts/GeomObjects.h @@ -9,7 +9,7 @@ namespace Kernel { \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Circle_2} + \cgalHasModels{CGAL::Circle_2} \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` @@ -41,7 +41,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Circle_3} + \cgalHasModels{CGAL::Circle_3} \cgalHasModelsEnd \sa `Kernel::ComputeApproximateArea_3` @@ -71,7 +71,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Direction_2} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Direction_2} \cgalHasModelsEnd \sa `Kernel::CompareAngleWithXAxis_2` @@ -96,7 +97,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Direction_3} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Direction_3} \cgalHasModelsEnd \sa `Kernel::ConstructDirection_3` @@ -118,7 +120,7 @@ A type representing isocuboids in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Iso_cuboid_3} +\cgalHasModels{CGAL::Iso_cuboid_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -144,7 +146,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Iso_rectangle_2} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Iso_rectangle_2} \cgalHasModelsEnd \sa `Kernel::ConstructIsoRectangle_2` @@ -177,7 +180,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Line_2} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Line_2} \cgalHasModelsEnd \sa `Kernel::CompareXAtY_2` @@ -214,7 +218,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Line_3} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Line_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -246,7 +251,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Object} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Object} \cgalHasModelsEnd \sa `Kernel::Assign_2` @@ -268,7 +274,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Object} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Object} \cgalHasModelsEnd \sa `Kernel::Assign_3` @@ -288,7 +295,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Plane_3} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Plane_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -326,7 +334,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Point_2} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Point_2} \cgalHasModelsEnd \sa `Kernel::Angle_2` @@ -386,7 +395,8 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} - \cgalModels{CGAL::Point_3} + \cgalHasModelsBegin + \cgalHasModels{CGAL::Point_3} \cgalHasModelsEnd \sa `Kernel::Angle_3` @@ -449,7 +459,7 @@ A type representing rays in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Ray_2} +\cgalHasModels{CGAL::Ray_2} \cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` @@ -483,7 +493,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Ray_3} + \cgalHasModels{CGAL::Ray_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -513,7 +523,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Segment_2} + \cgalHasModels{CGAL::Segment_2} \cgalHasModelsEnd \sa `Kernel::CollinearHasOn_2` @@ -549,7 +559,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Segment_3} + \cgalHasModels{CGAL::Segment_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredDistance_3` @@ -581,7 +591,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Sphere_3} + \cgalHasModels{CGAL::Sphere_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -613,7 +623,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Tetrahedron_3} + \cgalHasModels{CGAL::Tetrahedron_3} \cgalHasModelsEnd \sa `Kernel::BoundedSide_3` @@ -646,7 +656,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Triangle_2} + \cgalHasModels{CGAL::Triangle_2} \cgalHasModelsEnd \sa `Kernel::BoundedSide_2` @@ -681,7 +691,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Triangle_3} + \cgalHasModels{CGAL::Triangle_3} \cgalHasModelsEnd \sa `Kernel::ComputeSquaredArea_3` @@ -708,7 +718,7 @@ public: \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin - \cgalModels{CGAL::Vector_2} + \cgalHasModels{CGAL::Vector_2} \cgalHasModelsEnd \sa `Kernel::ComputeDeterminant_2` @@ -743,7 +753,7 @@ A type representing vectors in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Vector_3} +\cgalHasModels{CGAL::Vector_3} \cgalHasModelsEnd \sa `Kernel::CompareDihedralAngle_3` @@ -781,7 +791,7 @@ A type representing weighted points in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Weighted_point_2} +\cgalHasModels{CGAL::Weighted_point_2} \cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_2` @@ -810,7 +820,7 @@ A type representing weighted points in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Weighted_point_3} +\cgalHasModels{CGAL::Weighted_point_3} \cgalHasModelsEnd \sa `Kernel::ConstructWeightedPoint_3` diff --git a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h index 2da2b9d8fb9..e312763fd33 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/Kernel.h +++ b/Kernel_23/doc/Kernel_23/Concepts/Kernel.h @@ -21,14 +21,14 @@ When the result type is not determined, no prefix is used. \cgalHasModelsBegin - \cgalModels{CGAL::Cartesian} - \cgalModels{CGAL::Homogeneous} - \cgalModels{CGAL::Simple_cartesian} - \cgalModels{CGAL::Simple_homogeneous} - \cgalModels{CGAL::Filtered_kernel} - \cgalModels{CGAL::Exact_predicates_exact_constructions_kernel} - \cgalModels{CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt} - \cgalModels{CGAL::Exact_predicates_inexact_constructions_kernel} + \cgalHasModels{CGAL::Cartesian} + \cgalHasModels{CGAL::Homogeneous} + \cgalHasModels{CGAL::Simple_cartesian} + \cgalHasModels{CGAL::Simple_homogeneous} + \cgalHasModels{CGAL::Filtered_kernel} + \cgalHasModels{CGAL::Exact_predicates_exact_constructions_kernel} + \cgalHasModels{CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt} + \cgalHasModels{CGAL::Exact_predicates_inexact_constructions_kernel} \cgalHasModelsEnd \sa `Kernel_d` diff --git a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h index 4a8e19db8cd..fd43b0acbca 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/KernelWithLifting_d.h @@ -9,8 +9,8 @@ unclear in kernels of fixed dimension. \cgalRefines{Kernel_d} \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} \cgalHasModelsEnd */ class KernelWithLifting_d { diff --git a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h index c4ac4f607c8..6b484f16e14 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/Kernel_d.h @@ -19,10 +19,10 @@ constructive procedures in the kernel. There are also function objects replacing operators, especially for equality testing. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} \cgalHasModelsEnd */ class Kernel_d { diff --git a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h index 8dff375eaea..e0e523e5363 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/LinearAlgebraTraits_d.h @@ -14,8 +14,8 @@ system \f$ A x = b\f$ unsolvable it also returns a vector \f$ c\f$ such that \f$ c^T A = 0\f$ and \f$ c^T b \neq 0\f$. \cgalHasModelsBegin -\cgalModels{CGAL::Linear_algebraHd} -\cgalModels{CGAL::Linear_algebraCd} +\cgalHasModels{CGAL::Linear_algebraHd} +\cgalHasModels{CGAL::Linear_algebraCd} \cgalHasModelsEnd */ diff --git a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h index abc3d27eaf2..4f40ff9f074 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h +++ b/Linear_cell_complex/doc/Linear_cell_complex/Concepts/LinearCellComplexItems.h @@ -10,7 +10,7 @@ The concept `LinearCellComplexItems` refines the concept of `GenericMapItems` by The first type in `Attributes` tuple must be a model of the `CellAttributeWithPoint` concept. \cgalHasModelsBegin -\cgalModels{CGAL::Linear_cell_complex_min_items} +\cgalHasModels{CGAL::Linear_cell_complex_min_items} \cgalHasModelsEnd \sa `LinearCellComplex` diff --git a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h index 9a7b265540b..db4833f4218 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h +++ b/Matrix_search/doc/Matrix_search/Concepts/BasicMatrix.h @@ -9,7 +9,7 @@ types and operations in order to be a model for `BasicMatrix`. \cgalHasModelsBegin -\cgalModels{CGAL::Dynamic_matrix} +\cgalHasModels{CGAL::Dynamic_matrix} \cgalHasModelsEnd \sa `MonotoneMatrixSearchTraits` diff --git a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h index b20b74de1d0..4c40f6e5138 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/MonotoneMatrixSearchTraits.h @@ -22,7 +22,7 @@ matrix classes. \cgalHasModelsBegin -\cgalModels{CGAL::Dynamic_matrix} +\cgalHasModels{CGAL::Dynamic_matrix} \cgalHasModelsEnd \sa `CGAL::monotone_matrix_search()` diff --git a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h index 99c3cfcba77..94bea1becca 100644 --- a/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h +++ b/Matrix_search/doc/Matrix_search/Concepts/SortedMatrixSearchTraits.h @@ -9,7 +9,7 @@ that fulfills a certain feasibility criterion using the function `CGAL::sorted_matrix_search`. \cgalHasModelsBegin -\cgalModels{CGAL::Sorted_matrix_search_traits_adaptor} +\cgalHasModels{CGAL::Sorted_matrix_search_traits_adaptor} \cgalHasModelsEnd \sa `CGAL::sorted_matrix_search()` diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h index 7bc632d6fa8..e4289950e0c 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshFaceBase_2.h @@ -14,7 +14,7 @@ meshing domain or not. \cgalRefines{ConstrainedTriangulationFaceBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_mesh_face_base_2} +\cgalHasModels{CGAL::Delaunay_mesh_face_base_2} \cgalHasModelsEnd diff --git a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h index ac7a4a69161..26f52e7993c 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/DelaunayMeshVertexBase_2.h @@ -14,7 +14,7 @@ the mesh density everywhere while modifying the mesh. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_mesh_vertex_base_2} +\cgalHasModels{CGAL::Delaunay_mesh_vertex_base_2} \cgalHasModelsEnd diff --git a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h index 06f5f865e33..c4dc873cc51 100644 --- a/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h +++ b/Mesh_2/doc/Mesh_2/Concepts/MeshingCriteria_2.h @@ -38,8 +38,8 @@ to split those with smallest quality first. The predicate `Is_bad` computes the quality of the triangle as a by-product. \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_mesh_criteria_2} -\cgalModels{CGAL::Delaunay_mesh_size_criteria_2} +\cgalHasModels{CGAL::Delaunay_mesh_criteria_2} +\cgalHasModels{CGAL::Delaunay_mesh_size_criteria_2} \cgalHasModelsEnd diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h index 44f0e818123..fe6dee8ad14 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h @@ -44,8 +44,8 @@ each cell (see below). \cgalRefines{SimplicialMeshCellBase_3,RegularTriangulationCellBaseWithWeightedCircumcenter_3,CopyConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Compact_mesh_cell_base_3} -\cgalModels{CGAL::Mesh_cell_base_3} +\cgalHasModels{CGAL::Compact_mesh_cell_base_3} +\cgalHasModels{CGAL::Mesh_cell_base_3} \cgalHasModelsEnd \sa `CGAL::make_mesh_3()` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h index bc8a60b51d3..b278477fb78 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCellCriteria_3.h @@ -10,7 +10,7 @@ The concept `MeshCellCriteria_3` describes the types that handle the refinement criteria for mesh tetrahedra. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_cell_criteria_3} +\cgalHasModels{CGAL::Mesh_cell_criteria_3} \cgalHasModelsEnd \sa `MeshEdgeCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h index dcb2123ec62..895fa9e8c0f 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteriaWithFeatures_3.h @@ -15,7 +15,7 @@ that describes the requirements, in terms of sizing, for the discretization of t \cgalRefines{MeshCriteria_3} \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_criteria_3} +\cgalHasModels{CGAL::Mesh_criteria_3} \cgalHasModelsEnd \sa `MeshEdgeCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h index 83fad908d25..43587310ddd 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshCriteria_3.h @@ -13,7 +13,7 @@ are described by the concept `MeshFacetCriteria_3`. The concept `MeshCriteria_3` encapsulates these concepts. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_criteria_3} +\cgalHasModels{CGAL::Mesh_criteria_3} \cgalHasModelsEnd \sa `MeshFacetCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h index d3f7d1e61ea..c264f53332c 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainField_3.h @@ -6,7 +6,7 @@ The concept `MeshDomainField_3` describes a scalar field which could be queried at any point of the space. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_constant_domain_field_3} +\cgalHasModels{CGAL::Mesh_constant_domain_field_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h index 3a3a79f1105..2dc7f6acd98 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomainWithFeatures_3.h @@ -18,8 +18,8 @@ between two ordered points on the same curve. \cgalRefines{MeshDomain_3} \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_domain_with_polyline_features_3} -\cgalModels{CGAL::Polyhedral_mesh_domain_with_features_3} +\cgalHasModels{CGAL::Mesh_domain_with_polyline_features_3} +\cgalHasModels{CGAL::Polyhedral_mesh_domain_with_features_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h index 03ca9f2fef7..401e5f8efc1 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshDomain_3.h @@ -30,8 +30,8 @@ if it includes points which are strictly inside and strictly outside the domain (resp. the subdomain). \cgalHasModelsBegin -\cgalModels{CGAL::Polyhedral_mesh_domain_3} -\cgalModels{CGAL::Labeled_mesh_domain_3} +\cgalHasModels{CGAL::Polyhedral_mesh_domain_3} +\cgalHasModels{CGAL::Labeled_mesh_domain_3} \cgalHasModelsEnd \sa `MeshVertexBase_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h index 930a627cc76..367fda23008 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshEdgeCriteria_3.h @@ -8,7 +8,7 @@ It provides an upper bound for the distance between two protecting ball centers that are consecutive on a 1-feature. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_edge_criteria_3} +\cgalHasModels{CGAL::Mesh_edge_criteria_3} \cgalHasModelsEnd \sa `MeshCellCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h index a0c32629c5a..e8590456276 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshFacetCriteria_3.h @@ -10,7 +10,7 @@ The concept `MeshFacetCriteria_3` describes the types that handle the refinement criteria for surface facets. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_facet_criteria_3} +\cgalHasModels{CGAL::Mesh_facet_criteria_3} \cgalHasModelsEnd \sa `MeshCellCriteria_3` diff --git a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h index 20a62546c2c..be66168fa4c 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/MeshVertexBase_3.h @@ -23,7 +23,7 @@ each cell (see below). \cgalRefines{SimplicialMeshVertexBase_3,RegularTriangulationVertexBase_3,SurfaceMeshVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_vertex_base_3} +\cgalHasModels{CGAL::Mesh_vertex_base_3} \cgalHasModelsEnd \sa `CGAL::make_mesh_3()` diff --git a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h index 7be6df1aece..b009b35f6d4 100644 --- a/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h +++ b/Mesh_3/doc/Mesh_3/Concepts/TriangleAccessor_3.h @@ -6,7 +6,7 @@ The concept `TriangleAccessor_3` represents an accessor to a triangulated polyhe surface, intersection free and without boundaries. \cgalHasModelsBegin -\cgalModels{CGAL::Triangle_accessor_3,K>} +\cgalHasModels{CGAL::Triangle_accessor_3,K>} \cgalHasModelsEnd \sa `CGAL::Polyhedral_mesh_domain_3` diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h index 848c46adfda..547dde07838 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonConvexDecomposition_2.h @@ -7,11 +7,11 @@ decomposing an input polygon \f$ P\f$ into a set of convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \f$ \cup_{i=1}^{k}{P_k} = P\f$. \cgalHasModelsBegin -\cgalModels{CGAL::Small_side_angle_bisector_decomposition_2} -\cgalModels{CGAL::Optimal_convex_decomposition_2} -\cgalModels{CGAL::Hertel_Mehlhorn_convex_decomposition_2} -\cgalModels{CGAL::Greene_convex_decomposition_2} -\cgalModels{CGAL::Polygon_nop_decomposition_2} +\cgalHasModels{CGAL::Small_side_angle_bisector_decomposition_2} +\cgalHasModels{CGAL::Optimal_convex_decomposition_2} +\cgalHasModels{CGAL::Hertel_Mehlhorn_convex_decomposition_2} +\cgalHasModels{CGAL::Greene_convex_decomposition_2} +\cgalHasModels{CGAL::Polygon_nop_decomposition_2} \cgalHasModelsEnd */ diff --git a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h index 6cf7eb45c35..5a1fac77173 100644 --- a/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h +++ b/Minkowski_sum_2/doc/Minkowski_sum_2/Concepts/PolygonWithHolesConvexDecomposition_2.h @@ -10,8 +10,8 @@ convex sub-polygons \f$ P_1, \ldots, P_k\f$, such that \cgalRefines{PolygonConvexDecomposition_2} \cgalHasModelsBegin -\cgalModels{CGAL::Polygon_vertical_decomposition_2} -\cgalModels{CGAL::Polygon_triangulation_decomposition_2} +\cgalHasModels{CGAL::Polygon_vertical_decomposition_2} +\cgalHasModels{CGAL::Polygon_triangulation_decomposition_2} \cgalHasModelsEnd */ diff --git a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h index b3f2543843f..8509b42a07f 100644 --- a/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h +++ b/Miscellany/doc/Miscellany/Concepts/UniqueHashFunction.h @@ -10,7 +10,7 @@ the integral image type `std::size_t`. The image values have to be unique for all keys in the domain type `Key`. \cgalHasModelsBegin -\cgalModels{CGAL::Handle_hash_function} +\cgalHasModels{CGAL::Handle_hash_function} \cgalHasModelsEnd \sa `CGAL::Unique_hash_map` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h index a78fde1730a..53e9c0badd0 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/ModularTraits.h @@ -9,7 +9,7 @@ Boolean tag `ModularTraits::Is_modularizable`. The mapping into the `Residue_typ provided by the functor `ModularTraits::Modular_image`. \cgalHasModelsBegin -\cgalModels{CGAL::Modular_traits} +\cgalHasModels{CGAL::Modular_traits} \cgalHasModelsEnd \sa `CGAL::Residue` diff --git a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h index 1d7f832f5d8..6bc74bc0084 100644 --- a/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h +++ b/Modular_arithmetic/doc/Modular_arithmetic/Concepts/Modularizable.h @@ -19,20 +19,20 @@ This is due to the fact that the denominator may be zero modulo the prime, which can not be represented. \cgalHasModelsBegin -\cgalModels{int} -\cgalModels{long} -\cgalModels{CORE::BigInt} -\cgalModels{CGAL::Gmpz} -\cgalModels{leda_integer} -\cgalModels{mpz_class} +\cgalHasModels{int} +\cgalHasModels{long} +\cgalHasModels{CORE::BigInt} +\cgalHasModels{CGAL::Gmpz} +\cgalHasModels{leda_integer} +\cgalHasModels{mpz_class} \cgalHasModelsEnd The following types are `Modularizable` iff their template arguments are. \cgalHasModelsBegin -\cgalModels{CGAL::Lazy_exact_nt} -\cgalModels{CGAL::Sqrt_extension} -\cgalModels{CGAL::Polynomial} +\cgalHasModels{CGAL::Lazy_exact_nt} +\cgalHasModels{CGAL::Sqrt_extension} +\cgalHasModels{CGAL::Polynomial} \cgalHasModelsEnd \sa `CGAL::Residue` diff --git a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h index c46d39daa54..b6e6da24820 100644 --- a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h +++ b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h @@ -39,9 +39,9 @@ geometry. At the same time it provides extensible geometric primitives on the extended geometric objects. \cgalHasModelsBegin -\cgalModels{CGAL::Extended_cartesian} -\cgalModels{CGAL::Extended_homogeneous} -\cgalModels{CGAL::Filtered_extended_homogeneous} +\cgalHasModels{CGAL::Extended_cartesian} +\cgalHasModels{CGAL::Extended_homogeneous} +\cgalHasModels{CGAL::Filtered_extended_homogeneous} \cgalHasModelsEnd */ diff --git a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h index 40fdf24e2d8..80f3c1e28dc 100644 --- a/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h +++ b/Optimal_bounding_box/doc/Optimal_bounding_box/Concepts/OrientedBoundingBoxTraits.h @@ -9,7 +9,7 @@ a 3x3 matrix type. \cgalRefines{Kernel} \cgalHasModelsBegin -\cgalModels{CGAL::Oriented_bounding_box_traits_3} +\cgalHasModels{CGAL::Oriented_bounding_box_traits_3} \cgalHasModelsEnd */ diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h index 83408944f2b..fdb0781ba26 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraits.h @@ -6,9 +6,9 @@ template parameter of the `CGAL::Orthtree` class. \cgalHasModelsBegin - \cgalModels{CGAL::Orthtree_traits_2} - \cgalModels{CGAL::Orthtree_traits_3} - \cgalModels{CGAL::Orthtree_traits_d} + \cgalHasModels{CGAL::Orthtree_traits_2} + \cgalHasModels{CGAL::Orthtree_traits_3} + \cgalHasModels{CGAL::Orthtree_traits_d} \cgalHasModelsEnd */ class OrthtreeTraits diff --git a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h index 851482d8751..5aeda690079 100644 --- a/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h +++ b/Orthtree/doc/Orthtree/Concepts/OrthtreeTraversal.h @@ -10,10 +10,10 @@ (e.g. preorder, postorder). \cgalHasModelsBegin - \cgalModels{CGAL::Orthtrees::Preorder_traversal} - \cgalModels{CGAL::Orthtrees::Postorder_traversal} - \cgalModels{CGAL::Orthtrees::Leaves_traversal} - \cgalModels{CGAL::Orthtrees::Level_traversal} + \cgalHasModels{CGAL::Orthtrees::Preorder_traversal} + \cgalHasModels{CGAL::Orthtrees::Postorder_traversal} + \cgalHasModels{CGAL::Orthtrees::Leaves_traversal} + \cgalHasModels{CGAL::Orthtrees::Level_traversal} \cgalHasModelsEnd */ class OrthtreeTraversal { diff --git a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h index 6b9be975123..ad0d171d07a 100644 --- a/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/ConvexPartitionIsValidTraits_2.h @@ -7,7 +7,7 @@ by `convex_partition_is_valid_2` for testing the validity of a convex partition of a polygon. \cgalHasModelsBegin -\cgalModels{CGAL::Partition_traits_2} +\cgalHasModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h index 112995c86f1..12b863da2ad 100644 --- a/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/IsYMonotoneTraits_2.h @@ -7,8 +7,8 @@ used with the function `is_y_monotone_2()` that tests whether a sequence of 2D points defines a \f$ y\f$-monotone polygon or not. \cgalHasModelsBegin -\cgalModels{CGAL::Partition_traits_2} -\cgalModels{CGAL::Kernel_traits_2} +\cgalHasModels{CGAL::Partition_traits_2} +\cgalHasModels{CGAL::Kernel_traits_2} \cgalHasModelsEnd \sa `CGAL::Is_y_monotone_2` diff --git a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h index 1ef70344a2d..c1f7de776c6 100644 --- a/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/OptimalConvexPartitionTraits_2.h @@ -9,7 +9,7 @@ an optimal convex partition of a polygon. \cgalRefines{PartitionTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Partition_traits_2} +\cgalHasModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::convex_partition_is_valid_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h index 7edbe6dcde6..537588e4ecf 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionIsValidTraits_2.h @@ -15,7 +15,7 @@ and the concept `YMonotonePartitionTraits_2` for the additional requirements for testing for convexity and \f$ y\f$-monotonicity, respectively. \cgalHasModelsBegin -\cgalModels{CGAL::Partition_is_valid_traits_2} +\cgalHasModels{CGAL::Partition_is_valid_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h index 910d565cf10..955d8da4547 100644 --- a/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/PartitionTraits_2.h @@ -9,7 +9,7 @@ to all traits classes. The concept `PartitionTraits_2` defines this common set o requirements. \cgalHasModelsBegin -\cgalModels{CGAL::Partition_traits_2} +\cgalHasModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h index 662bdb369a9..be190734ab0 100644 --- a/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h +++ b/Partition_2/doc/Partition_2/Concepts/PolygonIsValid.h @@ -7,8 +7,8 @@ valid partition polygon or not, where "valid" can assume any of several meanings (e.g., convex or \f$ y\f$-monotone). \cgalHasModelsBegin -\cgalModels{CGAL::Is_convex_2} -\cgalModels{CGAL::Is_y_monotone_2} +\cgalHasModels{CGAL::Is_convex_2} +\cgalHasModels{CGAL::Is_y_monotone_2} \cgalHasModelsEnd \sa `CGAL::approx_convex_partition_2()` diff --git a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h index 7869a2122e9..aaf6d9eea5a 100644 --- a/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h +++ b/Partition_2/doc/Partition_2/Concepts/YMonotonePartitionIsValidTraits_2.h @@ -7,7 +7,7 @@ by `y_monotone_partition_is_valid_2` for testing the validity of a \f$ y\f$-monotone partition of a polygon. \cgalHasModelsBegin -\cgalModels{CGAL::Partition_traits_2} +\cgalHasModels{CGAL::Partition_traits_2} \cgalHasModelsEnd \sa `CGAL::partition_is_valid_2()` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h index 0ae4f0fedcf..f9a8d6be4d9 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2DelaunayTriangulationTraits_2.h @@ -28,7 +28,7 @@ dual functions are called. The additional predicate type `nearest_vertex(..)` are issued. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_2_Delaunay_triangulation_traits_2} +\cgalHasModels{CGAL::Periodic_2_Delaunay_triangulation_traits_2} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h index 172f176c7cf..3ff8cfc2b53 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2Offset_2.h @@ -8,7 +8,7 @@ The concept `Periodic_2Offset_2` describes a two-/dimensional integer vector with some specialized access functions and operations. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_2_offset_2} +\cgalHasModels{CGAL::Periodic_2_offset_2} \cgalHasModelsEnd \sa `Periodic_2TriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h index da6b89b93a2..41eb5dded8e 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationFaceBase_2.h @@ -14,7 +14,7 @@ vertex \f$ i\f$. \cgalRefines{TriangulationFaceBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_2_triangulation_face_base_2} +\cgalHasModels{CGAL::Periodic_2_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h index 1d93a35edbe..658d1a104da 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationTraits_2.h @@ -25,7 +25,7 @@ Periodic triangulation must fulfill the following requirements: \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_2_triangulation_traits_2} +\cgalHasModels{CGAL::Periodic_2_triangulation_traits_2} \cgalHasModelsEnd \sa `TriangulationTraits_2` diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h index eeae18dcd70..f9d6f4cc5a6 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/Concepts/Periodic_2TriangulationVertexBase_2.h @@ -17,7 +17,7 @@ The storage of the offset is only needed when a triangulation is copied. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_2_triangulation_vertex_base_2} +\cgalHasModels{CGAL::Periodic_2_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h index 73f7d1339a5..27c90fd712b 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomainWithFeatures_3.h @@ -23,7 +23,7 @@ Wrapping any model of `Periodic_3MeshDomain_3` with the class of `Periodic_3MeshDomainWithFeatures_3`. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_domain_with_polyline_features_3 >} +\cgalHasModels{CGAL::Mesh_domain_with_polyline_features_3 >} \cgalHasModelsEnd \sa `CGAL::Periodic_3_function_wrapper` diff --git a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h index b92341527b9..2d4ef680a92 100644 --- a/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h +++ b/Periodic_3_mesh_3/doc/Periodic_3_mesh_3/Concepts/Periodic_3MeshDomain_3.h @@ -21,7 +21,7 @@ is a model of this concept. It is possible to create artificially periodic funct through the class `CGAL::Periodic_3_function_wrapper`. \cgalHasModelsBegin -\cgalModels{CGAL::Labeled_mesh_domain_3} +\cgalHasModels{CGAL::Labeled_mesh_domain_3} \cgalHasModelsEnd \sa `CGAL::Labeled_mesh_domain_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h index 571b9a0fa98..10eab7ef1c8 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3DelaunayTriangulationTraits_3.h @@ -16,7 +16,7 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,DelaunayTriangulationTraits_3} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_Delaunay_triangulation_traits_3} +\cgalHasModels{CGAL::Periodic_3_Delaunay_triangulation_traits_3} \cgalHasModelsEnd In addition to the requirements described by the concepts diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h index 2cb71cf9bcc..6de19e6a0d2 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3Offset_3.h @@ -7,7 +7,7 @@ The concept `Periodic_3Offset_3` describes a three-dimensional integer vector with some specialized access functions and operations. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_offset_3} +\cgalHasModels{CGAL::Periodic_3_offset_3} \cgalHasModelsEnd \sa `Periodic_3TriangulationTraits_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h index 05b10c71e02..1f2c12dbba3 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSCellBase_3.h @@ -6,8 +6,8 @@ \cgalRefines{RegularTriangulationCellBase_3,Periodic_3TriangulationDSCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_cell_base_3 >} -\cgalModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 >} +\cgalHasModels{CGAL::Regular_triangulation_cell_base_3 >} +\cgalHasModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3 >} \cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h index be6214920cb..a0ecbaa24e4 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationDSVertexBase_3.h @@ -6,7 +6,7 @@ \cgalRefines{RegularTriangulationVertexBase_3,Periodic_3TriangulationDSVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_vertex_base_3 >} +\cgalHasModels{CGAL::Regular_triangulation_vertex_base_3 >} \cgalHasModelsEnd The template parameter `Periodic_3RegularTriangulationTraits_3` is expected to be the same as the diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h index cdc5a72ead5..b190e091be4 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3RegularTriangulationTraits_3.h @@ -16,7 +16,7 @@ functor the version without offsets. \cgalRefines{Periodic_3TriangulationTraits_3,RegularTriangulationTraits_3} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_regular_triangulation_traits_3} +\cgalHasModels{CGAL::Periodic_3_regular_triangulation_traits_3} \cgalHasModelsEnd In addition to the requirements described for the traits class diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h index d6e735e497f..5ce61b440a8 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSCellBase_3.h @@ -19,7 +19,7 @@ does not contain any information. \cgalRefines{TriangulationDSCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_triangulation_ds_cell_base_3} +\cgalHasModels{CGAL::Periodic_3_triangulation_ds_cell_base_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h index 2665d89bdef..fe9e9872026 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationDSVertexBase_3.h @@ -13,7 +13,7 @@ a vertex provides access to one of its incident cells through a handle. \cgalRefines{TriangulationDSVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_triangulation_ds_vertex_base_3} +\cgalHasModels{CGAL::Periodic_3_triangulation_ds_vertex_base_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3` diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h index 67b8f33a78a..b25e098a01c 100644 --- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h +++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/Concepts/Periodic_3TriangulationTraits_3.h @@ -15,7 +15,7 @@ functor the version without offsets. \cgalRefines{TriangulationTraits_3} \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_3_triangulation_traits_3} +\cgalHasModels{CGAL::Periodic_3_triangulation_traits_3} \cgalHasModelsEnd \sa `Periodic_3DelaunayTriangulationTraits_3` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h index 77501fa9399..17efb2f3505 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicDelaunayTriangulationTraits_2.h @@ -13,7 +13,7 @@ by any class used to instantiate the first template parameter of the class `CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2} +\cgalHasModels{CGAL::Periodic_4_hyperbolic_Delaunay_triangulation_traits_2} \cgalHasModelsEnd */ diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h index 92d62dfeeb2..2ebf4a74bbd 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationFaceBase_2.h @@ -21,7 +21,7 @@ Hyperbolic translations are represented by a nested type which is provided by th `Periodic_4HyperbolicDelaunayTriangulationTraits_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_4_hyperbolic_triangulation_face_base_2} +\cgalHasModels{CGAL::Periodic_4_hyperbolic_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h index 40b3cb0d34b..5b3c5f915eb 100644 --- a/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/doc/Periodic_4_hyperbolic_triangulation_2/Concepts/Periodic_4HyperbolicTriangulationVertexBase_2.h @@ -15,7 +15,7 @@ A boolean flag indicates whether the face stores a translation or not. The value set when storing or removing a translation. \cgalHasModelsBegin -\cgalModels{CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2} +\cgalHasModels{CGAL::Periodic_4_hyperbolic_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h index 6f58a4de0e8..c27e8b4a706 100644 --- a/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h +++ b/Polygon/doc/Polygon/Concepts/GeneralPolygonWithHoles_2.h @@ -9,8 +9,8 @@ * the holes. * * \cgalHasModelsBegin - * \cgalModels{CGAL::General_polygon_with_holes_2} - * \cgalModels{CGAL::Polygon_with_holes_2} + * \cgalHasModels{CGAL::General_polygon_with_holes_2} + * \cgalHasModels{CGAL::Polygon_with_holes_2} * \cgalHasModelsEnd */ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index 683f7f58136..03d52b5a881 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -7,7 +7,7 @@ /// /// \cgalRefines{CopyConstructible} /// \cgalHasModelsBegin -/// \cgalModels{CGAL::Polygon_mesh_processing::Corefinement::Default_visitor} +/// \cgalHasModels{CGAL::Polygon_mesh_processing::Corefinement::Default_visitor} /// \cgalHasModelsEnd class PMPCorefinementVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h index e524ca75ffe..67b8b029403 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPHolefillingVisitor.h @@ -10,7 +10,7 @@ /// /// \cgalRefines{CopyConstructible} /// \cgalHasModelsBegin -/// \cgalModels{CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor} +/// \cgalHasModels{CGAL::Polygon_mesh_processing::Hole_filling::Default_visitor} /// \cgalHasModelsEnd class PMPHolefillingVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h index 0016e1cb865..0308f62f516 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPPolygonSoupOrientationVisitor.h @@ -8,7 +8,7 @@ /// /// \cgalRefines{CopyConstructible} /// \cgalHasModelsBegin -/// \cgalModels{CGAL::Polygon_mesh_processing::Default_orientation_visitor} +/// \cgalHasModels{CGAL::Polygon_mesh_processing::Default_orientation_visitor} /// \cgalHasModelsEnd class PMPPolygonSoupOrientationVisitor{ diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h index 3bc52ba8786..d091f15fa64 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPTriangulateFaceVisitor.h @@ -7,7 +7,7 @@ /// /// \cgalRefines{CopyConstructible} /// \cgalHasModelsBegin -/// \cgalModels{CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor} +/// \cgalHasModels{CGAL::Polygon_mesh_processing::Triangulate_faces::Default_visitor} /// \cgalHasModelsEnd diff --git a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h index d75b5d0b491..f6b86ba2c1c 100644 --- a/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h +++ b/Polyhedron/doc/Polyhedron/Concepts/PolyhedronItems_3.h @@ -14,9 +14,9 @@ polyhedral surface renames faces to facets. \cgalRefines{HalfedgeDSItems} \cgalHasModelsBegin -\cgalModels{CGAL::Polyhedron_items_3} -\cgalModels{CGAL::Polyhedron_min_items_3} -\cgalModels{CGAL::Polyhedron_items_with_id_3} +\cgalHasModels{CGAL::Polyhedron_items_3} +\cgalHasModels{CGAL::Polyhedron_min_items_3} +\cgalHasModels{CGAL::Polyhedron_items_with_id_3} \cgalHasModelsEnd \sa `CGAL::Polyhedron_3` diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h index bf8fb4b60ab..94f5ed07797 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationCostFunction.h @@ -13,9 +13,9 @@ preserve the overall polyline set shape as much as possible \cgalRefines{CopyConstructible,Assignable} \cgalHasModelsBegin -\cgalModels{CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost} -\cgalModels{CGAL::Polyline_simplification_2::Scaled_squared_distance_cost} -\cgalModels{CGAL::Polyline_simplification_2::Squared_distance_cost} +\cgalHasModels{CGAL::Polyline_simplification_2::Hybrid_squared_distance_cost} +\cgalHasModels{CGAL::Polyline_simplification_2::Scaled_squared_distance_cost} +\cgalHasModels{CGAL::Polyline_simplification_2::Squared_distance_cost} \cgalHasModelsEnd */ diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h index 5d95499fd69..0c2ae58a59f 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationStopPredicate.h @@ -6,9 +6,9 @@ Models of this concept are passed to the polyline simplification algorithm to in when to stop the process. \cgalHasModelsBegin -\cgalModels{CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold} -\cgalModels{CGAL::Polyline_simplification_2::Stop_below_count_threshold} -\cgalModels{CGAL::Polyline_simplification_2::Stop_above_cost_threshold} +\cgalHasModels{CGAL::Polyline_simplification_2::Stop_below_count_ratio_threshold} +\cgalHasModels{CGAL::Polyline_simplification_2::Stop_below_count_threshold} +\cgalHasModels{CGAL::Polyline_simplification_2::Stop_above_cost_threshold} \cgalHasModelsEnd */ diff --git a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h index e4d8d079a59..19838b07ac7 100644 --- a/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h +++ b/Polyline_simplification_2/doc/Polyline_simplification_2/Concepts/PolylineSimplificationVertexBase_2.h @@ -9,7 +9,7 @@ whether a vertex can be removed, and the cost of the removal. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Polyline_simplification_2::Vertex_base_2} +\cgalHasModels{CGAL::Polyline_simplification_2::Vertex_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h index c1c13ad9640..d7d961ac56d 100644 --- a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h +++ b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d.h @@ -32,7 +32,7 @@ is possible to select a certain variable. \sa `Polynomial_d` \cgalHasModelsBegin -\cgalModels{CGAL::Polynomial_traits_d} +\cgalHasModels{CGAL::Polynomial_traits_d} \cgalHasModelsEnd */ diff --git a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h index 2b41053230e..e58552f582f 100644 --- a/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h +++ b/Polynomial/doc/Polynomial/Concepts/Polynomial_d.h @@ -33,7 +33,7 @@ coefficient is a `Field` the polynomial is model of `EuclideanRing`. \sa `PolynomialTraits_d` \cgalHasModelsBegin -\cgalModels{CGAL::Polynomial} +\cgalHasModels{CGAL::Polynomial} \cgalHasModelsEnd */ diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h index a0b89952bc0..874782161e7 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/AllFurthestNeighborsTraits_2.h @@ -8,10 +8,10 @@ needed to compute all furthest neighbors for the vertices of a convex polygon using the function `all_furthest_neighbors_2()`. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian} -\cgalModels{CGAL::Homogeneous} -\cgalModels{CGAL::Simple_cartesian} -\cgalModels{CGAL::Simple_homogeneous} +\cgalHasModels{CGAL::Cartesian} +\cgalHasModels{CGAL::Homogeneous} +\cgalHasModels{CGAL::Simple_cartesian} +\cgalHasModels{CGAL::Simple_homogeneous} \cgalHasModelsEnd \sa `CGAL::all_furthest_neighbors_2()` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h index 1198e0d9869..32004e174ba 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/PolytopeDistanceDTraits.h @@ -7,9 +7,9 @@ This concept defines the requirements for traits classes of \f$ d\f$-dimensional optimisation algorithms. \cgalHasModelsBegin -\cgalModels{CGAL::Polytope_distance_d_traits_2} -\cgalModels{CGAL::Polytope_distance_d_traits_3} -\cgalModels{CGAL::Polytope_distance_d_traits_d} +\cgalHasModels{CGAL::Polytope_distance_d_traits_2} +\cgalHasModels{CGAL::Polytope_distance_d_traits_3} +\cgalHasModels{CGAL::Polytope_distance_d_traits_d} \cgalHasModelsEnd \sa `CGAL::Polytope_distance_d` diff --git a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h index 7295ea2e296..5686aec87e1 100644 --- a/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h +++ b/Polytope_distance_d/doc/Polytope_distance_d/Concepts/WidthTraits_3.h @@ -13,7 +13,7 @@ width-algorithm to have access to the homogeneous representation of points. \cgalHasModelsBegin -\cgalModels{CGAL::Width_default_traits_3} +\cgalHasModels{CGAL::Width_default_traits_3} \cgalHasModelsEnd \sa `CGAL::Width_3` diff --git a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h index 206dbdb1a57..ce598886ee9 100644 --- a/QP_solver/doc/QP_solver/Concepts/LinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/LinearProgram.h @@ -36,9 +36,9 @@ iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. \cgalHasModelsBegin -\cgalModels{CGAL::Quadratic_program} -\cgalModels{CGAL::Quadratic_program_from_mps} -\cgalModels{CGAL::Linear_program_from_iterators} +\cgalHasModels{CGAL::Quadratic_program} +\cgalHasModels{CGAL::Quadratic_program_from_mps} +\cgalHasModels{CGAL::Linear_program_from_iterators} \cgalHasModelsEnd diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h index e9bbee8dadd..b9304ca0737 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeLinearProgram.h @@ -30,9 +30,9 @@ iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. \cgalHasModelsBegin -\cgalModels{CGAL::Quadratic_program} -\cgalModels{CGAL::Quadratic_program_from_mps} -\cgalModels{CGAL::Nonnegative_linear_program_from_iterators} +\cgalHasModels{CGAL::Quadratic_program} +\cgalHasModels{CGAL::Quadratic_program_from_mps} +\cgalHasModels{CGAL::Nonnegative_linear_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator @@ -40,9 +40,9 @@ types, respectively, for `A_iterator`) must be convertible to some common `IntegralDomain` `ET`. \cgalHasModelsBegin -\cgalModels{CGAL::Quadratic_program} -\cgalModels{CGAL::Quadratic_program_from_mps} -\cgalModels{CGAL::Nonnegative_linear_program_from_iterators} +\cgalHasModels{CGAL::Quadratic_program} +\cgalHasModels{CGAL::Quadratic_program_from_mps} +\cgalHasModels{CGAL::Nonnegative_linear_program_from_iterators} \cgalHasModelsEnd \sa `QuadraticProgram` diff --git a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h index 508ac094f4a..07709e9da11 100644 --- a/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/NonnegativeQuadraticProgram.h @@ -34,9 +34,9 @@ iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. \cgalHasModelsBegin -\cgalModels{CGAL::Quadratic_program} -\cgalModels{CGAL::Quadratic_program_from_mps} -\cgalModels{CGAL::Nonnegative_quadratic_program_from_iterators} +\cgalHasModels{CGAL::Quadratic_program} +\cgalHasModels{CGAL::Quadratic_program_from_mps} +\cgalHasModels{CGAL::Nonnegative_quadratic_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator diff --git a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h index 3b3ebe86f27..f5948e20519 100644 --- a/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h +++ b/QP_solver/doc/QP_solver/Concepts/QuadraticProgram.h @@ -35,9 +35,9 @@ iterators over the program data, see below. The program therefore comes in dense representation which includes zero entries. \cgalHasModelsBegin -\cgalModels{CGAL::Quadratic_program} -\cgalModels{CGAL::Quadratic_program_from_mps} -\cgalModels{CGAL::Quadratic_program_from_iterators} +\cgalHasModels{CGAL::Quadratic_program} +\cgalHasModels{CGAL::Quadratic_program_from_mps} +\cgalHasModels{CGAL::Quadratic_program_from_iterators} \cgalHasModelsEnd The value types of all iterator types (nested iterator diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h index e29abc65d3b..f436119cf12 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplexWithFeatures_3InTriangulation_3.h @@ -49,7 +49,7 @@ of the input complex. \cgalRefines{MeshComplex_3InTriangulation_3} \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_complex_3_in_triangulation_3} +\cgalHasModels{CGAL::Mesh_complex_3_in_triangulation_3} \cgalHasModelsEnd \sa `MeshComplex_3InTriangulation_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h index 2bd6bf5d8e8..35a40e898e3 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/MeshComplex_3InTriangulation_3.h @@ -43,7 +43,7 @@ and each boundary surface patch. The data structure encodes the final mesh at the end of the meshing process. \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_complex_3_in_triangulation_3} +\cgalHasModels{CGAL::Mesh_complex_3_in_triangulation_3} \cgalHasModelsEnd \sa `MeshDomain_3` diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h index 37c1aa8a1df..12332226a75 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h @@ -19,10 +19,10 @@ of the triangulation that are surface facets. \cgalRefines{TriangulationCellBase_3,CopyConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Compact_mesh_cell_base_3} -\cgalModels{CGAL::Mesh_cell_base_3} -\cgalModels{CGAL::Simplicial_mesh_cell_base_3} -\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} +\cgalHasModels{CGAL::Compact_mesh_cell_base_3} +\cgalHasModels{CGAL::Mesh_cell_base_3} +\cgalHasModels{CGAL::Simplicial_mesh_cell_base_3} +\cgalHasModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} \cgalHasModelsEnd */ diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h index accc2c9b77a..24878f48bd4 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h @@ -17,9 +17,9 @@ and to an index characteristic of this face. \cgalRefines{TriangulationVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Mesh_vertex_base_3} -\cgalModels{CGAL::Simplicial_mesh_vertex_base_3} -\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3} +\cgalHasModels{CGAL::Mesh_vertex_base_3} +\cgalHasModels{CGAL::Simplicial_mesh_vertex_base_3} +\cgalHasModels{CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3} \cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h index 900c6874eb3..7b630692708 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Descriptor.h @@ -7,8 +7,8 @@ The concept `Descriptor` allows to describe a unique object in an abstract model \cgalRefines{DefaultConstructible,CopyConstructible,Assignable,EqualityComparable} \cgalHasModelsBegin -\cgalModels{Index} -\cgalModels{Handle} +\cgalHasModels{Index} +\cgalHasModels{Handle} \cgalHasModelsEnd */ diff --git a/STL_Extension/doc/STL_Extension/Concepts/Index.h b/STL_Extension/doc/STL_Extension/Concepts/Index.h index 4a3c749305d..7b89ed870e3 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/Index.h +++ b/STL_Extension/doc/STL_Extension/Concepts/Index.h @@ -7,8 +7,8 @@ The concept `Index` is a refinement of `Descriptor` which must be convertible fr \cgalRefines{Descriptor} \cgalHasModelsBegin -\cgalModels{int} -\cgalModels{size_t} +\cgalHasModels{int} +\cgalHasModels{size_t} \cgalHasModelsEnd \cgalHeading{Notation} diff --git a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h index 55cd05e95da..871f9dc3b1b 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h +++ b/STL_Extension/doc/STL_Extension/Concepts/ProjectionObject.h @@ -13,19 +13,19 @@ concept `UnaryFunction`, but takes also care of (const) references. \cgalHasModelsBegin -\cgalModels{CGAL::Identity} -\cgalModels{CGAL::Dereference} -\cgalModels{CGAL::Get_address} -\cgalModels{CGAL::Cast_function_object} -\cgalModels{CGAL::Project_vertex} -\cgalModels{CGAL::Project_facet} -\cgalModels{CGAL::Project_point} -\cgalModels{CGAL::Project_normal} -\cgalModels{CGAL::Project_plane} -\cgalModels{CGAL::Project_next} -\cgalModels{CGAL::Project_prev} -\cgalModels{CGAL::Project_next_opposite} -\cgalModels{CGAL::Project_opposite_prev} +\cgalHasModels{CGAL::Identity} +\cgalHasModels{CGAL::Dereference} +\cgalHasModels{CGAL::Get_address} +\cgalHasModels{CGAL::Cast_function_object} +\cgalHasModels{CGAL::Project_vertex} +\cgalHasModels{CGAL::Project_facet} +\cgalHasModels{CGAL::Project_point} +\cgalHasModels{CGAL::Project_normal} +\cgalHasModels{CGAL::Project_plane} +\cgalHasModels{CGAL::Project_next} +\cgalHasModels{CGAL::Project_prev} +\cgalHasModels{CGAL::Project_next_opposite} +\cgalHasModels{CGAL::Project_opposite_prev} \cgalHasModelsEnd diff --git a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h index 89f447da3b5..c9780c60226 100644 --- a/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h +++ b/STL_Extension/doc/STL_Extension/Concepts/SurjectiveLockDataStructure.h @@ -22,7 +22,7 @@ is the \"thing\" that is locked when one tries to lock `object`. In the previous example, `S(point)` is the voxel containing `point`. \cgalHasModelsBegin -\cgalModels{CGAL::Spatial_lock_grid_3} +\cgalHasModels{CGAL::Spatial_lock_grid_3} \cgalHasModelsEnd */ diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h index 64979029e17..0f3004320b7 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceMesher.h @@ -12,8 +12,8 @@ namespace Scale_space_reconstruction_3 { * points and that returns a set of facets. * * \cgalHasModelsBegin - * \cgalModels{CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher} - * \cgalModels{CGAL::Scale_space_reconstruction_3::Advancing_front_mesher} + * \cgalHasModels{CGAL::Scale_space_reconstruction_3::Alpha_shape_mesher} + * \cgalHasModels{CGAL::Scale_space_reconstruction_3::Advancing_front_mesher} * \cgalHasModelsEnd * */ diff --git a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h index 8eaa935ce3c..20cac9eabdf 100644 --- a/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h +++ b/Scale_space_reconstruction_3/doc/Scale_space_reconstruction_3/Concepts/ScaleSpaceSmoother.h @@ -16,8 +16,8 @@ namespace Scale_space_reconstruction_3 { * reconstruction algorithm. * * \cgalHasModelsBegin - * \cgalModels{CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother} - * \cgalModels{CGAL::Scale_space_reconstruction_3::Jet_smoother} + * \cgalHasModels{CGAL::Scale_space_reconstruction_3::Weighted_PCA_smoother} + * \cgalHasModels{CGAL::Scale_space_reconstruction_3::Jet_smoother} * \cgalHasModelsEnd */ class Smoother diff --git a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h index 75e97ae287b..ede7918eb83 100644 --- a/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h +++ b/SearchStructures/doc/SearchStructures/Concepts/RangeSegmentTreeTraits_k.h @@ -10,12 +10,12 @@ are needed for window queries. \cgalHasModelsBegin -\cgalModels{CGAL::Range_segment_tree_set_traits_2} -\cgalModels{CGAL::Range_segment_tree_set_traits_3} -\cgalModels{CGAL::Range_tree_map_traits_2} -\cgalModels{CGAL::Range_tree_map_traits_3} -\cgalModels{CGAL::Segment_tree_map_traits_2} -\cgalModels{CGAL::Segment_tree_map_traits_3} +\cgalHasModels{CGAL::Range_segment_tree_set_traits_2} +\cgalHasModels{CGAL::Range_segment_tree_set_traits_3} +\cgalHasModels{CGAL::Range_tree_map_traits_2} +\cgalHasModels{CGAL::Range_tree_map_traits_3} +\cgalHasModels{CGAL::Segment_tree_map_traits_2} +\cgalHasModels{CGAL::Segment_tree_map_traits_3} \cgalHasModelsEnd \cgalHeading{Example} diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h index 15c80be49e4..88e901da204 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphDataStructure_2.h @@ -34,7 +34,7 @@ We only describe the additional requirements with respect to the \cgalRefines{ApolloniusGraphDataStructure_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_data_structure_2} +\cgalHasModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h index 4ae9eec2503..98c4ddcd1be 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphFaceBase_2.h @@ -10,7 +10,7 @@ requirements for the face base class of the \cgalRefines{TriangulationFaceBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_face_base_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_face_base_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h index d7a281a8d81..b33a87abea8 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphHierarchyVertexBase_2.h @@ -27,7 +27,7 @@ introduce any constructors in addition to those of the `SegmentDelaunayGraphVertexBase_2` concept. \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 >} +\cgalHasModels{CGAL::Segment_Delaunay_graph_hierarchy_vertex_base_2 >} \cgalHasModelsEnd \sa `SegmentDelaunayGraphDataStructure_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h index 65002722e6d..879c81bdcc0 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphSite_2.h @@ -9,7 +9,7 @@ requirements for the sites of a segment Delaunay graph. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_site_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_site_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h index fbe6887f2eb..e6605fbcdac 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageSite_2.h @@ -12,7 +12,7 @@ by storing handles to points instead of points. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_storage_site_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_storage_site_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h index e733426405d..27ed7f806d6 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphStorageTraits_2.h @@ -16,7 +16,7 @@ See section \ref Segment_Delaunay_graph_2StronglyIntersecting for more informati \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_storage_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_storage_traits_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h index 7297c1db831..933124e25d1 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphTraits_2.h @@ -15,10 +15,10 @@ constructions for sites and several function object types for the predicates. \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_traits_2} -\cgalModels{CGAL::Segment_Delaunay_graph_traits_without_intersections_2} -\cgalModels{CGAL::Segment_Delaunay_graph_filtered_traits_2} -\cgalModels{CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_traits_without_intersections_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_filtered_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_filtered_traits_without_intersections_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` diff --git a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h index 32b0b36ab17..2651f8171ff 100644 --- a/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h +++ b/Segment_Delaunay_graph_2/doc/Segment_Delaunay_graph_2/Concepts/SegmentDelaunayGraphVertexBase_2.h @@ -12,7 +12,7 @@ site of the segment Delaunay graph and provides access to one of its incident faces through a `Face_handle`. \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_vertex_base_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_vertex_base_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphTraits_2` diff --git a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h index a384691661a..62c9a4f8f5b 100644 --- a/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h +++ b/Segment_Delaunay_graph_Linf_2/doc/Segment_Delaunay_graph_Linf_2/Concepts/SegmentDelaunayGraphLinfTraits_2.h @@ -37,10 +37,10 @@ with respect to the \cgalRefines{SegmentDelaunayGraphTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Segment_Delaunay_graph_Linf_traits_2} -\cgalModels{CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2} -\cgalModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2} -\cgalModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_Linf_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_Linf_traits_without_intersections_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_Linf_filtered_traits_without_intersections_2} \cgalHasModelsEnd \sa `SegmentDelaunayGraphSite_2` diff --git a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h index 9005865d80e..a8d30d3a47f 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h +++ b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h @@ -13,7 +13,7 @@ Point and normal property maps have to be provided to extract the points and the normals from the input. \cgalHasModelsBegin -\cgalModels{CGAL::Shape_detection::Efficient_RANSAC_traits} +\cgalHasModels{CGAL::Shape_detection::Efficient_RANSAC_traits} \cgalHasModelsEnd */ class EfficientRANSACTraits{ diff --git a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h index 76926590b35..f0522b061ef 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h +++ b/Shape_detection/doc/Shape_detection/Concepts/NeighborQuery.h @@ -6,10 +6,10 @@ A concept that describes the set of methods used by the `CGAL::Shape_detection:: to access neighbors of an item. \cgalHasModelsBegin -\cgalModels{CGAL::Shape_detection::Point_set::K_neighbor_query} -\cgalModels{CGAL::Shape_detection::Point_set::Sphere_neighbor_query} -\cgalModels{CGAL::Shape_detection::Polygon_mesh::Polyline_graph} -\cgalModels{CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query} +\cgalHasModels{CGAL::Shape_detection::Point_set::K_neighbor_query} +\cgalHasModels{CGAL::Shape_detection::Point_set::Sphere_neighbor_query} +\cgalHasModels{CGAL::Shape_detection::Polygon_mesh::Polyline_graph} +\cgalHasModels{CGAL::Shape_detection::Polygon_mesh::One_ring_neighbor_query} \cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h index 09b97911b5d..e1f2551fa5b 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/RegionType.h +++ b/Shape_detection/doc/Shape_detection/Concepts/RegionType.h @@ -8,13 +8,13 @@ to maintain a region. A region is represented by a set items, which are included in this region. \cgalHasModelsBegin -\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_line_fit_region} -\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region} -\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region} -\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region} -\cgalModels{CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region} -\cgalModels{CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region} -\cgalModels{CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region} +\cgalHasModels{CGAL::Shape_detection::Point_set::Least_squares_line_fit_region} +\cgalHasModels{CGAL::Shape_detection::Point_set::Least_squares_circle_fit_region} +\cgalHasModels{CGAL::Shape_detection::Point_set::Least_squares_plane_fit_region} +\cgalHasModels{CGAL::Shape_detection::Point_set::Least_squares_sphere_fit_region} +\cgalHasModels{CGAL::Shape_detection::Point_set::Least_squares_cylinder_fit_region} +\cgalHasModels{CGAL::Shape_detection::Segment_set::Least_squares_line_fit_region} +\cgalHasModels{CGAL::Shape_detection::Polygon_mesh::Least_squares_plane_fit_region} \cgalHasModelsEnd */ class RegionType { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h index cf96c3abe8e..9803efdf5c2 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/ContourDirections.h @@ -11,9 +11,9 @@ contour edges towards these directions. All contour regularization functions in this package are parameterized by this concept. \cgalHasModelsBegin -\cgalModels{Contours::Longest_direction_2} -\cgalModels{Contours::Multiple_directions_2} -\cgalModels{Contours::User_defined_directions_2} +\cgalHasModels{Contours::Longest_direction_2} +\cgalHasModels{Contours::Multiple_directions_2} +\cgalHasModels{Contours::User_defined_directions_2} \cgalHasModelsEnd */ class ContourDirections { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h index f2cd1486593..ebfa48ea755 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/NeighborQuery.h @@ -10,7 +10,7 @@ A concept that describes the set of methods used by the class a geometric object being regularized. \cgalHasModelsBegin -\cgalModels{Segments::Delaunay_neighbor_query_2} +\cgalHasModels{Segments::Delaunay_neighbor_query_2} \cgalHasModelsEnd */ class NeighborQuery { diff --git a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h index ed3a10b5e28..bb3956c75a3 100644 --- a/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h +++ b/Shape_regularization/doc/Shape_regularization/Concepts/RegularizationType.h @@ -10,8 +10,8 @@ A concept that describes the set of methods used by the class required for setting up the the global regularization problem. \cgalHasModelsBegin -\cgalModels{Segments::Angle_regularization_2} -\cgalModels{Segments::Offset_regularization_2} +\cgalHasModels{Segments::Angle_regularization_2} +\cgalHasModels{Segments::Offset_regularization_2} \cgalHasModelsEnd */ class RegularizationType { diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h index 363d63a6775..e0d7e4196bb 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurfaceTraits_3.h @@ -11,7 +11,7 @@ polyhedral mesh approximating a skin surface \cgalRefines{RegularTriangulationTraits_3} \cgalHasModelsBegin -\cgalModels{CGAL::Skin_surface_traits_3} +\cgalHasModels{CGAL::Skin_surface_traits_3} \cgalHasModelsEnd \sa `CGAL::Skin_surface_3` diff --git a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h index 22146acf83a..58fef5d3800 100644 --- a/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h +++ b/Skin_surface_3/doc/Skin_surface_3/Concepts/SkinSurface_3.h @@ -10,8 +10,8 @@ weighted points and a shrink factor. By default the input balls are grown in such that the skin surface wraps around the input balls. \cgalHasModelsBegin -\cgalModels{CGAL::Skin_surface_3} -\cgalModels{CGAL::Union_of_balls_3} +\cgalHasModels{CGAL::Skin_surface_3} +\cgalHasModels{CGAL::Union_of_balls_3} \cgalHasModelsEnd */ diff --git a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h index 49dd95d0533..5cc0f58e596 100644 --- a/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h +++ b/Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h @@ -12,7 +12,7 @@ some function object types for the required predicates on those primitives. \cgalRefines{ArrangementTraits_2} \cgalHasModelsBegin -\cgalModels{CGAL::Snap_rounding_traits_2} +\cgalHasModels{CGAL::Snap_rounding_traits_2} \cgalHasModelsEnd */ diff --git a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h index 7791fbf59a9..8c22838c7cc 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/DiagonalizeTraits.h @@ -20,7 +20,7 @@ follows: \tparam dim Dimension of the matrices and vectors \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_diagonalize_traits} +\cgalHasModels{CGAL::Eigen_diagonalize_traits} \cgalHasModelsEnd */ template diff --git a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h index f73b3d14396..b20bbdcb36f 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/MixedIntegerProgramTraits.h @@ -8,7 +8,7 @@ class MixedIntegerProgramTraits a Mixed Integer Programming (MIP) problem. \cgalHasModelsBegin -\cgalModels{CGAL::Variable} +\cgalHasModels{CGAL::Variable} \cgalHasModelsEnd */ template @@ -115,7 +115,7 @@ public: constraint in a Mixed Integer Programming (MIP) problem. \cgalHasModelsBegin -\cgalModels{CGAL::Linear_constraint} +\cgalHasModels{CGAL::Linear_constraint} \cgalHasModelsEnd */ template @@ -214,7 +214,7 @@ public: objective function in a Mixed Integer Programming (MIP) problem. \cgalHasModelsBegin -\cgalModels{CGAL::Linear_objective} +\cgalHasModels{CGAL::Linear_objective} \cgalHasModelsEnd */ template @@ -284,9 +284,9 @@ variables, linear objective, and linear constraints (if any) and provides a meth to solve the problem. \cgalHasModelsBegin -\cgalModels{CGAL::Mixed_integer_program_traits} -\cgalModels{CGAL::GLPK_mixed_integer_program_traits} -\cgalModels{CGAL::SCIP_mixed_integer_program_traits} +\cgalHasModels{CGAL::Mixed_integer_program_traits} +\cgalHasModels{CGAL::GLPK_mixed_integer_program_traits} +\cgalHasModels{CGAL::SCIP_mixed_integer_program_traits} \cgalHasModelsEnd */ template diff --git a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h index 49fb8ee1937..11e2d309d26 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/NormalEquationSparseLinearAlgebraTraits_d.h @@ -8,7 +8,7 @@ Concept describing the set of requirements for solving the normal equation \f$ A \sa `SparseLinearAlgebraTraits_d` \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_solver_traits} +\cgalHasModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class NormalEquationSparseLinearAlgebraTraits_d diff --git a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h index 7ed6bf55f2b..f03f5ed21ce 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/QuadraticProgramTraits.h @@ -25,7 +25,7 @@ where \f$ u_i \in \mathbb{R} \cup \{+\infty\} \f$ for all \f$ i \f$. \cgalHasModelsBegin -\cgalModels{CGAL::OSQP_quadratic_program_traits} +\cgalHasModels{CGAL::OSQP_quadratic_program_traits} \cgalHasModelsEnd */ class QuadraticProgramTraits { diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h index 9d236d47d3d..b44b686dbb8 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraTraits_d.h @@ -5,7 +5,7 @@ The concept `SparseLinearAlgebraTraits_d` is used to solve sparse linear systems A\f$ \times \f$ X = B. \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_solver_traits} +\cgalHasModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class SparseLinearAlgebraTraits_d @@ -65,7 +65,7 @@ by a sparse matrix. \cgalRefines{DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_vector} +\cgalHasModels{CGAL::Eigen_vector} \cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` @@ -134,8 +134,8 @@ NT& operator[](Index row); \cgalRefines{Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_sparse_matrix} -\cgalModels{CGAL::Eigen_sparse_symmetric_matrix} +\cgalHasModels{CGAL::Eigen_sparse_matrix} +\cgalHasModels{CGAL::Eigen_sparse_symmetric_matrix} \cgalHasModelsEnd \sa `SparseLinearAlgebraTraits_d` diff --git a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h index c8792ccab3a..7c5f65cc824 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SparseLinearAlgebraWithFactorTraits_d.h @@ -9,7 +9,7 @@ method to solve the system for different right-hand vectors. \cgalRefines{SparseLinearAlgebraTraits_d} \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_solver_traits} +\cgalHasModels{CGAL::Eigen_solver_traits} \cgalHasModelsEnd */ class SparseLinearAlgebraWithFactorTraits_d { diff --git a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h index cd0ec9832ee..dfad56236b8 100644 --- a/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h +++ b/Solver_interface/doc/Solver_interface/Concepts/SvdTraits.h @@ -6,7 +6,7 @@ to solve in the least square sense a linear system with a singular value decomposition \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_svd} +\cgalHasModels{CGAL::Eigen_svd} \cgalHasModelsEnd */ class SvdTraits @@ -54,7 +54,7 @@ public: Concept of vector type used by the concept `SvdTraits`. \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_vector} +\cgalHasModels{CGAL::Eigen_vector} \cgalHasModelsEnd */ class SvdTraits::Vector @@ -93,7 +93,7 @@ Concept of matrix type used by the concept `SvdTraits`. \cgalRefines{DefaultConstructible,Assignable} \cgalHasModelsBegin -\cgalModels{CGAL::Eigen_matrix} +\cgalHasModels{CGAL::Eigen_matrix} \cgalHasModelsEnd */ class SvdTraits::Matrix diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h index 6bf09d1211a..99569575b99 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/GeneralDistance.h @@ -9,8 +9,8 @@ e.g., for a Euclidean distance the transformed distance is the squared Euclidean distance. \cgalHasModelsBegin -\cgalModels{CGAL::Manhattan_distance_iso_box_point} -\cgalModels{CGAL::Euclidean_distance_sphere_point} +\cgalHasModels{CGAL::Manhattan_distance_iso_box_point} +\cgalHasModels{CGAL::Euclidean_distance_sphere_point} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h index a12b6e2a244..658d58f77d2 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/OrthogonalDistance.h @@ -9,8 +9,8 @@ E.g., for an Euclidean distance the transformed distance is the squared Euclidea \cgalRefines{GeneralDistance} \cgalHasModelsBegin -\cgalModels{CGAL::Euclidean_distance} -\cgalModels{CGAL::Weighted_Minkowski_distance} +\cgalHasModels{CGAL::Euclidean_distance} +\cgalHasModels{CGAL::Weighted_Minkowski_distance} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h index 22a34f8c6de..d78a094006e 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/RangeSearchTraits.h @@ -9,12 +9,12 @@ range search queries in a model of `SpatialTree`. \cgalRefines{SearchTraits} \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} -\cgalModels{CGAL::Search_traits_2} -\cgalModels{CGAL::Search_traits_3} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Search_traits_2} +\cgalHasModels{CGAL::Search_traits_3} \cgalHasModelsEnd \sa `SearchTraits` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h index 358c828ff6f..ec5dcdae42d 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SearchTraits.h @@ -6,14 +6,14 @@ The concept `SearchTraits` defines the requirements for the template parameter of the search classes. \cgalHasModelsBegin -\cgalModels{CGAL::Cartesian_d} -\cgalModels{CGAL::Homogeneous_d} -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} -\cgalModels{CGAL::Search_traits_2} -\cgalModels{CGAL::Search_traits_3} -\cgalModels{CGAL::Search_traits_d} -\cgalModels{CGAL::Search_traits} +\cgalHasModels{CGAL::Cartesian_d} +\cgalHasModels{CGAL::Homogeneous_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Search_traits_2} +\cgalHasModels{CGAL::Search_traits_3} +\cgalHasModels{CGAL::Search_traits_d} +\cgalHasModels{CGAL::Search_traits} \cgalHasModelsEnd \sa `RangeSearchTraits` diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h index 357dbbfff46..32855bdf044 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialSeparator.h @@ -12,7 +12,7 @@ other part of space is said to be on the positive side of the separator. \cgalHasModelsBegin -\cgalModels{CGAL::Plane_separator} +\cgalHasModels{CGAL::Plane_separator} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h index aa483a29780..0f505a4864a 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/SpatialTree.h @@ -6,7 +6,7 @@ The concept `SpatialTree` defines the requirements for a tree supporting both neighbor searching and approximate range searching. \cgalHasModelsBegin -\cgalModels{CGAL::Kd_tree} +\cgalHasModels{CGAL::Kd_tree} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h index 6621186a2f7..d4fc0cf64d6 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/Splitter.h @@ -8,13 +8,13 @@ The concept `Splitter` defines the requirements for a function object class impl \cgalAdvancedEnd \cgalHasModelsBegin -\cgalModels{CGAL::Fair} -\cgalModels{CGAL::Median_of_rectangle} -\cgalModels{CGAL::Median_of_max_spread} -\cgalModels{CGAL::Midpoint_of_rectangle} -\cgalModels{CGAL::Midpoint_of_max_spread} -\cgalModels{CGAL::Sliding_fair} -\cgalModels{CGAL::Sliding_midpoint} +\cgalHasModels{CGAL::Fair} +\cgalHasModels{CGAL::Median_of_rectangle} +\cgalHasModels{CGAL::Median_of_max_spread} +\cgalHasModels{CGAL::Midpoint_of_rectangle} +\cgalHasModels{CGAL::Midpoint_of_max_spread} +\cgalHasModels{CGAL::Sliding_fair} +\cgalHasModels{CGAL::Sliding_midpoint} \cgalHasModelsEnd */ diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h index f5f7270e043..9d48912fb45 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/PolygonOffsetBuilderTraits_2.h @@ -8,7 +8,7 @@ The concept `PolygonOffsetBuilderTraits_2` describes the requirements for the ge required by the algorithm class `CGAL::Polygon_offset_builder_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Polygon_offset_builder_traits_2} +\cgalHasModels{CGAL::Polygon_offset_builder_traits_2} \cgalHasModelsEnd \sa `CGAL::Polygon_offset_builder_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h index 5df86d3e2a6..0be531bf0bf 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilderTraits_2.h @@ -8,7 +8,7 @@ The concept `StraightSkeletonBuilderTraits_2` describes the requirements for the geometric traits class required by the algorithm class `CGAL::Straight_skeleton_builder_2`. \cgalHasModelsBegin -\cgalModels{CGAL::Straight_skeleton_builder_traits_2} +\cgalHasModels{CGAL::Straight_skeleton_builder_traits_2} \cgalHasModelsEnd */ class StraightSkeletonBuilderTraits_2 { diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h index 7937ab43535..f18d851ce8b 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonBuilder_2_Visitor.h @@ -6,7 +6,7 @@ The concept `StraightSkeletonBuilder_2_Visitor` describes the requirements of th required by the algorithm class `CGAL::Straight_skeleton_builder_2` in its third template parameter. \cgalHasModelsBegin -\cgalModels{CGAL::Dummy_straight_skeleton_builder_2_visitor} +\cgalHasModels{CGAL::Dummy_straight_skeleton_builder_2_visitor} \cgalHasModelsEnd \sa `CGAL::Straight_skeleton_builder_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h index af125ad42f5..2c476b2e20c 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonFace_2.h @@ -9,7 +9,7 @@ The concept `StraightSkeletonFace_2` describes the requirements for the face typ with support for storage of the incident halfedge. \cgalHasModelsBegin -\cgalModels{CGAL::Straight_skeleton_face_base_2} +\cgalHasModels{CGAL::Straight_skeleton_face_base_2} \cgalHasModelsEnd \sa `StraightSkeletonVertex_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h index 67f6dafc5c4..d047dc14b53 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonHalfedge_2.h @@ -13,7 +13,7 @@ in the contour and skeleton vertices. However, for any halfedge, there is a 2D s given by its `source` and `target` vertices. \cgalHasModelsBegin -\cgalModels{CGAL::Straight_skeleton_halfedge_base_2} +\cgalHasModels{CGAL::Straight_skeleton_halfedge_base_2} \cgalHasModelsEnd \sa `StraightSkeleton_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h index 0bf7cab0c87..beb00c9b520 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonItemsConverter_2.h @@ -7,7 +7,7 @@ as the third template argument to the class `Straight_skeleton_converter_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h index 29f50118cb4..fac06961dec 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeletonVertex_2.h @@ -10,7 +10,7 @@ with support for storage of the incident halfedge. The `StraightSkeletonVertex_2 requires the geometric embedding to be a 2D point. \cgalHasModelsBegin -\cgalModels{CGAL::Straight_skeleton_vertex_base_2} +\cgalHasModels{CGAL::Straight_skeleton_vertex_base_2} \cgalHasModelsEnd \sa `StraightSkeletonHalfedge_2` diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h index 9df0937e9ff..3bcdaa2597d 100644 --- a/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h +++ b/Straight_skeleton_2/doc/Straight_skeleton_2/Concepts/StraightSkeleton_2.h @@ -10,7 +10,7 @@ used to represent a straight skeleton. It refines the concept `Vertex`, `Halfedge`, and `Face` of the halfedge data structure. \cgalHasModelsBegin -\cgalModels{CGAL::Straight_skeleton_2} +\cgalHasModels{CGAL::Straight_skeleton_2} \cgalHasModelsEnd \attention This concept explicitly protects all the modifying diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h index 9e23002f51d..a04c6c6e523 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/Integrator_2.h @@ -10,8 +10,8 @@ provides the operation that integrates a new point from a given point with a predefined step, and according to a specified vector. \cgalHasModelsBegin -\cgalModels{CGAL::Euler_integrator_2} -\cgalModels{CGAL::Runge_kutta_integrator_2} +\cgalHasModels{CGAL::Euler_integrator_2} +\cgalHasModels{CGAL::Runge_kutta_integrator_2} \cgalHasModelsEnd */ diff --git a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h index b79ed1e740f..0cdfedfcb1c 100644 --- a/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h +++ b/Stream_lines_2/doc/Stream_lines_2/Concepts/VectorField_2.h @@ -10,8 +10,8 @@ provides the types of the geometric primitives used in the placement of streamlines and some functions for answering different queries. \cgalHasModelsBegin -\cgalModels{CGAL::Regular_grid_2} -\cgalModels{CGAL::Triangular_field_2} +\cgalHasModels{CGAL::Regular_grid_2} +\cgalHasModels{CGAL::Triangular_field_2} \cgalHasModelsEnd */ diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h index ea351a5d2ba..21326e8a37c 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/DQQMask_3.h @@ -12,7 +12,7 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} \cgalHasModelsBegin -\cgalModels{CGAL::DooSabin_mask_3} +\cgalHasModels{CGAL::DooSabin_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h index 15a337e68c9..3397ef818fe 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PQQMask_3.h @@ -12,7 +12,7 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} \cgalHasModelsBegin -\cgalModels{CGAL::CatmullClark_mask_3} +\cgalHasModels{CGAL::CatmullClark_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h index 190f970bd00..2e799fb5952 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/PTQMask_3.h @@ -11,7 +11,7 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} \cgalHasModelsBegin -\cgalModels{CGAL::Loop_mask_3} +\cgalHasModels{CGAL::Loop_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h index 72823a073e1..2cd7648f637 100644 --- a/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h +++ b/Subdivision_method_3/doc/Subdivision_method_3/Concepts/Sqrt3Mask_3.h @@ -10,7 +10,7 @@ policy concept of geometric computations is used in \cgalRefines{SubdivisionMask_3} \cgalHasModelsBegin -\cgalModels{CGAL::Sqrt3_mask_3} +\cgalHasModels{CGAL::Sqrt3_mask_3} \cgalHasModelsEnd \sa `CGAL::Subdivision_method_3` diff --git a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h index f6e59cdaf67..11f66968dae 100644 --- a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h +++ b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/ErrorMetricProxy.h @@ -7,8 +7,8 @@ computes the fitting error from a face to a proxy, and fits a proxy from a range of faces. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_approximation::L21_metric_plane_proxy} -\cgalModels{CGAL::Surface_mesh_approximation::L2_metric_plane_proxy} +\cgalHasModels{CGAL::Surface_mesh_approximation::L21_metric_plane_proxy} +\cgalHasModels{CGAL::Surface_mesh_approximation::L2_metric_plane_proxy} \cgalHasModelsEnd */ diff --git a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h index 4332ebda74b..5a8a704883d 100644 --- a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h +++ b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/DeformationClosestRotationTraits_3.h @@ -10,8 +10,8 @@ to implement models of this concept. \cgalRefines{DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Deformation_Eigen_closest_rotation_traits_3} -\cgalModels{CGAL::Deformation_Eigen_polar_closest_rotation_traits_3} +\cgalHasModels{CGAL::Deformation_Eigen_closest_rotation_traits_3} +\cgalHasModels{CGAL::Deformation_Eigen_polar_closest_rotation_traits_3} \cgalHasModelsEnd */ diff --git a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h index 35a8d8a2e1a..cf9b2957984 100644 --- a/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h +++ b/Surface_mesh_parameterization/doc/Surface_mesh_parameterization/Concepts/Parameterizer_3.h @@ -13,16 +13,16 @@ the border of a given mesh. Construction and destruction are undefined. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3} -\cgalModels{CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Fixed_border_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::ARAP_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Barycentric_mapping_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Discrete_authalic_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Discrete_conformal_map_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::LSCM_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Mean_value_coordinates_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Circular_border_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Square_border_parameterizer_3} +\cgalHasModels{CGAL::Surface_mesh_parameterization::Two_vertices_parameterizer_3} \cgalHasModelsEnd \sa `CGAL::Surface_mesh_parameterization::Orbifold_Tutte_parameterizer_3` diff --git a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h index 9724634b10f..dd08086b4a5 100644 --- a/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h +++ b/Surface_mesh_shortest_path/doc/Surface_mesh_shortest_path/Concepts/SurfaceMeshShortestPathTraits.h @@ -9,7 +9,7 @@ predicates, and constructions required by the traits class parameter of \cgalRefines{CopyConstructible,Assignable} \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_shortest_path_traits} +\cgalHasModels{CGAL::Surface_mesh_shortest_path_traits} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h index 2bd7a6bd201..907b5db3dd0 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetCost.h @@ -13,9 +13,9 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_simplification::Edge_length_cost} -\cgalModels{CGAL::Surface_mesh_simplification::LindstromTurk_cost} -\cgalModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} +\cgalHasModels{CGAL::Surface_mesh_simplification::Edge_length_cost} +\cgalHasModels{CGAL::Surface_mesh_simplification::LindstromTurk_cost} +\cgalHasModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h index cf87c5e2400..5fdf445d9be 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/GetPlacement.h @@ -15,11 +15,11 @@ or can be intentionally returned to prevent the edge from being collapsed. \cgalRefines{DefaultConstructible,CopyConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_simplification::Midpoint_placement} -\cgalModels{CGAL::Surface_mesh_simplification::LindstromTurk_placement} -\cgalModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} -\cgalModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_placement} -\cgalModels{CGAL::Surface_mesh_simplification::Constrained_placement} +\cgalHasModels{CGAL::Surface_mesh_simplification::Midpoint_placement} +\cgalHasModels{CGAL::Surface_mesh_simplification::LindstromTurk_placement} +\cgalHasModels{CGAL::Surface_mesh_simplification::GarlandHeckbert_policies} +\cgalHasModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_placement} +\cgalHasModels{CGAL::Surface_mesh_simplification::Constrained_placement} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h index 6f53b84171e..19332024102 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/PlacementFilter.h @@ -15,8 +15,8 @@ be absent). The value `boost::none` indicates that the edge should not be collap \cgalRefines{DefaultConstructible,CopyConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_filter} -\cgalModels{CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter} +\cgalHasModels{CGAL::Surface_mesh_simplification::Bounded_normal_change_filter} +\cgalHasModels{CGAL::Surface_mesh_simplification::Polyhedral_envelope_filter} \cgalHasModelsEnd */ diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h index 9a51402119c..e09a0c1f03b 100644 --- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h +++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/Concepts/StopPredicate.h @@ -5,11 +5,11 @@ The concept `StopPredicate` describes the requirements for the predicate which indicates if the simplification process must finish. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_simplification::Edge_count_stop_predicate} -\cgalModels{CGAL::Surface_mesh_simplification::Face_count_stop_predicate} -\cgalModels{CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate} -\cgalModels{CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate} -\cgalModels{CGAL::Surface_mesh_simplification::Edge_length_stop_predicate} +\cgalHasModels{CGAL::Surface_mesh_simplification::Edge_count_stop_predicate} +\cgalHasModels{CGAL::Surface_mesh_simplification::Face_count_stop_predicate} +\cgalHasModels{CGAL::Surface_mesh_simplification::Edge_count_ratio_stop_predicate} +\cgalHasModels{CGAL::Surface_mesh_simplification::Face_count_ratio_stop_predicate} +\cgalHasModels{CGAL::Surface_mesh_simplification::Edge_length_stop_predicate} \cgalHasModelsEnd */ diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h index 3dcc8a0dedf..fbf8c2662c7 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshCellBase_3.h @@ -38,8 +38,8 @@ triangulation. In the following we call surface center of a facet, the center of its biggest Delaunay surface ball. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_cell_base_3} -\cgalModels{CGAL::Surface_mesh_default_triangulation_3::Cell} +\cgalHasModels{CGAL::Surface_mesh_cell_base_3} +\cgalHasModels{CGAL::Surface_mesh_default_triangulation_3::Cell} \cgalHasModelsEnd \sa `SurfaceMeshTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h index 35b923bbb8b..185c14e9e9d 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshComplex_2InTriangulation_3.h @@ -31,7 +31,7 @@ parameter in the function template `CGAL::make_surface_mesh()`. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_complex_2_in_triangulation_3} +\cgalHasModels{CGAL::Surface_mesh_complex_2_in_triangulation_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h index 0f3431af56c..ecc980a35cf 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshFacetsCriteria_3.h @@ -34,7 +34,7 @@ with lowest quality first. The qualities are computed by a function `is_bad(const Facet& f, const Quality& q)`. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_default_criteria_3} +\cgalHasModels{CGAL::Surface_mesh_default_criteria_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h index 672f7466948..412f6503b70 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshTraits_3.h @@ -12,7 +12,7 @@ points if any exists. The concept `SurfaceMeshTraits_3` also includes a funcctor a small set of initial points on the surface. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_traits_generator_3::type} +\cgalHasModels{CGAL::Surface_mesh_traits_generator_3::type} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h index 32663ac10dd..1889afd3c84 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/SurfaceMeshVertexBase_3.h @@ -32,8 +32,8 @@ complex facets incident to the vertex and the number of connected components of the adjacency graph of those facets. \cgalHasModelsBegin -\cgalModels{CGAL::Surface_mesh_vertex_base_3} -\cgalModels{CGAL::Surface_mesh_default_triangulation_3::Vertex} +\cgalHasModels{CGAL::Surface_mesh_vertex_base_3} +\cgalHasModels{CGAL::Surface_mesh_default_triangulation_3::Vertex} \cgalHasModelsEnd \sa `SurfaceMeshComplex_2InTriangulation_3` diff --git a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h index 4b4d11da894..04f2064c682 100644 --- a/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h +++ b/Surface_mesher/doc/Surface_mesher/Concepts/Surface_3.h @@ -9,7 +9,7 @@ are required to be copy constructible and assignable. \cgalHasModelsBegin -\cgalModels{CGAL::Implicit_surface_3} +\cgalHasModels{CGAL::Implicit_surface_3} \cgalHasModelsEnd \sa `CGAL::make_surface_mesh()` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h index e1dc359a13f..be2cbf0b6ce 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSFaceBase_2.h @@ -49,7 +49,7 @@ actually uses as a base class for the class `CGAL::Triangulation_data_structure_2::Face`. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_face_base_2} +\cgalHasModels{CGAL::Triangulation_ds_face_base_2} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h index 994a0f82b9b..6c5cbe4c7e6 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDSVertexBase_2.h @@ -45,7 +45,7 @@ actually uses as a base class for the class of `CGAL::Triangulation_data_structure_2::Vertex`. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_vertex_base_2} +\cgalHasModels{CGAL::Triangulation_ds_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` diff --git a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h index a0731074095..5b458bc3250 100644 --- a/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h +++ b/TDS_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h @@ -65,7 +65,7 @@ When dimension \f$ <\f$ 2, the same information is output for faces of maximal dimension instead of faces. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_data_structure_2} +\cgalHasModels{CGAL::Triangulation_data_structure_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2::Face` @@ -729,7 +729,7 @@ call the `create_vertex()` and `delete_vertex()` methods of the triangulation data structure. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_vertex_base_2} +\cgalHasModels{CGAL::Triangulation_ds_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_2` @@ -852,7 +852,7 @@ have to be used to define new faces and to delete no longer used faces. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_face_base_2} +\cgalHasModels{CGAL::Triangulation_ds_face_base_2} \cgalHasModelsEnd \sa `TriangulationDSFaceBase_2` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h index 8f8ec146dbf..4b586536381 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSCellBase_3.h @@ -34,7 +34,7 @@ which are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_cell_base_3} +\cgalHasModels{CGAL::Triangulation_ds_cell_base_3} \cgalHasModelsEnd \sa `TriangulationDSVertexBase_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h index 0a9d10b04bf..3e3e58e37ea 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDSVertexBase_3.h @@ -29,7 +29,7 @@ are used as base classes for the final vertex and cell classes. More information can be found in Section \ref TDS3secdesign. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_vertex_base_3} +\cgalHasModels{CGAL::Triangulation_ds_vertex_base_3} \cgalHasModelsEnd \sa `TriangulationDSCellBase_3` diff --git a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h index c3a7ba38023..bdd21ca6d4b 100644 --- a/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h +++ b/TDS_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h @@ -66,7 +66,7 @@ list of cells. When dimension < 3, the same information is stored for faces of maximal dimension instead of cells. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_data_structure_3} +\cgalHasModels{CGAL::Triangulation_data_structure_3} \cgalHasModelsEnd \sa `TriangulationDataStructure_3::Vertex` diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h index 342e203e259..ca104a80988 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingCellBase_3.h @@ -7,7 +7,7 @@ Cell base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. \cgalHasModelsBegin -\cgalModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} +\cgalHasModels{CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3} \cgalHasModelsEnd */ diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h index 2ce117b8ff3..484782a6547 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Concepts/RemeshingVertexBase_3.h @@ -7,7 +7,7 @@ Vertex base concept to be used in the triangulation type given to the function `CGAL::tetrahedral_isotropic_remeshing()`. \cgalHasModelsBegin -\cgalModels{Tetrahedral_remeshing::Remeshing_vertex_base_3} +\cgalHasModels{Tetrahedral_remeshing::Remeshing_vertex_base_3} \cgalHasModelsEnd */ diff --git a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h index 1dd4fa17d49..5432de4a1f2 100644 --- a/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/DelaunayTriangulationTraits.h @@ -10,8 +10,8 @@ a Delaunay triangulation. It corresponds to the first template parameter of the \cgalRefines{TriangulationTraits} \cgalHasModelsBegin -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `TriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h index 1afb3084639..8180b4f3007 100644 --- a/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/RegularTriangulationTraits.h @@ -10,8 +10,8 @@ a regular triangulation. It corresponds to the first template parameter of the c \cgalRefines{TriangulationTraits} \cgalHasModelsBegin -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `TriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h index b72f4ee1fd0..3a582c7ba0f 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFace.h @@ -16,7 +16,7 @@ The dimension of a face is implicitly set when first two vertices (`i = 0` and `i = 1`), then the dimension is 1. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_face} +\cgalHasModels{CGAL::Triangulation_face} \cgalHasModelsEnd \sa `TriangulationDSFullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h index 231e29f5a08..df9d474ea4b 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSFullCell.h @@ -37,8 +37,8 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::FullCell} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_full_cell} -\cgalModels{CGAL::Triangulation_full_cell} +\cgalHasModels{CGAL::Triangulation_ds_full_cell} +\cgalHasModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `TriangulationDSVertex` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h index 51fb7cad627..f9be6db6366 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDSVertex.h @@ -37,8 +37,8 @@ of `CGAL::Triangulation_data_structure::Vertex`. \cgalRefines{TriangulationDataStructure::Vertex} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_vertex} -\cgalModels{CGAL::Triangulation_vertex} +\cgalHasModels{CGAL::Triangulation_ds_vertex} +\cgalHasModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \sa `TriangulationDSFullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h index a8da6d39849..6ab5522df50 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationDataStructure.h @@ -70,7 +70,7 @@ The classes `Vertex` and (possibly empty). \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_data_structure} +\cgalHasModels{CGAL::Triangulation_data_structure} \cgalHasModelsEnd \sa `TriangulationDataStructure::Vertex` @@ -663,8 +663,8 @@ only, as geometry is not concerned here. In particular, we only require that the vertex holds a handle to a full cell incident to it in the triangulation. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_vertex} -\cgalModels{CGAL::Triangulation_vertex} +\cgalHasModels{CGAL::Triangulation_ds_vertex} +\cgalHasModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` @@ -772,8 +772,8 @@ are said to be adjacent when they share a facet. Adjacent full cells are called hereafter neighbors. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_ds_full_cell} -\cgalModels{CGAL::Triangulation_full_cell} +\cgalHasModels{CGAL::Triangulation_ds_full_cell} +\cgalHasModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `TriangulationDataStructure::FullCell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h index 95cac2eab13..ff141326deb 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationFullCell.h @@ -11,7 +11,7 @@ represent a full cell. additional specific requirements of `TriangulationFullCell`} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_full_cell} +\cgalHasModels{CGAL::Triangulation_full_cell} \cgalHasModelsEnd \sa `CGAL::Triangulation_full_cell` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h index 198e3a73650..660b270a101 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationTraits.h @@ -15,8 +15,8 @@ then optimized using spatial sorting. This is not required if the points are inserted one by one. \cgalHasModelsBegin -\cgalModels{CGAL::Epick_d} -\cgalModels{CGAL::Epeck_d} +\cgalHasModels{CGAL::Epick_d} +\cgalHasModels{CGAL::Epeck_d} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits` diff --git a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h index 457339f28b0..9648500277a 100644 --- a/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h +++ b/Triangulation/doc/Triangulation/Concepts/TriangulationVertex.h @@ -13,7 +13,7 @@ Compared to ::TriangulationDSVertex, the main difference is the addition of an association of the vertex with a geometric point. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_vertex} +\cgalHasModels{CGAL::Triangulation_vertex} \cgalHasModelsEnd \cgalHeading{Input/Output} diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h index 73951fc22c1..50e30987b42 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/ConstrainedTriangulationFaceBase_2.h @@ -20,7 +20,7 @@ constraints. Defines the same types as the `TriangulationFaceBase_2` concept \cgalHasModelsBegin -\cgalModels{CGAL::Constrained_triangulation_face_base_2} +\cgalHasModels{CGAL::Constrained_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h index 4ec20557747..7602ca70584 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationFaceBase_2.h @@ -35,7 +35,7 @@ in the face a list to store hidden vertices. \cgalRefines{TriangulationFaceBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_face_base_2} +\cgalHasModels{CGAL::Regular_triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationFaceBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h index feee66c0b11..5cbfa1b9442 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/RegularTriangulationVertexBase_2.h @@ -36,7 +36,7 @@ vertex of the triangulation or a hidden vertex. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_vertex_base_2} +\cgalHasModels{CGAL::Regular_triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h index 9a364975955..e83d910e4a4 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationFaceBase_2.h @@ -17,7 +17,7 @@ and only provided for symmetry with the vertex case. \cgalRefines{TriangulationDSFaceBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_face_base_2} +\cgalHasModels{CGAL::Triangulation_face_base_2} \cgalHasModelsEnd \sa `TriangulationVertexBase_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h index 83e3992d81c..416da371080 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationHierarchyVertexBase_2.h @@ -15,7 +15,7 @@ next and previous level triangulations. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_hierarchy_vertex_base_2} +\cgalHasModels{CGAL::Triangulation_hierarchy_vertex_base_2} \cgalHasModelsEnd \sa `CGAL::Triangulation_hierarchy_2` diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h index 8cca35af421..63ffeab1a29 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBaseWithInfo_2.h @@ -9,7 +9,7 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_vertex_base_with_info_2} +\cgalHasModels{CGAL::Triangulation_vertex_base_with_info_2} \cgalHasModelsEnd */ diff --git a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h index 9790b02cecc..94e5c7da0a0 100644 --- a/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h +++ b/Triangulation_2/doc/Triangulation_2/Concepts/TriangulationVertexBase_2.h @@ -16,7 +16,7 @@ the vertex base of a triangulation stores a point. \cgalRefines{TriangulationDSVertexBase_2} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_vertex_base_2} +\cgalHasModels{CGAL::Triangulation_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h index b71b96cc439..fdb8b9ee870 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationCellBase_3.h @@ -12,8 +12,8 @@ in the cell an operator that computes its circumcenter. \cgalRefines{TriangulationCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_triangulation_cell_base_3} -\cgalModels{CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3} +\cgalHasModels{CGAL::Delaunay_triangulation_cell_base_3} +\cgalHasModels{CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3} \cgalHasModelsEnd \sa `DelaunayTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h index 3493e4ef1fa..3a7514fab6a 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/DelaunayTriangulationTraits_3.h @@ -11,13 +11,13 @@ predicates and constructions on these objects. \cgalRefines{TriangulationTraits_3} \cgalHasModelsBegin -\cgalModels{CGAL::Exact_predicates_inexact_constructions_kernel (recommended)} -\cgalModels{CGAL::Exact_predicates_exact_constructions_kernel (recommended for Voronoi)} -\cgalModels{CGAL::Filtered_kernel} -\cgalModels{CGAL::Cartesian} -\cgalModels{CGAL::Simple_cartesian} -\cgalModels{CGAL::Homogeneous} -\cgalModels{CGAL::Simple_homogeneous} +\cgalHasModels{CGAL::Exact_predicates_inexact_constructions_kernel (recommended)} +\cgalHasModels{CGAL::Exact_predicates_exact_constructions_kernel (recommended for Voronoi)} +\cgalHasModels{CGAL::Filtered_kernel} +\cgalHasModels{CGAL::Cartesian} +\cgalHasModels{CGAL::Simple_cartesian} +\cgalHasModels{CGAL::Homogeneous} +\cgalHasModels{CGAL::Simple_homogeneous} \cgalHasModelsEnd In addition to the requirements described for the traits class of diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h index cd00268b2b9..6851d616de3 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBaseWithWeightedCircumcenter_3.h @@ -20,7 +20,7 @@ circumcenter by calling `invalidate_weighted_circumcenter_cache()`. \cgalRefines{RegularTriangulationCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3} +\cgalHasModels{CGAL::Regular_triangulation_cell_base_with_weighted_circumcenter_3} \cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h index b95816da296..ffafd4be04e 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationCellBase_3.h @@ -36,7 +36,7 @@ and an operator to compute its weighted circumcenter. \cgalRefines{TriangulationCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_cell_base_3} +\cgalHasModels{CGAL::Regular_triangulation_cell_base_3} \cgalHasModelsEnd \sa `RegularTriangulationTraits_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h index 09d9ce0a0fc..3e5f0e3ba47 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/RegularTriangulationVertexBase_3.h @@ -10,7 +10,7 @@ by adding a geometric point member. \cgalRefines{TriangulationDSVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Regular_triangulation_vertex_base_3} +\cgalHasModels{CGAL::Regular_triangulation_vertex_base_3} \cgalHasModelsEnd \sa `RegularTriangulationCellBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h index 84add9f98c9..e7d5d046a08 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBaseWithInfo_3.h @@ -9,7 +9,7 @@ and provides an additional information storage. \cgalRefines{TriangulationCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_cell_base_with_info_3} +\cgalHasModels{CGAL::Triangulation_cell_base_with_info_3} \cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h index 8b26efc32c4..f405c54afba 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationCellBase_3.h @@ -11,8 +11,8 @@ structure apply. \cgalRefines{TriangulationDSCellBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_cell_base_3} -\cgalModels{CGAL::Triangulation_cell_base_with_info_3} +\cgalHasModels{CGAL::Triangulation_cell_base_3} +\cgalHasModels{CGAL::Triangulation_cell_base_with_info_3} \cgalHasModelsEnd \sa `TriangulationVertexBase_3` diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h index 37e2fd97140..06b02f5c227 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBaseWithInfo_3.h @@ -9,7 +9,7 @@ and provides an additional information storage. \cgalRefines{TriangulationVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_vertex_base_with_info_3} +\cgalHasModels{CGAL::Triangulation_vertex_base_with_info_3} \cgalHasModelsEnd */ diff --git a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h index 5110b87d71f..45955a3a8f0 100644 --- a/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h +++ b/Triangulation_3/doc/Triangulation_3/Concepts/TriangulationVertexBase_3.h @@ -10,8 +10,8 @@ for the triangulation data structure. \cgalRefines{TriangulationDSVertexBase_3} \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_vertex_base_3} -\cgalModels{CGAL::Triangulation_vertex_base_with_info_3} +\cgalHasModels{CGAL::Triangulation_vertex_base_3} +\cgalHasModels{CGAL::Triangulation_vertex_base_with_info_3} \cgalHasModelsEnd \sa `TriangulationCellBase_3` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h index df1da8edad5..6c4dcec4016 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/DelaunayTriangulationOnSphereTraits_2.h @@ -12,8 +12,8 @@ To the requirements listed within the concept `TriangulationOnSphereTraits_2`, this concept adds types and functors requirements related to build the dual on the sphere. \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} -\cgalModels{CGAL::Projection_on_sphere_traits_3} +\cgalHasModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} +\cgalHasModels{CGAL::Projection_on_sphere_traits_3} \cgalHasModelsEnd */ class DelaunayTriangulationOnSphereTraits_2 diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h index 5e49109a4da..b87fe2a5deb 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereFaceBase_2.h @@ -20,7 +20,7 @@ In this case, fictitious faces are added to the triangulation, called ghost f such that the triangulation is a topological sphere. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_on_sphere_face_base_2} +\cgalHasModels{CGAL::Triangulation_on_sphere_face_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h index ea94dfc395c..4ccc0171175 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereTraits_2.h @@ -14,8 +14,8 @@ In particular, the traits class is expected to contain information about the sph on which the points of the triangulation lie, as well as to provide means to change this information. \cgalHasModelsBegin -\cgalModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} -\cgalModels{CGAL::Projection_on_sphere_traits_3} +\cgalHasModels{CGAL::Delaunay_triangulation_on_sphere_traits_2} +\cgalHasModels{CGAL::Projection_on_sphere_traits_3} \cgalHasModelsEnd \sa `DelaunayTriangulationOnSphereTraits_2` diff --git a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h index 23f0fbce9e0..721c593a940 100644 --- a/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h +++ b/Triangulation_on_sphere_2/doc/Triangulation_on_sphere_2/Concepts/TriangulationOnSphereVertexBase_2.h @@ -10,7 +10,7 @@ It refines the concept `TriangulationDSVertexBase_2`, adding geometric informati the vertex base of a triangulation stores a point. \cgalHasModelsBegin -\cgalModels{CGAL::Triangulation_on_sphere_vertex_base_2} +\cgalHasModels{CGAL::Triangulation_on_sphere_vertex_base_2} \cgalHasModelsEnd \sa `TriangulationDataStructure_2` diff --git a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h index a39c04b2179..0ec12be0297 100644 --- a/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h +++ b/Visibility_2/doc/Visibility_2/Concepts/Visibility_2.h @@ -7,9 +7,9 @@ A model of the `Visibility_2` concept can be attached to an `Arrangement_2` inst answer visibility queries within the faces of this arrangement. \cgalHasModelsBegin -\cgalModels{CGAL::Simple_polygon_visibility_2} -\cgalModels{CGAL::Rotational_sweep_visibility_2} -\cgalModels{CGAL::Triangular_expansion_visibility_2} +\cgalHasModels{CGAL::Simple_polygon_visibility_2} +\cgalHasModels{CGAL::Rotational_sweep_visibility_2} +\cgalHasModels{CGAL::Triangular_expansion_visibility_2} \cgalHasModelsEnd */ diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h index bec40a64a9f..22bf669821e 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationPolicy_2.h @@ -14,15 +14,15 @@ graph they take as an argument, the last ones does. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Identity_policy_2} -\cgalModels{CGAL::Apollonius_graph_degeneracy_removal_policy_2} -\cgalModels{CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2} -\cgalModels{CGAL::Delaunay_triangulation_degeneracy_removal_policy_2} -\cgalModels{CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2} -\cgalModels{CGAL::Regular_triangulation_degeneracy_removal_policy_2} -\cgalModels{CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2} -\cgalModels{CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2} -\cgalModels{CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Identity_policy_2} +\cgalHasModels{CGAL::Apollonius_graph_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Apollonius_graph_caching_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Delaunay_triangulation_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Delaunay_triangulation_caching_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Regular_triangulation_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Regular_triangulation_caching_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_degeneracy_removal_policy_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_caching_degeneracy_removal_policy_2} \cgalHasModelsEnd \sa `DelaunayGraph_2` diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h index 452c25d3e02..56bc3b66ed6 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/Concepts/AdaptationTraits_2.h @@ -12,10 +12,10 @@ tag is provided for determining whether this functor is defined or not. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} \cgalHasModelsBegin -\cgalModels{CGAL::Apollonius_graph_adaptation_traits_2} -\cgalModels{CGAL::Delaunay_triangulation_adaptation_traits_2} -\cgalModels{CGAL::Regular_triangulation_adaptation_traits_2} -\cgalModels{CGAL::Segment_Delaunay_graph_adaptation_traits_2} +\cgalHasModels{CGAL::Apollonius_graph_adaptation_traits_2} +\cgalHasModels{CGAL::Delaunay_triangulation_adaptation_traits_2} +\cgalHasModels{CGAL::Regular_triangulation_adaptation_traits_2} +\cgalHasModels{CGAL::Segment_Delaunay_graph_adaptation_traits_2} \cgalHasModelsEnd \sa `DelaunayGraph_2` diff --git a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h index 76104f35929..0a59f4ae4e1 100644 --- a/Weights/doc/Weights/Concepts/BarycentricWeights_2.h +++ b/Weights/doc/Weights/Concepts/BarycentricWeights_2.h @@ -6,9 +6,9 @@ A concept that describes the set of methods required in all classes used in the computation of 2D generalized barycentric weights. \cgalHasModelsBegin -\cgalModels{CGAL::Weights::Wachspress_weights_2} -\cgalModels{CGAL::Weights::Mean_value_weights_2} -\cgalModels{CGAL::Weights::Discrete_harmonic_weights_2} +\cgalHasModels{CGAL::Weights::Wachspress_weights_2} +\cgalHasModels{CGAL::Weights::Mean_value_weights_2} +\cgalHasModels{CGAL::Weights::Discrete_harmonic_weights_2} \cgalHasModelsEnd */ class BarycentricWeights_2 { From e11bbab4f64f5601d94e3f18bffa9dd9fbc9b291 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:32:52 +0200 Subject: [PATCH 14/94] De-compactify Simplicial_mesh_cell_base_3 Give it a cell base instead of re-implementing everything. --- SMDS_3/examples/SMDS_3/c3t3_example.cpp | 2 +- .../CGAL/Simplicial_mesh_cell_base_3.h | 234 ++++-------------- SMDS_3/test/SMDS_3/test_simplicial_cb_vb.cpp | 2 +- 3 files changed, 52 insertions(+), 186 deletions(-) diff --git a/SMDS_3/examples/SMDS_3/c3t3_example.cpp b/SMDS_3/examples/SMDS_3/c3t3_example.cpp index 14501c395c1..5ebb5cc3e35 100644 --- a/SMDS_3/examples/SMDS_3/c3t3_example.cpp +++ b/SMDS_3/examples/SMDS_3/c3t3_example.cpp @@ -21,7 +21,7 @@ using Surface_patch_index = unsigned char; using Curve_index = char; using Corner_index = short; -using Cb = CGAL::Simplicial_mesh_cell_base_3; +using Cb = CGAL::Simplicial_mesh_cell_base_3; using Vb = CGAL::Simplicial_mesh_vertex_base_3; diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h index ee49f572236..b1a16d1b8f0 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h @@ -32,187 +32,48 @@ namespace CGAL { -// Class Simplicial_mesh_cell_3 -// Cell base class used for tetrahedral remeshing -// Adds information to Cb about the cell of the input complex containing it -template< class Subdomain_index_, - class Surface_patch_index_, - class TDS> +template class Simplicial_mesh_cell_3 + : public Cb { public: - using Triangulation_data_structure = TDS; - using Vertex_handle = typename TDS::Vertex_handle; - using Cell_handle = typename TDS::Cell_handle; - using Vertex = typename TDS::Vertex; - using Cell = typename TDS::Cell; - using TDS_data = typename TDS::Cell_data; + using Vertex_handle = typename Cb::Vertex_handle; + using Cell_handle = typename Cb::Cell_handle; + + using Geom_traits = Gt; // Index Type - using Subdomain_index = Subdomain_index_; - using Surface_patch_index = Surface_patch_index_; + using Subdomain_index = SubdomainIndex; + using Surface_patch_index = SurfacePatchIndex; public: - // Constructors Simplicial_mesh_cell_3() : time_stamp_(std::size_t(-1)) {} Simplicial_mesh_cell_3(const Simplicial_mesh_cell_3& rhs) - : N(rhs.N) - , V(rhs.V) - , time_stamp_(rhs.time_stamp_) - , subdomain_index_(rhs.subdomain_index_) + : Cb(static_cast(rhs)), + time_stamp_(rhs.time_stamp_), + subdomain_index_(rhs.subdomain_index_) { - for(int i=0; i <4; i++){ + for(int i=0; i <4; ++i) surface_index_table_[i] = rhs.surface_index_table_[i]; - } } - Simplicial_mesh_cell_3(Vertex_handle v0, - Vertex_handle v1, - Vertex_handle v2, - Vertex_handle v3) - : V(CGAL::make_array(v0, v1, v2, v3)) - { - } + Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3) + : Cb(v0, v1, v2, v3) + { } - Simplicial_mesh_cell_3(Vertex_handle v0, - Vertex_handle v1, - Vertex_handle v2, - Vertex_handle v3, - Cell_handle n0, - Cell_handle n1, - Cell_handle n2, - Cell_handle n3) - : N(CGAL::make_array(n0, n1, n2, n3)) - , V(CGAL::make_array(v0, v1, v2, v3)) - { - } - - // ACCESS FUNCTIONS - Vertex_handle vertex(int i) const - { - CGAL_precondition( i >= 0 && i <= 3 ); - return V[i]; - } - - bool has_vertex(Vertex_handle v) const - { - return (V[0] == v) || (V[1] == v) || (V[2]== v) || (V[3]== v); - } - - bool has_vertex(Vertex_handle v, int & i) const - { - if (v == V[0]) { i = 0; return true; } - if (v == V[1]) { i = 1; return true; } - if (v == V[2]) { i = 2; return true; } - if (v == V[3]) { i = 3; return true; } - return false; - } - - int index(Vertex_handle v) const - { - if (v == V[0]) { return 0; } - if (v == V[1]) { return 1; } - if (v == V[2]) { return 2; } - CGAL_assertion( v == V[3] ); - return 3; - } - - Cell_handle neighbor(int i) const - { - CGAL_precondition( i >= 0 && i <= 3); - return N[i]; - } - - bool has_neighbor(Cell_handle n) const - { - return (N[0] == n) || (N[1] == n) || (N[2] == n) || (N[3] == n); - } - - bool has_neighbor(Cell_handle n, int & i) const - { - if(n == N[0]){ i = 0; return true; } - if(n == N[1]){ i = 1; return true; } - if(n == N[2]){ i = 2; return true; } - if(n == N[3]){ i = 3; return true; } - return false; - } - - int index(Cell_handle n) const - { - if (n == N[0]) return 0; - if (n == N[1]) return 1; - if (n == N[2]) return 2; - CGAL_assertion( n == N[3] ); - return 3; - } - - // SETTING - void set_neighbor(int i, Cell_handle n) - { - CGAL_precondition( i >= 0 && i <= 3); - CGAL_precondition( this != n.operator->() ); - N[i] = n; - } - - void set_neighbors() - { - N[0] = N[1] = N[2] = N[3] = Cell_handle(); - } - - void set_neighbors(Cell_handle n0, Cell_handle n1, - Cell_handle n2, Cell_handle n3) - { - CGAL_precondition( this != n0.operator->() ); - CGAL_precondition( this != n1.operator->() ); - CGAL_precondition( this != n2.operator->() ); - CGAL_precondition( this != n3.operator->() ); - N[0] = n0; - N[1] = n1; - N[2] = n2; - N[3] = n3; - } - - // CHECKING - - // the following trivial is_valid allows - // the user of derived cell base classes - // to add their own purpose checking - bool is_valid(bool = false, int = 0) const - { return true; } - - // For use by Compact_container. - void * for_compact_container() const { return N[0].for_compact_container(); } - void for_compact_container(void *p) { N[0].for_compact_container(p); } - - // TDS internal data access functions. - TDS_data& tds_data() { return _tds_data; } - const TDS_data& tds_data() const { return _tds_data; } - - // We must override the functions that modify the vertices. - // And if the point inside a vertex is modified, we fail, - // but there's not much we can do for this now. - void set_vertex(int i, Vertex_handle v) - { - CGAL_precondition( i >= 0 && i <= 3); - V[i] = v; - } - - void set_vertices() - { - V[0] = V[1] = V[2] = V[3] = Vertex_handle(); - } - - void set_vertices(Vertex_handle v0, Vertex_handle v1, - Vertex_handle v2, Vertex_handle v3) - { - V[0] = v0; - V[1] = v1; - V[2] = v2; - V[3] = v3; - } + Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3, + Cell_handle n0, Cell_handle n1, + Cell_handle n2, Cell_handle n3) + : Cb(v0, v1, v2, v3, n0, n1, n2, n3) + { } // Returns the index of the cell of the input complex that contains the cell Subdomain_index subdomain_index() const { return subdomain_index_; } @@ -284,25 +145,22 @@ private: /// Stores surface_index for each facet of the cell std::array surface_index_table_ = {}; - std::array N; - std::array V; - std::size_t time_stamp_; // The index of the cell of the input complex that contains me Subdomain_index subdomain_index_ = {}; - TDS_data _tds_data; - public: - friend std::istream& operator>>(std::istream &is, Simplicial_mesh_cell_3 &c) + friend std::istream& operator>>(std::istream& is, + Simplicial_mesh_cell_3& c) { Subdomain_index index; if(IO::is_ascii(is)) is >> index; else read(is, index); + if(is) { c.set_subdomain_index(index); for(int i = 0; i < 4; ++i) @@ -321,7 +179,8 @@ public: } friend - std::ostream& operator<<(std::ostream &os, const Simplicial_mesh_cell_3&c) + std::ostream& operator<<(std::ostream& os, + const Simplicial_mesh_cell_3& c) { if(IO::is_ascii(os)) os << c.subdomain_index(); @@ -348,20 +207,24 @@ It is designed to serve as cell base class for.3D simplicial mesh data structure It stores and gives access to data about the complex the cell belongs to, such as the subdomain it belongs to or surface it takes part to. -\tparam Subdomain_index Type of indices for subdomains of the discretized geometric domain. +\tparam Gt is the geometric traits class. +It must be a model of the concept `TriangulationTraits_3` + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `EqualityComparable`. The default constructed value must match the label of the exterior of the domain (which contains at least the unbounded component). - It must match the `Subdomain_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. -\tparam Surface_patch_index Type of indices for surface patches (boundaries and interfaces) +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) of the discretized geometric domain. Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `EqualityComparable`. The default constructed value must be the index value assigned to a non surface facet. - It must match the `Surface_patch_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\tparam Cb is the cell base class from which `Simplicial_mesh_cell_base_3` derives. +It must be a model of the concept `TriangulationCellBase_3`. \cgalModels `SimplicialMeshCellBase_3` @@ -370,21 +233,24 @@ assigned to a non surface facet. \sa `MeshDomain_3` \sa `MeshDomainWithFeatures_3` */ -template +template > class Simplicial_mesh_cell_base_3 { public: template struct Rebind_TDS { - typedef Simplicial_mesh_cell_3 Other; + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_cell_3; }; }; -} // end namespace CGAL - +} // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_CELL_BASE_3_H diff --git a/SMDS_3/test/SMDS_3/test_simplicial_cb_vb.cpp b/SMDS_3/test/SMDS_3/test_simplicial_cb_vb.cpp index 4f3531c5fcb..e438200b9aa 100644 --- a/SMDS_3/test/SMDS_3/test_simplicial_cb_vb.cpp +++ b/SMDS_3/test/SMDS_3/test_simplicial_cb_vb.cpp @@ -19,7 +19,7 @@ using Surface_patch_index = std::pair; using Curve_index = char; using Corner_index = short; -using Cb = CGAL::Simplicial_mesh_cell_base_3; +using Cb = CGAL::Simplicial_mesh_cell_base_3; using Vb = CGAL::Simplicial_mesh_vertex_base_3; From 4e824edf32556207c27fbb6f67f7ce11c3d64ad0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:35:56 +0200 Subject: [PATCH 15/94] Improve doc of Simplicial_vertex_base_3 --- .../CGAL/Simplicial_mesh_vertex_base_3.h | 100 ++++++++---------- 1 file changed, 47 insertions(+), 53 deletions(-) diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h index 3f1a9c92d42..3fbea174853 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h @@ -29,22 +29,20 @@ #include #include + #include namespace CGAL { -//Class Simplicial_mesh_vertex_3 -//Adds information to Vb about the localization of the vertex in regards -//to the 3D input complex. -//\cgalModels `SimplicialMeshVertexBase_3` -template +// Adds information to Vb about the localization of the vertex in regards to the 3D input complex. +template class Simplicial_mesh_vertex_3 -: public Vb + : public Vb { private : using Cmvb3_base = Vb; @@ -53,10 +51,16 @@ public: using Vertex_handle = typename Vb::Vertex_handle; // Types - using Index = boost::variant; - using FT = typename GT::FT; + using Subdomain_index = SubdomainIndex; + using Surface_patch_index = SurfacePatchIndex; + using Curve_index = CurveIndex; + using Corner_index = CornerIndex; - // Constructor + using Index = boost::variant; + + using FT = typename Gt::FT; + +public: Simplicial_mesh_vertex_3() : Vb() , number_of_incident_facets_(0) @@ -215,39 +219,34 @@ index of the subcomplex it belongs to. \tparam Gt is the geometric traits class. It must be a model of the concept `TriangulationTraits_3` -\tparam Subdomain_index Type of indices for subdomains of the discretized geometric domain. +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `EqualityComparable`. The default constructed value must match the label of the exterior of the domain (which contains at least the unbounded component). - It must match the `Subdomain_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. -\tparam Surface_patch_index Type of indices for surface patches (boundaries and interfaces) +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) of the discretized geometric domain. Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `EqualityComparable`. The default constructed value must be the index value assigned to a non surface facet. - It must match the `Surface_patch_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. -\tparam Curve_index Type of indices for curves (i.e. \f$ 1\f$-dimensional features) +\tparam CurveIndex Type of indices for curves (i.e. \f$ 1\f$-dimensional features) of the discretized geometric domain. Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `LessThanComparable`. The default constructed value must be the value for an edge which does not approximate a 1-dimensional feature of the geometric domain. - It must match the `Curve_index` types of the model - of the `MeshDomainWithFeatures_3` concept when used for mesh generation. +It must match `MeshDomainWithFeatures_3::Curve_index` when used for mesh generation. -\tparam Corner_index Type of indices for corners (i.e.\f$ 0\f$--dimensional features) +\tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) of the discretized geometric domain. It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `LessThanComparable`. - It must match the `Corner_index` of the model - of the `MeshDomainWithFeatures_3` concept when used for mesh generation. +It must match `MeshDomainWithFeatures_3::Corner_index` when used for mesh generation. -\tparam Vb is the vertex base class. It has to be a model -of the concept `TriangulationVertexBase_3` and defaults to -`Triangulation_vertex_base_3`. +\tparam Vb is the vertex base class from which `Simplicial_mesh_vertex_base_3` derives. +It must be a model of the concept `TriangulationVertexBase_3`. \cgalModels `SimplicialMeshVertexBase_3` @@ -256,33 +255,28 @@ of the concept `TriangulationVertexBase_3` and defaults to \sa `MeshDomain_3` \sa `MeshDomainWithFeatures_3` */ -template > -struct Simplicial_mesh_vertex_base_3 +template > +class Simplicial_mesh_vertex_base_3 { - using Triangulation_data_structure = internal::Dummy_tds_3; - using Vertex_handle = typename Triangulation_data_structure::Vertex_handle; - using Cell_handle = typename Triangulation_data_structure::Cell_handle; - - template < class TDS3 > - struct Rebind_TDS { - using Vb3 = typename Vb::template Rebind_TDS::Other; - using Other = Simplicial_mesh_vertex_3 ; +public: + template + struct Rebind_TDS + { + using Vb2 = typename Vb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_vertex_3; }; }; - -} // end namespace CGAL - - +} // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_VERTEX_BASE_3_H From 50fa1ee4def7a418f578c041095f9446aa2bbe2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:36:39 +0200 Subject: [PATCH 16/94] Various fixes for Remeshing_cell_base_3: - Restore its correct API (as in CGAL 5.5): two templates, a traits, and a cell base. - It is not a model of SimplicialMeshCellBase_3, but of RemeshingCellBase_3 - It should not hardcode an inheritance to Simplicial_cell_base_3, but take it as a template paramter's default value. - Use FT instead of hardcoding 'double' --- .../Remeshing_cell_base_3.h | 72 +++++++++---------- 1 file changed, 32 insertions(+), 40 deletions(-) diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index d8237882726..30de338cdf7 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -17,34 +17,35 @@ #include -namespace CGAL -{ -namespace Tetrahedral_remeshing -{ +#include -template +namespace CGAL { +namespace Tetrahedral_remeshing { + +template class Remeshing_cell_3 - : public CGAL::Simplicial_mesh_cell_3 + : public Cb { -private: - using Base = CGAL::Simplicial_mesh_cell_3; +public: + using FT = typename Gt::FT; + + using Vertex_handle = typename Cb::Vertex_handle; + using Cell_handle = typename Cb::Cell_handle; + + using Geom_traits = Gt; public: - using Base::Base; + using Cb::Cb; // constructors - void set_sliver_value(double value) +public: + void set_sliver_value(const FT value) { sliver_cache_validity_ = true; sliver_value_ = value; } - double sliver_value() const + FT sliver_value() const { CGAL_assertion(is_cache_valid()); return sliver_value_; @@ -54,51 +55,42 @@ public: void reset_cache_validity() const { sliver_cache_validity_ = false; } private: - double sliver_value_ = 0.; + FT sliver_value_ = 0.; mutable bool sliver_cache_validity_ = false; }; /*! \ingroup PkgTetrahedralRemeshingClasses -The class `Remeshing_cell_base_3` is a model of the concept `SimplicialMeshCellBase_3`. +The class `Remeshing_cell_base_3` is a model of the concept `RemeshingCellBase_3`. It is designed to serve as cell base class for the 3D triangulation used in the tetrahedral remeshing process. -\tparam Subdomain_index Type of indices for subdomains of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must match the label -of the exterior of the domain (which contains at least the unbounded component). - It must match the `Subdomain_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +\tparam Gt is the geometric traits class. +It has to be a model of the concept `RemeshingTriangulationTraits_3`. -\tparam Surface_patch_index Type of indices for surface patches (boundaries and interfaces) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must be the index value -assigned to a non surface facet. - It must match the `Surface_patch_index` of the model - of the `MeshDomain_3` concept when used for mesh generation. +\tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. +It must be a model of the `SimplicialMeshCellBase_3` concept. \cgalModels `RemeshingCellBase_3` -\cgalModels `SimplicialMeshCellBase_3` */ -template +template > class Remeshing_cell_base_3 { public: template struct Rebind_TDS { - typedef Remeshing_cell_3 Other; + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Remeshing_cell_3; }; }; -}//end namespace Tetrahedral_remeshing -}//end namespace CGAL +} // namespace Tetrahedral_remeshing +} // namespace CGAL #endif //CGAL_TET_ADAPTIVE_REMESHING_CELL_BASE_3_H From c0d0c0d01f691b9e77ba22a1b08b89e6cddcbd6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:39:17 +0200 Subject: [PATCH 17/94] Fix API of Remeshing_vertex_base_3: It needs only to document a traits and a vertex base, not expose index types as these are relevant to the Simplicial_vertex_base_3 class, which is not the systematic base. It is a model of RemeshingVertexBase_3, not MeshVertexBase_3 The base needs to be a model of SimplicialVertexBase_3, not TriangulationCellBase_3 Use the proper Rebind mechanism like the other vertex/cell classes --- .../Remeshing_triangulation_3.h | 2 +- .../Remeshing_vertex_base_3.h | 55 +++++++++++-------- 2 files changed, 32 insertions(+), 25 deletions(-) diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h index 7b2bb34f9cf..3abdc9f034d 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h @@ -52,7 +52,7 @@ and `Parallel_if_available_tag`. template, - typename Cb = Remeshing_cell_base_3<> + typename Cb = Remeshing_cell_base_3 > class Remeshing_triangulation_3 : public CGAL::Triangulation_3 > diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h index b828ffb08d1..faab3950f9a 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h @@ -17,44 +17,51 @@ #include -namespace CGAL -{ -namespace Tetrahedral_remeshing +namespace CGAL { +namespace Tetrahedral_remeshing { + +template +class Remeshing_vertex_3 + : public Vb { +public: + using Vb::Vb; // constructors +}; /*! \ingroup PkgTetrahedralRemeshingClasses -The class `Remeshing_vertex_base_3` is a model of the concept `MeshVertexBase_3`. +The class `Remeshing_vertex_base_3` is a model of the concept `RemeshingVertexBase_3`. It is designed to serve as vertex base class for the 3D triangulation used in the tetrahedral remeshing process. \tparam Gt is the geometric traits class. -It has to be a model of the concept `RemeshingTriangulationTraits_3`. +It must be a model of the concept `RemeshingTriangulationTraits_3`. \tparam Vb is a vertex base class from which `Remeshing_vertex_base_3` derives. -It must be a model of the `TriangulationVertexBase_3` concept. -It has the default value `Triangulation_vertex_base_3`. +It must be a model of the concept `SimplicialMeshVertexBase_3`. \cgalModels `RemeshingVertexBase_3` -\cgalModels `SimplicialMeshVertexBase_3` */ -template > -using Remeshing_vertex_base_3 - = CGAL::Simplicial_mesh_vertex_base_3; +template > +class Remeshing_vertex_base_3 +{ +public: + template + struct Rebind_TDS + { + using Vb2 = typename Vb::template Rebind_TDS::Other; + using Other = Remeshing_vertex_3; + }; +}; -}//end namespace Tetrahedral_remeshing - -}//end namespace CGAL +} // namespace Tetrahedral_remeshing +} // namespace CGAL #endif //CGAL_TET_ADAPTIVE_REMESHING_VERTEX_BASE_3_H From ce9fa95e2b60349875704976aad5456646d633d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:42:45 +0200 Subject: [PATCH 18/94] Fixes for the doc of tetrahedral remeshing --- .../include/CGAL/tetrahedral_remeshing.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Tetrahedral_remeshing/include/CGAL/tetrahedral_remeshing.h b/Tetrahedral_remeshing/include/CGAL/tetrahedral_remeshing.h index edd23bc2967..f1be0dcf844 100644 --- a/Tetrahedral_remeshing/include/CGAL/tetrahedral_remeshing.h +++ b/Tetrahedral_remeshing/include/CGAL/tetrahedral_remeshing.h @@ -61,7 +61,7 @@ namespace CGAL * subdomains throughout the remeshing process. * * Subdomains are defined by indices that -* are stored in the cells of the input triangulation, following the `MeshCellBase_3` +* are stored in the cells of the input triangulation, following the `SimplicialMeshCellBase_3` * concept (refined by `RemeshingCellBase_3`). * The surfacic interfaces between subdomains are formed by facets whose two incident cells * have different subdomain indices. @@ -302,14 +302,14 @@ void tetrahedral_isotropic_remeshing( * @tparam Tr is the underlying triangulation for `Mesh_complex_3_in_triangulation_3`. * It can be instantiated with any 3D regular triangulation of CGAL provided * that its vertex and cell base classes are models of the concepts -* `MeshVertexBase_3` (refined by `RemeshingCellBase_3`) -* and `MeshCellBase_3` (refined by `RemeshingVertexBase_3`), respectively. +* `SimplicialMeshCellBase_3` (refined by `RemeshingCellBase_3`) +* and `SimplicialMeshVertexBase_3` (refined by `RemeshingVertexBase_3`), respectively. * @tparam CornerIndex is the type of the indices for feature corners. * If `c3t3` has been generated using `CGAL::make_mesh_3()`, it must match -* the `Corner_index` type of the model of the `MeshDomainWithFeatures_3` concept used for mesh generation. +* `MeshDomainWithFeatures_3::Corner_index`. * @tparam CurveIndex is the type of the indices for feature curves. * If `c3t3` has been generated using `CGAL::make_mesh_3()`, it must match -* the `Curve_index` type of the model of the `MeshDomainWithFeatures_3` concept used for mesh generation. +* `MeshDomainWithFeatures_3::Curve_index`. * * @param c3t3 the complex containing the triangulation to be remeshed. */ From 796baca1c59a5d87b413855aec9d30c9214c23e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 19 Jul 2023 22:43:14 +0200 Subject: [PATCH 19/94] Misc minor cleaning --- .../Concepts/SimplicialMeshCellBase_3.h | 14 +++---- .../Concepts/SimplicialMeshVertexBase_3.h | 2 +- .../CGAL/Mesh_complex_3_in_triangulation_3.h | 2 +- .../CGAL/Simplicial_mesh_cell_base_3.h | 39 ++++++++++--------- .../CGAL/Simplicial_mesh_vertex_base_3.h | 10 ++--- .../Remeshing_triangulation_3.h | 4 +- 6 files changed, 35 insertions(+), 36 deletions(-) diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h index ff424c1281d..6748b8d4ebc 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshCellBase_3.h @@ -4,14 +4,12 @@ The concept `SimplicialMeshCellBase_3` describes the requirements for the `TriangulationDataStructure_3::Cell` type of the triangulation -used in the 3D simplicial mesh data structure. The type `SimplicialMeshCellBase_3` -refines the concept `TriangulationCellBase_3` -and must be copy constructible. -The concept `SimplicialMeshCellBase_3` -includes a way to store and retrieve -if a given cell of the triangulation is inside a subdomain or not, -and which subdomain it belongs to -in case of a multi-domain. +used in a 3D simplicial mesh data structure. + +The type `SimplicialMeshCellBase_3` refines the concept `TriangulationCellBase_3` +and must be copy constructible. The concept `SimplicialMeshCellBase_3` includes a way to store and +retrieve if a given cell of the triangulation is inside a subdomain or not, and which subdomain it +belongs to in case of a multi-domain. Moreover, this concept adds four markers per cell to mark the facets of the triangulation that are surface facets. diff --git a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h index ad034bbb982..aaba99a5160 100644 --- a/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h +++ b/SMDS_3/doc/SMDS_3/Concepts/SimplicialMeshVertexBase_3.h @@ -4,7 +4,7 @@ The concept `SimplicialMeshVertexBase_3` describes the requirements for the `Vertex` type of the triangulation -used in the 3D simplicial mesh data structure. The type `SimplicialMeshVertexBase_3` +used in a 3D simplicial mesh data structure. The type `SimplicialMeshVertexBase_3` refines the concept `TriangulationVertexBase_3`. It provides additional members to store and retrieve information about the location of the vertex with respect diff --git a/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h b/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h index 643de3ff7da..3ce0ab4e55f 100644 --- a/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h +++ b/SMDS_3/include/CGAL/Mesh_complex_3_in_triangulation_3.h @@ -151,7 +151,7 @@ namespace CGAL { vertex and cell base class are models of the concepts `SimplicialMeshVertexBase_3` and `SimplicialMeshCellBase_3`, respectively. - \tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) + \tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) of the discretized geometric domain. It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and `LessThanComparable`. diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h index b1a16d1b8f0..ad535d2e402 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h @@ -164,16 +164,16 @@ public: if(is) { c.set_subdomain_index(index); for(int i = 0; i < 4; ++i) - { - Surface_patch_index i2; - if(IO::is_ascii(is)) - is >> IO::iformat(i2); - else - { - read(is, i2); - } - c.set_surface_patch_index(i, i2); - } + { + Surface_patch_index i2; + if(IO::is_ascii(is)) + is >> IO::iformat(i2); + else + { + read(is, i2); + } + c.set_surface_patch_index(i, i2); + } } return is; } @@ -186,24 +186,25 @@ public: os << c.subdomain_index(); else write(os, c.subdomain_index()); + for(int i = 0; i < 4; ++i) - { - if(IO::is_ascii(os)) - os << ' ' << IO::oformat(c.surface_patch_index(i)); - else - write(os, c.surface_patch_index(i)); - } + { + if(IO::is_ascii(os)) + os << ' ' << IO::oformat(c.surface_patch_index(i)); + else + write(os, c.surface_patch_index(i)); + } + return os; } - -}; // end class Simplicial_mesh_cell_3 +}; /*! \ingroup PkgSMDS3Classes The class `Simplicial_mesh_cell_base_3` is a model of the concept `SimplicialMeshCellBase_3`. -It is designed to serve as cell base class for.3D simplicial mesh data structures. +It is designed to serve as cell base class for 3D simplicial mesh data structures. It stores and gives access to data about the complex the cell belongs to, such as the subdomain it belongs to or surface it takes part to. diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h index 3fbea174853..a25cf6f4329 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h @@ -159,8 +159,8 @@ private: std::size_t time_stamp_; public: - - friend std::istream& operator>>(std::istream &is, Simplicial_mesh_vertex_3& v) + friend std::istream& operator>>(std::istream& is, + Simplicial_mesh_vertex_3& v) { is >> static_cast(v); int dimension; @@ -185,7 +185,8 @@ public: return is; } - friend std::ostream& operator<<(std::ostream &os, const Simplicial_mesh_vertex_3& v) + friend std::ostream& operator<<(std::ostream& os, + const Simplicial_mesh_vertex_3& v) { os << static_cast(v); if(IO::is_ascii(os)) { @@ -204,8 +205,7 @@ public: v.index()); return os; } -}; // end class Simplicial_mesh_vertex_3 - +}; /*! \ingroup PkgSMDS3Classes diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h index 3abdc9f034d..f009ad0471c 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h @@ -45,9 +45,9 @@ triangulation data structure. Possible values are `Sequential_tag` (the default), `Parallel_tag`, and `Parallel_if_available_tag`. -\tparam Vb is a model of `RemeshingVertexBase_3`. It has the default value ` Remeshing_vertex_base_3`. -\tparam Cb is a model of `RemeshingCellBase_3`. It has the default value ` Remeshing_cell_base_3`. +\tparam Vb must be a model of `RemeshingVertexBase_3`. +\tparam Cb must be model of `RemeshingCellBase_3`. */ template Date: Fri, 21 Jul 2023 09:55:01 +0200 Subject: [PATCH 20/94] Fix not being able to Rebind multiple time SMDS_3 / Tet Remesh Vb/Cb If you have the following construct: class V : public Vb; class V_base { struct Rebind --> V; } then you cannot rebind twice. More vicious, if Vb can rebind twice multiple times (e.g. it's a T3 Vb), then it'll silently drop V in the stack, and rebind only up to the rebound Vb! Rebinding multiple times happens for example in Triangulation_hierarchy_3 (Delaunay_triangulation_3 with Fast_locate). --- .../CGAL/Simplicial_mesh_cell_base_3.h | 123 +++++++-------- .../CGAL/Simplicial_mesh_vertex_base_3.h | 142 +++++++++--------- .../Remeshing_cell_base_3.h | 61 ++++---- .../Remeshing_vertex_base_3.h | 15 +- 4 files changed, 158 insertions(+), 183 deletions(-) diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h index ad535d2e402..3c882ad9b52 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h @@ -32,11 +32,46 @@ namespace CGAL { +/*! +\ingroup PkgSMDS3Classes + +The class `Simplicial_mesh_cell_base_3` +is a model of the concept `SimplicialMeshCellBase_3`. +It is designed to serve as cell base class for 3D simplicial mesh data structures. +It stores and gives access to data about the complex the cell belongs to, such as the +subdomain it belongs to or surface it takes part to. + +\tparam Gt is the geometric traits class. +It must be a model of the concept `TriangulationTraits_3` + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must match the label +of the exterior of the domain (which contains at least the unbounded component). +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. + +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must be the index value +assigned to a non surface facet. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\tparam Cb is the cell base class from which `Simplicial_mesh_cell_base_3` derives. +It must be a model of the concept `TriangulationCellBase_3`. + +\cgalModels `SimplicialMeshCellBase_3` + +\sa `CGAL::Mesh_complex_3_in_triangulation_3` +\sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink +\sa `MeshDomain_3` +\sa `MeshDomainWithFeatures_3` +*/ template -class Simplicial_mesh_cell_3 + typename Cb = Triangulation_cell_base_3 > +class Simplicial_mesh_cell_base_3 : public Cb { public: @@ -50,11 +85,22 @@ public: using Surface_patch_index = SurfacePatchIndex; public: - Simplicial_mesh_cell_3() + template + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_cell_base_3; + }; + +public: + Simplicial_mesh_cell_base_3() : time_stamp_(std::size_t(-1)) {} - Simplicial_mesh_cell_3(const Simplicial_mesh_cell_3& rhs) + Simplicial_mesh_cell_base_3(const Simplicial_mesh_cell_base_3& rhs) : Cb(static_cast(rhs)), time_stamp_(rhs.time_stamp_), subdomain_index_(rhs.subdomain_index_) @@ -63,15 +109,15 @@ public: surface_index_table_[i] = rhs.surface_index_table_[i]; } - Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, - Vertex_handle v2, Vertex_handle v3) + Simplicial_mesh_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3) : Cb(v0, v1, v2, v3) { } - Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, - Vertex_handle v2, Vertex_handle v3, - Cell_handle n0, Cell_handle n1, - Cell_handle n2, Cell_handle n3) + Simplicial_mesh_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3, + Cell_handle n0, Cell_handle n1, + Cell_handle n2, Cell_handle n3) : Cb(v0, v1, v2, v3, n0, n1, n2, n3) { } @@ -153,7 +199,7 @@ private: public: friend std::istream& operator>>(std::istream& is, - Simplicial_mesh_cell_3& c) + Simplicial_mesh_cell_base_3& c) { Subdomain_index index; if(IO::is_ascii(is)) @@ -180,7 +226,7 @@ public: friend std::ostream& operator<<(std::ostream& os, - const Simplicial_mesh_cell_3& c) + const Simplicial_mesh_cell_base_3& c) { if(IO::is_ascii(os)) os << c.subdomain_index(); @@ -199,59 +245,6 @@ public: } }; -/*! -\ingroup PkgSMDS3Classes - -The class `Simplicial_mesh_cell_base_3` -is a model of the concept `SimplicialMeshCellBase_3`. -It is designed to serve as cell base class for 3D simplicial mesh data structures. -It stores and gives access to data about the complex the cell belongs to, such as the -subdomain it belongs to or surface it takes part to. - -\tparam Gt is the geometric traits class. -It must be a model of the concept `TriangulationTraits_3` - -\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must match the label -of the exterior of the domain (which contains at least the unbounded component). -It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. - -\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must be the index value -assigned to a non surface facet. -It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. - -\tparam Cb is the cell base class from which `Simplicial_mesh_cell_base_3` derives. -It must be a model of the concept `TriangulationCellBase_3`. - -\cgalModels `SimplicialMeshCellBase_3` - -\sa `CGAL::Mesh_complex_3_in_triangulation_3` -\sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink -\sa `MeshDomain_3` -\sa `MeshDomainWithFeatures_3` -*/ -template > -class Simplicial_mesh_cell_base_3 -{ -public: - template - struct Rebind_TDS - { - using Cb2 = typename Cb::template Rebind_TDS::Other; - using Other = Simplicial_mesh_cell_3; - }; -}; - } // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_CELL_BASE_3_H diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h index a25cf6f4329..1b47ea8de4f 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h @@ -35,13 +35,62 @@ namespace CGAL { // Adds information to Vb about the localization of the vertex in regards to the 3D input complex. + +/*! +\ingroup PkgSMDS3Classes + +The class `Simplicial_mesh_vertex_base_3` is a model of the concept +`SimplicialMeshVertexBase_3`. +It is designed to serve as vertex base class for 3D simplicial mesh data structures. +It stores and gives access to data about the complex the vertex belongs to, such as the +index of the subcomplex it belongs to. + +\tparam Gt is the geometric traits class. +It must be a model of the concept `TriangulationTraits_3` + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must match the label +of the exterior of the domain (which contains at least the unbounded component). +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. + +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must be the index value +assigned to a non surface facet. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\tparam CurveIndex Type of indices for curves (i.e. \f$ 1\f$-dimensional features) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and +`LessThanComparable`. The default constructed value must be the value for an edge which +does not approximate a 1-dimensional feature of the geometric domain. +It must match `MeshDomainWithFeatures_3::Curve_index` when used for mesh generation. + +\tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) +of the discretized geometric domain. +It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and +`LessThanComparable`. +It must match `MeshDomainWithFeatures_3::Corner_index` when used for mesh generation. + +\tparam Vb is the vertex base class from which `Simplicial_mesh_vertex_base_3` derives. +It must be a model of the concept `TriangulationVertexBase_3`. + +\cgalModels `SimplicialMeshVertexBase_3` + +\sa `CGAL::Mesh_complex_3_in_triangulation_3` +\sa \link Mesh_vertex_base_3 `CGAL::Mesh_vertex_base_3`\endlink +\sa `MeshDomain_3` +\sa `MeshDomainWithFeatures_3` +*/ template -class Simplicial_mesh_vertex_3 + typename Vb = CGAL::Triangulation_vertex_base_3 > +class Simplicial_mesh_vertex_base_3 : public Vb { private : @@ -61,7 +110,20 @@ public: using FT = typename Gt::FT; public: - Simplicial_mesh_vertex_3() + template + struct Rebind_TDS + { + using Vb2 = typename Vb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_vertex_base_3; + }; + +public: + Simplicial_mesh_vertex_base_3() : Vb() , number_of_incident_facets_(0) , number_of_components_(0) @@ -160,7 +222,7 @@ private: public: friend std::istream& operator>>(std::istream& is, - Simplicial_mesh_vertex_3& v) + Simplicial_mesh_vertex_base_3& v) { is >> static_cast(v); int dimension; @@ -186,7 +248,7 @@ public: } friend std::ostream& operator<<(std::ostream& os, - const Simplicial_mesh_vertex_3& v) + const Simplicial_mesh_vertex_base_3& v) { os << static_cast(v); if(IO::is_ascii(os)) { @@ -207,76 +269,6 @@ public: } }; -/*! -\ingroup PkgSMDS3Classes - -The class `Simplicial_mesh_vertex_base_3` is a model of the concept -`SimplicialMeshVertexBase_3`. -It is designed to serve as vertex base class for 3D simplicial mesh data structures. -It stores and gives access to data about the complex the vertex belongs to, such as the -index of the subcomplex it belongs to. - -\tparam Gt is the geometric traits class. -It must be a model of the concept `TriangulationTraits_3` - -\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must match the label -of the exterior of the domain (which contains at least the unbounded component). -It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. - -\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must be the index value -assigned to a non surface facet. -It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. - -\tparam CurveIndex Type of indices for curves (i.e. \f$ 1\f$-dimensional features) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and -`LessThanComparable`. The default constructed value must be the value for an edge which -does not approximate a 1-dimensional feature of the geometric domain. -It must match `MeshDomainWithFeatures_3::Curve_index` when used for mesh generation. - -\tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) -of the discretized geometric domain. -It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and -`LessThanComparable`. -It must match `MeshDomainWithFeatures_3::Corner_index` when used for mesh generation. - -\tparam Vb is the vertex base class from which `Simplicial_mesh_vertex_base_3` derives. -It must be a model of the concept `TriangulationVertexBase_3`. - -\cgalModels `SimplicialMeshVertexBase_3` - -\sa `CGAL::Mesh_complex_3_in_triangulation_3` -\sa \link Mesh_vertex_base_3 `CGAL::Mesh_vertex_base_3`\endlink -\sa `MeshDomain_3` -\sa `MeshDomainWithFeatures_3` -*/ -template > -class Simplicial_mesh_vertex_base_3 -{ -public: - template - struct Rebind_TDS - { - using Vb2 = typename Vb::template Rebind_TDS::Other; - using Other = Simplicial_mesh_vertex_3; - }; -}; - } // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_VERTEX_BASE_3_H diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index 30de338cdf7..162cfa27f21 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -22,9 +22,27 @@ namespace CGAL { namespace Tetrahedral_remeshing { +/*! +\ingroup PkgTetrahedralRemeshingClasses + +The class `Remeshing_cell_base_3` is a model of the concept `RemeshingCellBase_3`. +It is designed to serve as cell base class for the 3D triangulation +used in the tetrahedral remeshing process. + +\tparam Gt is the geometric traits class. +It has to be a model of the concept `RemeshingTriangulationTraits_3`. + +\tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. +It must be a model of the `SimplicialMeshCellBase_3` concept. + +\cgalModels `RemeshingCellBase_3` + +*/ template -class Remeshing_cell_3 + typename Cb = CGAL::Simplicial_mesh_cell_base_3 > +class Remeshing_cell_base_3 : public Cb { public: @@ -35,6 +53,14 @@ public: using Geom_traits = Gt; +public: + template + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Remeshing_cell_base_3; + }; + public: using Cb::Cb; // constructors @@ -59,37 +85,6 @@ private: mutable bool sliver_cache_validity_ = false; }; -/*! -\ingroup PkgTetrahedralRemeshingClasses - -The class `Remeshing_cell_base_3` is a model of the concept `RemeshingCellBase_3`. -It is designed to serve as cell base class for the 3D triangulation -used in the tetrahedral remeshing process. - -\tparam Gt is the geometric traits class. -It has to be a model of the concept `RemeshingTriangulationTraits_3`. - -\tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. -It must be a model of the `SimplicialMeshCellBase_3` concept. - -\cgalModels `RemeshingCellBase_3` - -*/ -template > -class Remeshing_cell_base_3 -{ -public: - template - struct Rebind_TDS - { - using Cb2 = typename Cb::template Rebind_TDS::Other; - using Other = Remeshing_cell_3; - }; -}; - } // namespace Tetrahedral_remeshing } // namespace CGAL diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h index faab3950f9a..34e5fb0855c 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h @@ -20,15 +20,6 @@ namespace CGAL { namespace Tetrahedral_remeshing { -template -class Remeshing_vertex_3 - : public Vb -{ -public: - using Vb::Vb; // constructors -}; - /*! \ingroup PkgTetrahedralRemeshingClasses @@ -51,14 +42,18 @@ template > class Remeshing_vertex_base_3 + : public Vb { public: template struct Rebind_TDS { using Vb2 = typename Vb::template Rebind_TDS::Other; - using Other = Remeshing_vertex_3; + using Other = Remeshing_vertex_base_3; }; + +public: + using Vb::Vb; // constructors }; } // namespace Tetrahedral_remeshing From 069756ba3c350880c8d8e10bb57952999c528c26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 21 Jul 2023 09:55:01 +0200 Subject: [PATCH 21/94] Fix not being able to Rebind multiple time SMDS_3 / Tet Remesh Vb/Cb If you have the following construct: class V : public Vb; class V_base { struct Rebind --> V; } then you cannot rebind twice. More vicious, if Vb can rebind twice multiple times (e.g. it's a T3 Vb), then it'll silently drop V in the stack, and rebind only up to the rebound Vb! Rebinding multiple times happens for example in Triangulation_hierarchy_3 (Delaunay_triangulation_3 with Fast_locate). --- .../CGAL/Simplicial_mesh_cell_base_3.h | 123 +++++++-------- .../CGAL/Simplicial_mesh_vertex_base_3.h | 142 +++++++++--------- .../Remeshing_cell_base_3.h | 61 ++++---- .../Remeshing_vertex_base_3.h | 15 +- 4 files changed, 158 insertions(+), 183 deletions(-) diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h index ad535d2e402..3c882ad9b52 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_cell_base_3.h @@ -32,11 +32,46 @@ namespace CGAL { +/*! +\ingroup PkgSMDS3Classes + +The class `Simplicial_mesh_cell_base_3` +is a model of the concept `SimplicialMeshCellBase_3`. +It is designed to serve as cell base class for 3D simplicial mesh data structures. +It stores and gives access to data about the complex the cell belongs to, such as the +subdomain it belongs to or surface it takes part to. + +\tparam Gt is the geometric traits class. +It must be a model of the concept `TriangulationTraits_3` + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must match the label +of the exterior of the domain (which contains at least the unbounded component). +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. + +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must be the index value +assigned to a non surface facet. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\tparam Cb is the cell base class from which `Simplicial_mesh_cell_base_3` derives. +It must be a model of the concept `TriangulationCellBase_3`. + +\cgalModels `SimplicialMeshCellBase_3` + +\sa `CGAL::Mesh_complex_3_in_triangulation_3` +\sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink +\sa `MeshDomain_3` +\sa `MeshDomainWithFeatures_3` +*/ template -class Simplicial_mesh_cell_3 + typename Cb = Triangulation_cell_base_3 > +class Simplicial_mesh_cell_base_3 : public Cb { public: @@ -50,11 +85,22 @@ public: using Surface_patch_index = SurfacePatchIndex; public: - Simplicial_mesh_cell_3() + template + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_cell_base_3; + }; + +public: + Simplicial_mesh_cell_base_3() : time_stamp_(std::size_t(-1)) {} - Simplicial_mesh_cell_3(const Simplicial_mesh_cell_3& rhs) + Simplicial_mesh_cell_base_3(const Simplicial_mesh_cell_base_3& rhs) : Cb(static_cast(rhs)), time_stamp_(rhs.time_stamp_), subdomain_index_(rhs.subdomain_index_) @@ -63,15 +109,15 @@ public: surface_index_table_[i] = rhs.surface_index_table_[i]; } - Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, - Vertex_handle v2, Vertex_handle v3) + Simplicial_mesh_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3) : Cb(v0, v1, v2, v3) { } - Simplicial_mesh_cell_3(Vertex_handle v0, Vertex_handle v1, - Vertex_handle v2, Vertex_handle v3, - Cell_handle n0, Cell_handle n1, - Cell_handle n2, Cell_handle n3) + Simplicial_mesh_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3, + Cell_handle n0, Cell_handle n1, + Cell_handle n2, Cell_handle n3) : Cb(v0, v1, v2, v3, n0, n1, n2, n3) { } @@ -153,7 +199,7 @@ private: public: friend std::istream& operator>>(std::istream& is, - Simplicial_mesh_cell_3& c) + Simplicial_mesh_cell_base_3& c) { Subdomain_index index; if(IO::is_ascii(is)) @@ -180,7 +226,7 @@ public: friend std::ostream& operator<<(std::ostream& os, - const Simplicial_mesh_cell_3& c) + const Simplicial_mesh_cell_base_3& c) { if(IO::is_ascii(os)) os << c.subdomain_index(); @@ -199,59 +245,6 @@ public: } }; -/*! -\ingroup PkgSMDS3Classes - -The class `Simplicial_mesh_cell_base_3` -is a model of the concept `SimplicialMeshCellBase_3`. -It is designed to serve as cell base class for 3D simplicial mesh data structures. -It stores and gives access to data about the complex the cell belongs to, such as the -subdomain it belongs to or surface it takes part to. - -\tparam Gt is the geometric traits class. -It must be a model of the concept `TriangulationTraits_3` - -\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must match the label -of the exterior of the domain (which contains at least the unbounded component). -It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. - -\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must be the index value -assigned to a non surface facet. -It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. - -\tparam Cb is the cell base class from which `Simplicial_mesh_cell_base_3` derives. -It must be a model of the concept `TriangulationCellBase_3`. - -\cgalModels `SimplicialMeshCellBase_3` - -\sa `CGAL::Mesh_complex_3_in_triangulation_3` -\sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink -\sa `MeshDomain_3` -\sa `MeshDomainWithFeatures_3` -*/ -template > -class Simplicial_mesh_cell_base_3 -{ -public: - template - struct Rebind_TDS - { - using Cb2 = typename Cb::template Rebind_TDS::Other; - using Other = Simplicial_mesh_cell_3; - }; -}; - } // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_CELL_BASE_3_H diff --git a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h index a25cf6f4329..1b47ea8de4f 100644 --- a/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h +++ b/SMDS_3/include/CGAL/Simplicial_mesh_vertex_base_3.h @@ -35,13 +35,62 @@ namespace CGAL { // Adds information to Vb about the localization of the vertex in regards to the 3D input complex. + +/*! +\ingroup PkgSMDS3Classes + +The class `Simplicial_mesh_vertex_base_3` is a model of the concept +`SimplicialMeshVertexBase_3`. +It is designed to serve as vertex base class for 3D simplicial mesh data structures. +It stores and gives access to data about the complex the vertex belongs to, such as the +index of the subcomplex it belongs to. + +\tparam Gt is the geometric traits class. +It must be a model of the concept `TriangulationTraits_3` + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must match the label +of the exterior of the domain (which contains at least the unbounded component). +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. + +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must be the index value +assigned to a non surface facet. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\tparam CurveIndex Type of indices for curves (i.e. \f$ 1\f$-dimensional features) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and +`LessThanComparable`. The default constructed value must be the value for an edge which +does not approximate a 1-dimensional feature of the geometric domain. +It must match `MeshDomainWithFeatures_3::Curve_index` when used for mesh generation. + +\tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) +of the discretized geometric domain. +It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and +`LessThanComparable`. +It must match `MeshDomainWithFeatures_3::Corner_index` when used for mesh generation. + +\tparam Vb is the vertex base class from which `Simplicial_mesh_vertex_base_3` derives. +It must be a model of the concept `TriangulationVertexBase_3`. + +\cgalModels `SimplicialMeshVertexBase_3` + +\sa `CGAL::Mesh_complex_3_in_triangulation_3` +\sa \link Mesh_vertex_base_3 `CGAL::Mesh_vertex_base_3`\endlink +\sa `MeshDomain_3` +\sa `MeshDomainWithFeatures_3` +*/ template -class Simplicial_mesh_vertex_3 + typename Vb = CGAL::Triangulation_vertex_base_3 > +class Simplicial_mesh_vertex_base_3 : public Vb { private : @@ -61,7 +110,20 @@ public: using FT = typename Gt::FT; public: - Simplicial_mesh_vertex_3() + template + struct Rebind_TDS + { + using Vb2 = typename Vb::template Rebind_TDS::Other; + using Other = Simplicial_mesh_vertex_base_3; + }; + +public: + Simplicial_mesh_vertex_base_3() : Vb() , number_of_incident_facets_(0) , number_of_components_(0) @@ -160,7 +222,7 @@ private: public: friend std::istream& operator>>(std::istream& is, - Simplicial_mesh_vertex_3& v) + Simplicial_mesh_vertex_base_3& v) { is >> static_cast(v); int dimension; @@ -186,7 +248,7 @@ public: } friend std::ostream& operator<<(std::ostream& os, - const Simplicial_mesh_vertex_3& v) + const Simplicial_mesh_vertex_base_3& v) { os << static_cast(v); if(IO::is_ascii(os)) { @@ -207,76 +269,6 @@ public: } }; -/*! -\ingroup PkgSMDS3Classes - -The class `Simplicial_mesh_vertex_base_3` is a model of the concept -`SimplicialMeshVertexBase_3`. -It is designed to serve as vertex base class for 3D simplicial mesh data structures. -It stores and gives access to data about the complex the vertex belongs to, such as the -index of the subcomplex it belongs to. - -\tparam Gt is the geometric traits class. -It must be a model of the concept `TriangulationTraits_3` - -\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must match the label -of the exterior of the domain (which contains at least the unbounded component). -It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. - -\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` -and `EqualityComparable`. The default constructed value must be the index value -assigned to a non surface facet. -It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. - -\tparam CurveIndex Type of indices for curves (i.e. \f$ 1\f$-dimensional features) -of the discretized geometric domain. -Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and -`LessThanComparable`. The default constructed value must be the value for an edge which -does not approximate a 1-dimensional feature of the geometric domain. -It must match `MeshDomainWithFeatures_3::Curve_index` when used for mesh generation. - -\tparam CornerIndex Type of indices for corners (i.e.\f$ 0\f$--dimensional features) -of the discretized geometric domain. -It must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` and -`LessThanComparable`. -It must match `MeshDomainWithFeatures_3::Corner_index` when used for mesh generation. - -\tparam Vb is the vertex base class from which `Simplicial_mesh_vertex_base_3` derives. -It must be a model of the concept `TriangulationVertexBase_3`. - -\cgalModels `SimplicialMeshVertexBase_3` - -\sa `CGAL::Mesh_complex_3_in_triangulation_3` -\sa \link Mesh_vertex_base_3 `CGAL::Mesh_vertex_base_3`\endlink -\sa `MeshDomain_3` -\sa `MeshDomainWithFeatures_3` -*/ -template > -class Simplicial_mesh_vertex_base_3 -{ -public: - template - struct Rebind_TDS - { - using Vb2 = typename Vb::template Rebind_TDS::Other; - using Other = Simplicial_mesh_vertex_3; - }; -}; - } // namespace CGAL #endif // CGAL_SIMPLICIAL_MESH_VERTEX_BASE_3_H diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index 30de338cdf7..162cfa27f21 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -22,9 +22,27 @@ namespace CGAL { namespace Tetrahedral_remeshing { +/*! +\ingroup PkgTetrahedralRemeshingClasses + +The class `Remeshing_cell_base_3` is a model of the concept `RemeshingCellBase_3`. +It is designed to serve as cell base class for the 3D triangulation +used in the tetrahedral remeshing process. + +\tparam Gt is the geometric traits class. +It has to be a model of the concept `RemeshingTriangulationTraits_3`. + +\tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. +It must be a model of the `SimplicialMeshCellBase_3` concept. + +\cgalModels `RemeshingCellBase_3` + +*/ template -class Remeshing_cell_3 + typename Cb = CGAL::Simplicial_mesh_cell_base_3 > +class Remeshing_cell_base_3 : public Cb { public: @@ -35,6 +53,14 @@ public: using Geom_traits = Gt; +public: + template + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Remeshing_cell_base_3; + }; + public: using Cb::Cb; // constructors @@ -59,37 +85,6 @@ private: mutable bool sliver_cache_validity_ = false; }; -/*! -\ingroup PkgTetrahedralRemeshingClasses - -The class `Remeshing_cell_base_3` is a model of the concept `RemeshingCellBase_3`. -It is designed to serve as cell base class for the 3D triangulation -used in the tetrahedral remeshing process. - -\tparam Gt is the geometric traits class. -It has to be a model of the concept `RemeshingTriangulationTraits_3`. - -\tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. -It must be a model of the `SimplicialMeshCellBase_3` concept. - -\cgalModels `RemeshingCellBase_3` - -*/ -template > -class Remeshing_cell_base_3 -{ -public: - template - struct Rebind_TDS - { - using Cb2 = typename Cb::template Rebind_TDS::Other; - using Other = Remeshing_cell_3; - }; -}; - } // namespace Tetrahedral_remeshing } // namespace CGAL diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h index faab3950f9a..34e5fb0855c 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_vertex_base_3.h @@ -20,15 +20,6 @@ namespace CGAL { namespace Tetrahedral_remeshing { -template -class Remeshing_vertex_3 - : public Vb -{ -public: - using Vb::Vb; // constructors -}; - /*! \ingroup PkgTetrahedralRemeshingClasses @@ -51,14 +42,18 @@ template > class Remeshing_vertex_base_3 + : public Vb { public: template struct Rebind_TDS { using Vb2 = typename Vb::template Rebind_TDS::Other; - using Other = Remeshing_vertex_3; + using Other = Remeshing_vertex_base_3; }; + +public: + using Vb::Vb; // constructors }; } // namespace Tetrahedral_remeshing From e4dff1ffaf6a481b687239b28648c5fc672008d9 Mon Sep 17 00:00:00 2001 From: albert-github Date: Fri, 21 Jul 2023 11:41:27 +0200 Subject: [PATCH 22/94] issue #7395 Improvement of layout of model relations Corrections after review. --- Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h | 2 +- Generator/doc/Generator/CGAL/point_generators_2.h | 2 +- Number_types/doc/Number_types/CGAL/long_long.h | 2 +- Point_set_3/include/CGAL/Point_set_3.h | 2 +- .../Polyline_simplification_2/Hybrid_squared_distance_cost.h | 2 +- .../CGAL/Polyline_simplification_2/Squared_distance_cost.h | 2 +- .../Polyline_simplification_2/Stop_above_cost_threshold.h | 2 +- .../Stop_below_count_ratio_threshold.h | 2 +- .../Polyline_simplification_2/Stop_below_count_threshold.h | 2 +- .../doc/Set_movable_separability_2/Concepts/CastingTraits_2.h | 2 +- .../doc/Spatial_searching/CGAL/Search_traits_adapter.h | 4 ++-- 11 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h b/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h index 8d030fa2fec..0afba5bd71c 100644 --- a/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h +++ b/Generalized_map/doc/Generalized_map/CGAL/Generalized_map.h @@ -8,7 +8,7 @@ The class `Generalized_map` represents a dD generalized map. Two versions exist: one where darts and non void attributes are stored in memory using `Compact_container`, using `Alloc` as allocator, and use handles as descriptors; a second one where darts and non void attributes are stored in an internal `std::vector` like data-structure, and use indices as descriptors. The choice between the two versions is done through the item class. -\cgalModels{GeneralizedMap}} +\cgalModels{GeneralizedMap} \tparam d the dimension of the map. diff --git a/Generator/doc/Generator/CGAL/point_generators_2.h b/Generator/doc/Generator/CGAL/point_generators_2.h index aec17596750..10319fca737 100644 --- a/Generator/doc/Generator/CGAL/point_generators_2.h +++ b/Generator/doc/Generator/CGAL/point_generators_2.h @@ -677,7 +677,7 @@ endpoints are specified upon construction. The points are equally spaced. \cgalModels{PointGenerator} -\sa `CGAL::points_on_segment_2 +\sa `CGAL::points_on_segment_2` \sa `CGAL::Random_points_in_disc_2` \sa `CGAL::Random_points_in_square_2` \sa `CGAL::Random_points_in_triangle_2` diff --git a/Number_types/doc/Number_types/CGAL/long_long.h b/Number_types/doc/Number_types/CGAL/long_long.h index be91260dc59..83e6e23a058 100644 --- a/Number_types/doc/Number_types/CGAL/long_long.h +++ b/Number_types/doc/Number_types/CGAL/long_long.h @@ -5,4 +5,4 @@ /// type `long long int` is an `RealEmbeddable` `EuclideanRing`. Due /// to overflow `long long int` is considered as not exact. /// -/// \cgalModels{EuclideanRing,cgalModels RealEmbeddable} +/// \cgalModels{EuclideanRing,RealEmbeddable} diff --git a/Point_set_3/include/CGAL/Point_set_3.h b/Point_set_3/include/CGAL/Point_set_3.h index 62ef14a946f..35a7afcad80 100644 --- a/Point_set_3/include/CGAL/Point_set_3.h +++ b/Point_set_3/include/CGAL/Point_set_3.h @@ -161,7 +161,7 @@ public: #ifdef DOXYGEN_RUNNING typedef unspecified_type iterator; ///< Iterator type of the point set with value type `Index` is model of `RandomAccessIterator` - typedef unspecified_type const_iterator; ///< Constant iterator type of the point set with value type `Index` is model of `RandomA.ccessIterator + typedef unspecified_type const_iterator; ///< Constant iterator type of the point set with value type `Index` is model of `RandomA.ccessIterator` #else typedef typename Index_map::iterator iterator; ///< Iterator type of the point set typedef typename Index_map::const_iterator const_iterator; ///< Constant iterator type of the point set diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h index 8cfe6fa2a55..f10167c9570 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Hybrid_squared_distance_cost.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a cost function which calculates the cost as the square of the distance between the original and simplified polylines, /// possibly scaled based on a factor. /// -/// \cgalModels{PolylineSimplificationCostFunction.} +/// \cgalModels{PolylineSimplificationCostFunction} template class Hybrid_squared_distance_cost { diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h index 128327f64c7..ceeca67d79d 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Squared_distance_cost.h @@ -34,7 +34,7 @@ namespace Polyline_simplification_2 /// This class is a cost function which calculates the cost as the square of the distance between the original and simplified polylines. /// -/// \cgalModels{PolylineSimplificationCostFunction.} +/// \cgalModels{PolylineSimplificationCostFunction} class Squared_distance_cost { diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h index ed886701afd..fd4648fa01d 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_above_cost_threshold.h @@ -28,7 +28,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the cost for /// simplifying a vertex is greater than a certain threshold. /// -/// \cgalModels{PolylineSimplificationStopPredicate.} +/// \cgalModels{PolylineSimplificationStopPredicate} class Stop_above_cost_threshold { public : diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h index 9de0bb1888d..1a18d7ceddd 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_ratio_threshold.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the percentage /// of remaining vertices is smaller than a certain threshold. /// -/// \cgalModels{PolylineSimplificationStopPredicate.} +/// \cgalModels{PolylineSimplificationStopPredicate} class Stop_below_count_ratio_threshold { public : diff --git a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h index 072b68166ae..d8987f323e3 100644 --- a/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h +++ b/Polyline_simplification_2/include/CGAL/Polyline_simplification_2/Stop_below_count_threshold.h @@ -27,7 +27,7 @@ namespace Polyline_simplification_2 /// This class is a stop predicate returning `true` when the number of /// vertices is smaller than a certain threshold. /// -/// \cgalModels{PolylineSimplificationStopPredicate.} +/// \cgalModels{PolylineSimplificationStopPredicate} class Stop_below_count_threshold { public : diff --git a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h index 1322002cd6d..6e3b2e1325b 100644 --- a/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h +++ b/Set_movable_separability_2/doc/Set_movable_separability_2/Concepts/CastingTraits_2.h @@ -8,7 +8,7 @@ \cgalRefines{DefaultConstructible,PolygonTraits_2} \cgalHasModelsBegin - \cgalHasModelsBare{Any CGAL kernel, e.g., CGAL::Exact_predicates_exact_constructions_kernel.} + \cgalHasModelsBare{Any \cgal kernel, e.g., CGAL::Exact_predicates_exact_constructions_kernel.} \cgalHasModelsEnd */ diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h index 646ecf4b4a8..267933d15fc 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h @@ -16,8 +16,8 @@ with `Key` as key type and `Base_distance::Point_d` as value type. \tparam Base_distance is a model of either `GeneralDistance` or `OrthogonalDistance`. -\cgalModels{GeneralDistance if Base_distance is a model of `GeneralDistance`, - OrthogonalDistance if Base_distance is a model of `OrthogonalDistance`} +\cgalModels{GeneralDistance if `Base_distance` is a model of `GeneralDistance`, + OrthogonalDistance if `Base_distance` is a model of `OrthogonalDistance`} \sa `Search_traits_adapter` From 5e8d59c4dd9deb5f1c35f0675e96c4bf91578bd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 21 Jul 2023 16:22:41 +0200 Subject: [PATCH 23/94] Make the triangulation a template parameter of the Alpha Wrap builder Advanced users only for now: you need to know what you're doing as the geom traits need to define the Ball_3 (usually that means wrapping your Gt with AABB_AW_geom_traits) and you need to have Vb/Cb contain the AW Vb/Cb in the stack. --- .../CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h | 271 ++++++++++-------- 1 file changed, 148 insertions(+), 123 deletions(-) diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h index f12ad06804b..677242e9da1 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h @@ -34,11 +34,20 @@ #include #include +#include +#include +#include +#include +#include +#include +#include + #include #include #include #include +#include #include #include #include @@ -50,16 +59,9 @@ #include // only if non-manifoldness is not treated #include #include -#include -#include -#include -#include -#include -#include -#include -#include #include +#include #include #include #include @@ -74,6 +76,34 @@ namespace CGAL { namespace Alpha_wraps_3 { namespace internal { +struct Cell_info +{ + bool is_outside = false; +}; + +enum Vertex_info +{ + DEFAULT = 0, + BBOX_VERTEX, + SEED_VERTEX +}; + +template +using Alpha_wrap_triangulation_vertex_base_3 = + CGAL::Triangulation_vertex_base_with_info_3< + Vertex_info, + GeomTraits, + CGAL::Triangulation_vertex_base_3 >; + +template +using Alpha_wrap_triangulation_cell_base_3 = + CGAL::Triangulation_cell_base_with_info_3< + Cell_info, + GeomTraits, + CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3< + GeomTraits, + CGAL::Delaunay_triangulation_cell_base_3 > >; + template class Cell_base_with_timestamp : public Cb @@ -125,11 +155,34 @@ struct Wrapping_default_visitor void on_alpha_wrapping_end(const AlphaWrapper&) { }; }; -template +template class Alpha_wrap_3 { + using Oracle = Oracle_; + + // Triangulation using Base_GT = typename Oracle::Geom_traits; - using Geom_traits = Robust_circumcenter_filtered_traits_3; + using Default_Gt = Robust_circumcenter_filtered_traits_3; + + using Default_Vb = Alpha_wrap_triangulation_vertex_base_3; + using Default_Cb = Alpha_wrap_triangulation_cell_base_3; + using Default_Cbt = Cell_base_with_timestamp; // determinism + using Default_Tds = CGAL::Triangulation_data_structure_3; + using Default_Triangulation = CGAL::Delaunay_triangulation_3; + + using Triangulation = typename Default::Get::type; + + using Cell_handle = typename Triangulation::Cell_handle; + using Facet = typename Triangulation::Facet; + using Vertex_handle = typename Triangulation::Vertex_handle; + using Locate_type = typename Triangulation::Locate_type; + + using Gate = internal::Gate; + using Alpha_PQ = Modifiable_priority_queue, CGAL_BOOST_PAIRING_HEAP>; + + // Use the geom traits from the triangulation, and trust the (advanced) user that provided it + using Geom_traits = typename Triangulation::Geom_traits; using FT = typename Geom_traits::FT; using Point_3 = typename Geom_traits::Point_3; @@ -143,34 +196,6 @@ class Alpha_wrap_3 using SC_Iso_cuboid_3 = SC::Iso_cuboid_3; using SC2GT = Cartesian_converter; - struct Cell_info - { - bool is_outside = false; - }; - - enum Vertex_info - { - DEFAULT = 0, - BBOX_VERTEX, - SEED_VERTEX - }; - - using Vb = Triangulation_vertex_base_3; - using Vbi = Triangulation_vertex_base_with_info_3; - using Cbb = Delaunay_triangulation_cell_base_3; - using Cb = Delaunay_triangulation_cell_base_with_circumcenter_3; - using Cbi = Triangulation_cell_base_with_info_3; - using Cbt = Cell_base_with_timestamp; - using Tds = Triangulation_data_structure_3; - using Dt = Delaunay_triangulation_3; - - using Cell_handle = typename Dt::Cell_handle; - using Facet = typename Dt::Facet; - using Vertex_handle = typename Dt::Vertex_handle; - using Locate_type = typename Dt::Locate_type; - - using Gate = internal::Gate
    ; - using Alpha_PQ = Modifiable_priority_queue, CGAL_BOOST_PAIRING_HEAP>; protected: const Oracle m_oracle; @@ -179,7 +204,7 @@ protected: FT m_alpha, m_sq_alpha; FT m_offset, m_sq_offset; - Dt m_dt; + Triangulation m_tr; Alpha_PQ m_queue; public: @@ -187,7 +212,7 @@ public: Alpha_wrap_3(const Oracle& oracle) : m_oracle(oracle), - m_dt(Geom_traits(oracle.geom_traits())), + m_tr(Geom_traits(oracle.geom_traits())), // used to set up the initial MPQ, use some arbitrary not-too-small value m_queue(4096) { @@ -197,9 +222,9 @@ public: } public: - const Geom_traits& geom_traits() const { return m_dt.geom_traits(); } - Dt& triangulation() { return m_dt; } - const Dt& triangulation() const { return m_dt; } + const Geom_traits& geom_traits() const { return m_tr.geom_traits(); } + Triangulation& triangulation() { return m_tr; } + const Triangulation& triangulation() const { return m_tr; } const Alpha_PQ& queue() const { return m_queue; } double default_alpha() const @@ -216,13 +241,13 @@ private: const Point_3& circumcenter(const Cell_handle c) const { // We only cross an infinite facet once, so this isn't going to be recomputed many times - if(m_dt.is_infinite(c)) + if(m_tr.is_infinite(c)) { - const int inf_index = c->index(m_dt.infinite_vertex()); + const int inf_index = c->index(m_tr.infinite_vertex()); c->set_circumcenter( - geom_traits().construct_circumcenter_3_object()(m_dt.point(c, (inf_index+1)&3), - m_dt.point(c, (inf_index+2)&3), - m_dt.point(c, (inf_index+3)&3))); + geom_traits().construct_circumcenter_3_object()(m_tr.point(c, (inf_index+1)&3), + m_tr.point(c, (inf_index+2)&3), + m_tr.point(c, (inf_index+3)&3))); } return c->circumcenter(geom_traits()); @@ -418,7 +443,7 @@ private: for(int i=0; i<8; ++i) { const Point_3 bp = SC2GT()(m_bbox.vertex(i)); - Vertex_handle bv = m_dt.insert(bp); + Vertex_handle bv = m_tr.insert(bp); #ifdef CGAL_AW3_DEBUG_INITIALIZATION std::cout << "\t" << bp << std::endl; #endif @@ -433,7 +458,7 @@ private: // that the refinement point is separated from the existing point set. bool cavity_cell_outside_tag(const Cell_handle ch) { - CGAL_precondition(!m_dt.is_infinite(ch)); + CGAL_precondition(!m_tr.is_infinite(ch)); const Tetrahedron_with_outside_info tet(ch, geom_traits()); if(m_oracle.do_intersect(tet)) @@ -536,7 +561,7 @@ private: // This problem only appears when the seed and icosahedron vertices are close to the offset surface, // which usually happens for large alpha values. - Vertex_handle seed_v = m_dt.insert(seed_p); + Vertex_handle seed_v = m_tr.insert(seed_p); seed_v->info() = SEED_VERTEX; seed_vs.push_back(seed_v); @@ -573,7 +598,7 @@ private: if(bbox.has_on_unbounded_side(seed_neighbor_p)) continue; - Vertex_handle ico_v = m_dt.insert(seed_neighbor_p, seed_v /*hint*/); + Vertex_handle ico_v = m_tr.insert(seed_neighbor_p, seed_v /*hint*/); ico_v->info() = SEED_VERTEX; } } @@ -587,26 +612,26 @@ private: } #ifdef CGAL_AW3_DEBUG_INITIALIZATION - std::cout << m_dt.number_of_vertices() - 8 /*bbox*/ << " vertice(s) due to seeds" << std::endl; + std::cout << m_tr.number_of_vertices() - 8 /*bbox*/ << " vertice(s) due to seeds" << std::endl; #endif for(Vertex_handle seed_v : seed_vs) { std::vector inc_cells; inc_cells.reserve(64); - m_dt.incident_cells(seed_v, std::back_inserter(inc_cells)); + m_tr.incident_cells(seed_v, std::back_inserter(inc_cells)); for(Cell_handle ch : inc_cells) ch->info().is_outside = cavity_cell_outside_tag(ch); } // Might as well go through the full triangulation since only seeds should have been inserted - for(Cell_handle ch : m_dt.all_cell_handles()) + for(Cell_handle ch : m_tr.all_cell_handles()) { if(!ch->info().is_outside) continue; // When the algorithm starts from a manually dug hole, infinite cells are tagged "inside" - CGAL_assertion(!m_dt.is_infinite(ch)); + CGAL_assertion(!m_tr.is_infinite(ch)); for(int i=0; i<4; ++i) push_facet(std::make_pair(ch, i)); @@ -627,12 +652,12 @@ private: // init queue with all convex hull facets bool initialize_from_infinity() { - for(Cell_handle ch : m_dt.all_cell_handles()) + for(Cell_handle ch : m_tr.all_cell_handles()) { - if(m_dt.is_infinite(ch)) + if(m_tr.is_infinite(ch)) { ch->info().is_outside = true; - const int inf_index = ch->index(m_dt.infinite_vertex()); + const int inf_index = ch->index(m_tr.infinite_vertex()); push_facet(std::make_pair(ch, inf_index)); } else @@ -659,10 +684,10 @@ public: clear(output_mesh); - CGAL_assertion_code(for(auto cit=m_dt.finite_cells_begin(), cend=m_dt.finite_cells_end(); cit!=cend; ++cit)) + CGAL_assertion_code(for(auto cit=m_tr.finite_cells_begin(), cend=m_tr.finite_cells_end(); cit!=cend; ++cit)) CGAL_assertion(cit->tds_data().is_clear()); - for(auto cit=m_dt.finite_cells_begin(), cend=m_dt.finite_cells_end(); cit!=cend; ++cit) + for(auto cit=m_tr.finite_cells_begin(), cend=m_tr.finite_cells_end(); cit!=cend; ++cit) { Cell_handle seed = cit; if(seed->info().is_outside || seed->tds_data().processed()) @@ -678,7 +703,7 @@ public: while(!to_visit.empty()) { const Cell_handle cell = to_visit.front(); - CGAL_assertion(!cell->info().is_outside && !m_dt.is_infinite(cell)); + CGAL_assertion(!cell->info().is_outside && !m_tr.is_infinite(cell)); to_visit.pop(); @@ -698,9 +723,9 @@ public: // CGAL_assertion(cell->vertex((fid + 2)&3)->info() == DEFAULT); // CGAL_assertion(cell->vertex((fid + 3)&3)->info() == DEFAULT); - points.push_back(m_dt.point(cell, Dt::vertex_triple_index(fid, 0))); - points.push_back(m_dt.point(cell, Dt::vertex_triple_index(fid, 1))); - points.push_back(m_dt.point(cell, Dt::vertex_triple_index(fid, 2))); + points.push_back(m_tr.point(cell, Triangulation::vertex_triple_index(fid, 0))); + points.push_back(m_tr.point(cell, Triangulation::vertex_triple_index(fid, 1))); + points.push_back(m_tr.point(cell, Triangulation::vertex_triple_index(fid, 2))); faces.push_back({idx, idx + 1, idx + 2}); idx += 3; } @@ -722,7 +747,7 @@ public: CGAL_assertion(is_closed(output_mesh)); } - for(auto cit=m_dt.finite_cells_begin(), cend=m_dt.finite_cells_end(); cit!=cend; ++cit) + for(auto cit=m_tr.finite_cells_begin(), cend=m_tr.finite_cells_end(); cit!=cend; ++cit) cit->tds_data().clear(); CGAL_postcondition(!is_empty(output_mesh)); @@ -742,7 +767,7 @@ public: std::cout << "> Extract wrap... ()" << std::endl; #endif - CGAL_assertion_code(for(Vertex_handle v : m_dt.finite_vertex_handles())) + CGAL_assertion_code(for(Vertex_handle v : m_tr.finite_vertex_handles())) CGAL_assertion(!is_non_manifold(v)); clear(output_mesh); @@ -754,11 +779,11 @@ public: std::unordered_map vertex_to_id; std::size_t nv = 0; - for(auto fit=m_dt.finite_facets_begin(), fend=m_dt.finite_facets_end(); fit!=fend; ++fit) + for(auto fit=m_tr.finite_facets_begin(), fend=m_tr.finite_facets_end(); fit!=fend; ++fit) { Facet f = *fit; if(!f.first->info().is_outside) - f = m_dt.mirror_facet(f); + f = m_tr.mirror_facet(f); const Cell_handle c = f.first; const int s = f.second; @@ -769,11 +794,11 @@ public: std::array ids; for(int pos=0; pos<3; ++pos) { - Vertex_handle vh = c->vertex(Dt::vertex_triple_index(s, pos)); + Vertex_handle vh = c->vertex(Triangulation::vertex_triple_index(s, pos)); auto insertion_res = vertex_to_id.emplace(vh, nv); if(insertion_res.second) // successful insertion, never-seen-before vertex { - points.push_back(m_dt.point(vh)); + points.push_back(m_tr.point(vh)); ++nv; } @@ -817,14 +842,14 @@ public: private: bool is_traversable(const Facet& f) const { - return less_squared_radius_of_min_empty_sphere(m_sq_alpha, f, m_dt); + return less_squared_radius_of_min_empty_sphere(m_sq_alpha, f, m_tr); } bool compute_steiner_point(const Cell_handle ch, const Cell_handle neighbor, Point_3& steiner_point) const { - CGAL_precondition(!m_dt.is_infinite(neighbor)); + CGAL_precondition(!m_tr.is_infinite(neighbor)); typename Geom_traits::Construct_ball_3 ball = geom_traits().construct_ball_3_object(); typename Geom_traits::Construct_vector_3 vector = geom_traits().construct_vector_3_object(); @@ -920,7 +945,7 @@ private: // e.g. from DT3 Facet_queue_status facet_status(const Facet& f) const { - CGAL_precondition(!m_dt.is_infinite(f)); + CGAL_precondition(!m_tr.is_infinite(f)); #ifdef CGAL_AW3_DEBUG_FACET_STATUS std::cout << "facet status: " @@ -933,7 +958,7 @@ private: const Cell_handle ch = f.first; const int id = f.second; const Cell_handle nh = ch->neighbor(id); - if(m_dt.is_infinite(nh)) + if(m_tr.is_infinite(nh)) return TRAVERSABLE; if(nh->info().is_outside) @@ -947,7 +972,7 @@ private: // push if facet is connected to artificial vertices for(int i=0; i<3; ++i) { - const Vertex_handle vh = ch->vertex(Dt::vertex_triple_index(id, i)); + const Vertex_handle vh = ch->vertex(Triangulation::vertex_triple_index(id, i)); if(vh->info() == BBOX_VERTEX || vh->info() == SEED_VERTEX) { #ifdef CGAL_AW3_DEBUG_FACET_STATUS @@ -986,9 +1011,9 @@ private: const Cell_handle ch = f.first; const int id = f.second; - const Point_3& p0 = m_dt.point(ch, (id+1)&3); - const Point_3& p1 = m_dt.point(ch, (id+2)&3); - const Point_3& p2 = m_dt.point(ch, (id+3)&3); + const Point_3& p0 = m_tr.point(ch, (id+1)&3); + const Point_3& p1 = m_tr.point(ch, (id+2)&3); + const Point_3& p2 = m_tr.point(ch, (id+3)&3); // @todo should prob be the real value we compare to alpha instead of squared_radius const FT sqr = geom_traits().compute_squared_radius_3_object()(p0, p1, p2); @@ -1022,7 +1047,7 @@ private: m_offset = FT(offset); m_sq_offset = square(m_offset); - m_dt.clear(); + m_tr.clear(); m_queue.clear(); insert_bbox_corners(); @@ -1052,7 +1077,7 @@ private: // const& to something that will be popped, but safe as `ch` && `id` are extracted before the pop const Gate& gate = m_queue.top(); const Facet& f = gate.facet(); - CGAL_precondition(!m_dt.is_infinite(f)); + CGAL_precondition(!m_tr.is_infinite(f)); const Cell_handle ch = f.first; const int id = f.second; @@ -1060,11 +1085,11 @@ private: #ifdef CGAL_AW3_DEBUG_QUEUE static int fid = 0; - std::cout << m_dt.number_of_vertices() << " DT vertices" << std::endl; + std::cout << m_tr.number_of_vertices() << " DT vertices" << std::endl; std::cout << m_queue.size() << " facets in the queue" << std::endl; std::cout << "Face " << fid++ << "\n" - << "c = " << &*ch << " (" << m_dt.is_infinite(ch) << "), n = " << &*neighbor << " (" << m_dt.is_infinite(neighbor) << ")" << "\n" - << m_dt.point(ch, (id+1)&3) << "\n" << m_dt.point(ch, (id+2)&3) << "\n" << m_dt.point(ch, (id+3)&3) << std::endl; + << "c = " << &*ch << " (" << m_tr.is_infinite(ch) << "), n = " << &*neighbor << " (" << m_tr.is_infinite(neighbor) << ")" << "\n" + << m_tr.point(ch, (id+1)&3) << "\n" << m_tr.point(ch, (id+2)&3) << "\n" << m_tr.point(ch, (id+3)&3) << std::endl; std::cout << "Priority: " << gate.priority() << std::endl; #endif @@ -1080,11 +1105,11 @@ private: std::string face_name = "results/steps/face_" + std::to_string(static_cast(i++)) + ".xyz"; std::ofstream face_out(face_name); face_out.precision(17); - face_out << "3\n" << m_dt.point(ch, (id+1)&3) << "\n" << m_dt.point(ch, (id+2)&3) << "\n" << m_dt.point(ch, (id+3)&3) << std::endl; + face_out << "3\n" << m_tr.point(ch, (id+1)&3) << "\n" << m_tr.point(ch, (id+2)&3) << "\n" << m_tr.point(ch, (id+3)&3) << std::endl; face_out.close(); #endif - if(m_dt.is_infinite(neighbor)) + if(m_tr.is_infinite(neighbor)) { neighbor->info().is_outside = true; continue; @@ -1100,14 +1125,14 @@ private: // locate cells that are going to be destroyed and remove their facet from the queue int li, lj = 0; Locate_type lt; - const Cell_handle conflict_cell = m_dt.locate(steiner_point, lt, li, lj, neighbor); - CGAL_assertion(lt != Dt::VERTEX); + const Cell_handle conflict_cell = m_tr.locate(steiner_point, lt, li, lj, neighbor); + CGAL_assertion(lt != Triangulation::VERTEX); std::vector boundary_facets; std::vector conflict_zone; boundary_facets.reserve(32); conflict_zone.reserve(32); - m_dt.find_conflicts(steiner_point, conflict_cell, + m_tr.find_conflicts(steiner_point, conflict_cell, std::back_inserter(boundary_facets), std::back_inserter(conflict_zone)); @@ -1125,7 +1150,7 @@ private: for(const Facet& f : boundary_facets) { - const Facet mf = m_dt.mirror_facet(f); // boundary facets have incident cells in the CZ + const Facet mf = m_tr.mirror_facet(f); // boundary facets have incident cells in the CZ if(m_queue.contains_with_bounds_check(Gate(mf))) m_queue.erase(Gate(mf)); } @@ -1133,18 +1158,18 @@ private: visitor.before_Steiner_point_insertion(*this, steiner_point); // Actual insertion of the Steiner point - Vertex_handle vh = m_dt.insert(steiner_point, lt, conflict_cell, li, lj); + Vertex_handle vh = m_tr.insert(steiner_point, lt, conflict_cell, li, lj); vh->info() = DEFAULT; visitor.after_Steiner_point_insertion(*this, vh); std::vector new_cells; new_cells.reserve(32); - m_dt.incident_cells(vh, std::back_inserter(new_cells)); + m_tr.incident_cells(vh, std::back_inserter(new_cells)); for(const Cell_handle& ch : new_cells) { // std::cout << "new cell has time stamp " << ch->time_stamp() << std::endl; - ch->info().is_outside = m_dt.is_infinite(ch); + ch->info().is_outside = m_tr.is_infinite(ch); } // Push all new boundary facets to the queue. @@ -1156,7 +1181,7 @@ private: { for(int i=0; i<4; ++i) { - if(m_dt.is_infinite(ch, i)) + if(m_tr.is_infinite(ch, i)) continue; const Cell_handle nh = ch->neighbor(i); @@ -1167,7 +1192,7 @@ private: if(ch->info().is_outside) push_facet(boundary_f); else - push_facet(m_dt.mirror_facet(boundary_f)); + push_facet(m_tr.mirror_facet(boundary_f)); } } } @@ -1188,10 +1213,10 @@ private: visitor.on_flood_fill_end(*this); // Check that no useful facet has been ignored - CGAL_postcondition_code(for(auto fit=m_dt.finite_facets_begin(), fend=m_dt.finite_facets_end(); fit!=fend; ++fit) {) + CGAL_postcondition_code(for(auto fit=m_tr.finite_facets_begin(), fend=m_tr.finite_facets_end(); fit!=fend; ++fit) {) CGAL_postcondition_code( if(fit->first->info().is_outside == fit->first->neighbor(fit->second)->info().is_outside) continue;) CGAL_postcondition_code( Facet f = *fit;) - CGAL_postcondition_code( if(!fit->first->info().is_outside) f = m_dt.mirror_facet(f);) + CGAL_postcondition_code( if(!fit->first->info().is_outside) f = m_tr.mirror_facet(f);) CGAL_postcondition( facet_status(f) == IRRELEVANT); CGAL_postcondition_code(}) } @@ -1199,13 +1224,13 @@ private: private: bool is_non_manifold(Vertex_handle v) const { - CGAL_precondition(!m_dt.is_infinite(v)); + CGAL_precondition(!m_tr.is_infinite(v)); bool is_non_manifold = false; std::vector inc_cells; inc_cells.reserve(64); - m_dt.incident_cells(v, std::back_inserter(inc_cells)); + m_tr.incident_cells(v, std::back_inserter(inc_cells)); // Flood one inside and outside CC. // Process both an inside and an outside CC to also detect edge pinching. @@ -1278,7 +1303,7 @@ private: bool is_non_manifold(Cell_handle c) const { - CGAL_precondition(!m_dt.is_infinite(c)); + CGAL_precondition(!m_tr.is_infinite(c)); for(int i=0; i<4; ++i) { @@ -1294,7 +1319,7 @@ private: { // Not the best complexity, but it's not important: this function is purely for information // Better complexity --> see PMP::non_manifold_vertices + throw - for(const Vertex_handle v : m_dt.finite_vertex_handles()) + for(const Vertex_handle v : m_tr.finite_vertex_handles()) if(is_non_manifold(v)) return true; @@ -1307,14 +1332,14 @@ private: bool remove_bbox_vertices() { bool do_remove = true; - auto vit = m_dt.finite_vertices_begin(); + auto vit = m_tr.finite_vertices_begin(); for(std::size_t i=0; i<8; ++i) { Vertex_handle v = vit++; std::vector inc_cells; inc_cells.reserve(64); - m_dt.finite_incident_cells(v, std::back_inserter(inc_cells)); + m_tr.finite_incident_cells(v, std::back_inserter(inc_cells)); for(Cell_handle c : inc_cells) { @@ -1333,11 +1358,11 @@ private: if(!do_remove) return false; - vit = m_dt.finite_vertices_begin(); + vit = m_tr.finite_vertices_begin(); for(std::size_t i=0; i<8; ++i) { Vertex_handle v = vit++; - m_dt.remove(v); + m_tr.remove(v); } return true; @@ -1355,7 +1380,7 @@ public: // remove_bbox_vertices(); std::stack non_manifold_vertices; // @todo sort somehow? - for(Vertex_handle v : m_dt.finite_vertex_handles()) + for(Vertex_handle v : m_tr.finite_vertex_handles()) { if(is_non_manifold(v)) non_manifold_vertices.push(v); @@ -1395,17 +1420,17 @@ public: // auto sq_circumradius = [&](Cell_handle c) -> FT // { // const Point_3& cc = circumcenter(c); -// return geom_traits().compute_squared_distance_3_object()(m_dt.point(c, 0), cc); +// return geom_traits().compute_squared_distance_3_object()(m_tr.point(c, 0), cc); // }; auto sq_longest_edge = [&](Cell_handle c) -> FT { - return (std::max)({ squared_distance(m_dt.point(c, 0), m_dt.point(c, 1)), - squared_distance(m_dt.point(c, 0), m_dt.point(c, 2)), - squared_distance(m_dt.point(c, 0), m_dt.point(c, 3)), - squared_distance(m_dt.point(c, 1), m_dt.point(c, 2)), - squared_distance(m_dt.point(c, 3), m_dt.point(c, 3)), - squared_distance(m_dt.point(c, 2), m_dt.point(c, 3)) }); + return (std::max)({ squared_distance(m_tr.point(c, 0), m_tr.point(c, 1)), + squared_distance(m_tr.point(c, 0), m_tr.point(c, 2)), + squared_distance(m_tr.point(c, 0), m_tr.point(c, 3)), + squared_distance(m_tr.point(c, 1), m_tr.point(c, 2)), + squared_distance(m_tr.point(c, 3), m_tr.point(c, 3)), + squared_distance(m_tr.point(c, 2), m_tr.point(c, 3)) }); }; #ifdef CGAL_AW3_DEBUG_MANIFOLDNESS @@ -1450,7 +1475,7 @@ public: std::vector inc_cells; inc_cells.reserve(64); - m_dt.finite_incident_cells(v, std::back_inserter(inc_cells)); + m_tr.finite_incident_cells(v, std::back_inserter(inc_cells)); #define CGAL_AW3_USE_BRUTE_FORCE_MUTABLE_PRIORITY_QUEUE #ifndef CGAL_AW3_USE_BRUTE_FORCE_MUTABLE_PRIORITY_QUEUE @@ -1464,7 +1489,7 @@ public: std::sort(cit, cend, comparer); #endif Cell_handle ic = *cit; - CGAL_assertion(!m_dt.is_infinite(ic)); + CGAL_assertion(!m_tr.is_infinite(ic)); // This is where new material is added ic->info().is_outside = false; @@ -1484,14 +1509,14 @@ public: std::vector adj_vertices; adj_vertices.reserve(64); - m_dt.finite_adjacent_vertices(v, std::back_inserter(adj_vertices)); + m_tr.finite_adjacent_vertices(v, std::back_inserter(adj_vertices)); for(Vertex_handle nv : adj_vertices) if(is_non_manifold(nv)) non_manifold_vertices.push(nv); } - CGAL_assertion_code(for(Vertex_handle v : m_dt.finite_vertex_handles())) + CGAL_assertion_code(for(Vertex_handle v : m_tr.finite_vertex_handles())) CGAL_assertion(!is_non_manifold(v)); } @@ -1508,12 +1533,12 @@ private: const Facet& current_f = current_gate.facet(); const Cell_handle ch = current_f.first; const int id = current_f.second; - const Point_3& p0 = m_dt.point(ch, (id+1)&3); - const Point_3& p1 = m_dt.point(ch, (id+2)&3); - const Point_3& p2 = m_dt.point(ch, (id+3)&3); + const Point_3& p0 = m_tr.point(ch, (id+1)&3); + const Point_3& p1 = m_tr.point(ch, (id+2)&3); + const Point_3& p2 = m_tr.point(ch, (id+3)&3); const FT sqr = geom_traits().compute_squared_radius_3_object()(p0, p1, p2); - std::cout << "At Facet with VID " << get(Gate_ID_PM
    (), current_gate) << std::endl; + std::cout << "At Facet with VID " << get(Gate_ID_PM(), current_gate) << std::endl; if(current_gate.priority() != sqr) std::cerr << "Error: facet in queue has wrong priority" << std::endl; @@ -1546,7 +1571,7 @@ private: std::size_t nv = 0; std::size_t nf = 0; - for(auto fit=m_dt.finite_facets_begin(), fend=m_dt.finite_facets_end(); fit!=fend; ++fit) + for(auto fit=m_tr.finite_facets_begin(), fend=m_tr.finite_facets_end(); fit!=fend; ++fit) { Cell_handle c = fit->first; int s = fit->second; @@ -1562,7 +1587,7 @@ private: auto insertion_res = vertex_to_id.emplace(v, nv); if(insertion_res.second) { - vertices_ss << m_dt.point(v) << "\n"; + vertices_ss << m_tr.point(v) << "\n"; ++nv; } From 924f2df4925ac6f1da1f523654a50ac79a86b9d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 21 Jul 2023 16:24:45 +0200 Subject: [PATCH 24/94] Add an example: remeshing the (internal) 3D triangulation of an alpha wrap --- .../examples/Alpha_wrap_3/CMakeLists.txt | 1 + .../examples/Alpha_wrap_3/volumetric_wrap.cpp | 174 ++++++++++++++++++ 2 files changed, 175 insertions(+) create mode 100644 Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/CMakeLists.txt b/Alpha_wrap_3/examples/Alpha_wrap_3/CMakeLists.txt index 2014b9baa7c..0be54f87eed 100644 --- a/Alpha_wrap_3/examples/Alpha_wrap_3/CMakeLists.txt +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/CMakeLists.txt @@ -12,3 +12,4 @@ create_single_source_cgal_program("triangle_soup_wrap.cpp") create_single_source_cgal_program("point_set_wrap.cpp") create_single_source_cgal_program("wrap_from_cavity.cpp") create_single_source_cgal_program("mixed_inputs_wrap.cpp") +create_single_source_cgal_program("volumetric_wrap.cpp") diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp new file mode 100644 index 00000000000..7fb4d470420 --- /dev/null +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp @@ -0,0 +1,174 @@ +#include +#include + +#include + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include +#include + +#include +#include + +namespace PMP = CGAL::Polygon_mesh_processing; +namespace AW3i = CGAL::Alpha_wraps_3::internal; + +using K = CGAL::Exact_predicates_inexact_constructions_kernel; +using Point_3 = K::Point_3; + +using Points = std::vector; +using Face = std::array; +using Faces = std::vector; + +using Mesh = CGAL::Surface_mesh; + +// If we provide a triangulation, AW3 uses its Gt, so we have to make the Gt stack explicit +using Gtb = AW3i::Alpha_wrap_AABB_geom_traits; // provides Ball_3 +using Gt = CGAL::Robust_circumcenter_filtered_traits_3; // better inexact constructions (not mandatory) + +// Since we are going to use tetrahedral remeshing on the underlying triangulation, +// we need special vertex and cell base types that meets the requirements of the +// tetrahedral remeshing concepts +using Vbbb = AW3i::Alpha_wrap_triangulation_vertex_base_3; +using Vbb = CGAL::Simplicial_mesh_vertex_base_3; +using Vb = CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3; + +using Cbbb = AW3i::Alpha_wrap_triangulation_cell_base_3; +using Cbb = CGAL::Simplicial_mesh_cell_base_3; +using Cb = CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3; + +using Tds = CGAL::Triangulation_data_structure_3; + +using Delaunay_triangulation = CGAL::Delaunay_triangulation_3; + +// because the Fast_location does all kinds of rebinding shenanigans + T3_hierarchy is in the stack... +using Triangulation = CGAL::Triangulation_3; + +using Facet = Triangulation::Facet; + +int main(int argc, char** argv) +{ + // Read the input + const std::string filename = (argc > 1) ? argv[1] : CGAL::data_file_path("meshes/armadillo.off"); + std::cout << "Reading " << filename << "..." << std::endl; + + Points points; + Faces faces; + if(!CGAL::IO::read_polygon_soup(filename, points, faces) || faces.empty()) + { + std::cerr << "Invalid input." << std::endl; + return EXIT_FAILURE; + } + + std::cout << "Input: " << points.size() << " vertices, " << faces.size() << " faces" << std::endl; + + // Compute the alpha and offset values + const double relative_alpha = (argc > 2) ? std::stod(argv[2]) : 20.; + const double relative_offset = (argc > 3) ? std::stod(argv[3]) : 600.; + + CGAL::Bbox_3 bbox; + for(const Point_3& p : points) + bbox += p.bbox(); + + const double diag_length = std::sqrt(CGAL::square(bbox.xmax() - bbox.xmin()) + + CGAL::square(bbox.ymax() - bbox.ymin()) + + CGAL::square(bbox.zmax() - bbox.zmin())); + + const double alpha = diag_length / relative_alpha; + const double offset = diag_length / relative_offset; + std::cout << "alpha: " << alpha << ", offset: " << offset << std::endl; + + // Construct the wrap + CGAL::Real_timer t; + t.start(); + + using Oracle = CGAL::Alpha_wraps_3::internal::Triangle_soup_oracle; + + Oracle oracle(K{}); + oracle.add_triangle_soup(points, faces, CGAL::parameters::default_values()); + + CGAL::Alpha_wraps_3::internal::Alpha_wrap_3 aw3(oracle); + Mesh wrap; + aw3(alpha, offset, wrap); + + t.stop(); + std::cout << "Result: " << num_vertices(wrap) << " vertices, " << num_faces(wrap) << " faces" << std::endl; + std::cout << "Took " << t.time() << " s." << std::endl; + + // Get the interior tetrahedrization + auto dt = aw3.triangulation(); + + // Save the result + std::string input_name = std::string(filename); + input_name = input_name.substr(input_name.find_last_of("/") + 1, input_name.length() - 1); + input_name = input_name.substr(0, input_name.find_last_of(".")); + std::string output_name = input_name + + "_" + std::to_string(static_cast(relative_alpha)) + + "_" + std::to_string(static_cast(relative_offset)) + ".off"; + std::cout << "Writing to " << output_name << std::endl; + CGAL::IO::write_polygon_mesh(output_name, wrap, CGAL::parameters::stream_precision(17)); + + // Remesh the interior of the wrap + const Delaunay_triangulation& aw3_dt = aw3.triangulation(); + const Triangulation& aw3_tr = static_cast(aw3_dt); + Triangulation tr = aw3_tr; // intentional copy + + std::cout << "BEFORE: " << tr.number_of_vertices() << " vertices, " << tr.number_of_cells() << " cells" << std::endl; + + // Set up the domain information and grab the boundary faces + std::set boundary_facets; + + for(auto v : tr.finite_vertex_handles()) + v->set_dimension(3); + + for(auto c : tr.finite_cell_handles()) + { + if(c->info().is_outside) + c->set_subdomain_index(0); + else + c->set_subdomain_index(1); + + // if the neighboring cell has a different outside info, put the vertices + // of the common face on the surface boundary + for(int i=0; i<4; ++i) + { + if(c->neighbor(i)->info().is_outside != c->info().is_outside) + { + c->set_surface_patch_index(i, 1); + boundary_facets.emplace(c, i); + for(int j=1; j<4; ++j) + c->vertex((i+j)%4)->set_dimension(2); + } + } + } + + // CGAL::draw(tr); + std::ofstream out_before("before_remeshing.mesh"); + CGAL::IO::write_MEDIT(out_before, tr); + + auto fcm = CGAL::make_boolean_property_map(boundary_facets); + CGAL::tetrahedral_isotropic_remeshing(tr, alpha, + CGAL::parameters::facet_is_constrained_map(fcm)); + + std::cout << "AFTER: " << tr.number_of_vertices() << " vertices, " << tr.number_of_cells() << " cells" << std::endl; + + // CGAL::draw(tr); + std::ofstream out_after("after_remeshing.mesh"); + CGAL::IO::write_MEDIT(out_after, tr); + + return EXIT_SUCCESS; +} From e0bb872d8a8160bf962236a1528ae288b39d6085 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 21 Jul 2023 16:26:12 +0200 Subject: [PATCH 25/94] Minor doc typo --- .../doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt index 6336998d527..5ae7a827373 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt @@ -15,7 +15,7 @@ namespace CGAL { \section secTetRemeshing Multi-Material Isotropic Tetrahedral Remeshing This package implements an algorithm for quality tetrahedral remeshing, -introduced by N.Faraj et al in \cgalCite{faraj2016mvr}. +introduced by Faraj et al in \cgalCite{faraj2016mvr}. This practical iterative remeshing algorithm is designed to remesh multi-material tetrahedral meshes, by iteratively performing a sequence of elementary operations such as edge splits, edge collapses, edge flips, From 32054661c7242b63592fe32abad3a806b3c690e2 Mon Sep 17 00:00:00 2001 From: albert-github Date: Fri, 21 Jul 2023 19:21:09 +0200 Subject: [PATCH 26/94] issue #7395 Improvement of layout of model relations Replacing the `cgalModelsBare` construct with a `begin` / `end` construct so no less understandable constructs with `\,` and `\n` are necessary. --- .../AABB_halfedge_graph_segment_primitive.h | 6 +++-- AABB_tree/include/CGAL/AABB_primitive.h | 6 +++-- BGL/doc/BGL/CGAL/boost/graph/properties.h | 10 +++++++++ .../doc/resources/1.8.13/BaseDoxyfile.in | 5 +++-- .../doc/resources/1.9.6/BaseDoxyfile.in | 5 +++-- .../doc/HalfedgeDS/CGAL/HalfedgeDS_default.h | 2 ++ .../doc/HalfedgeDS/CGAL/HalfedgeDS_list.h | 2 ++ .../doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h | 2 ++ .../Kernel_23/CGAL/Projection_traits_xy_3.h | 19 +++++++++++----- .../doc/Number_types/CGAL/Sqrt_extension.h | 18 ++++++++------- Polynomial/doc/Polynomial/CGAL/Polynomial.h | 22 ++++++++++--------- .../Triangulation_face_base_with_info_2.h | 6 +++-- .../Triangulation_vertex_base_with_info_2.h | 8 ++++--- 13 files changed, 74 insertions(+), 37 deletions(-) diff --git a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h index e7010f4ce53..13568227319 100644 --- a/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h +++ b/AABB_tree/include/CGAL/AABB_halfedge_graph_segment_primitive.h @@ -41,8 +41,10 @@ namespace CGAL { * of `VertexPointPMap` (using the `Kernel_traits` mechanism). * The segment type of the primitive (`Datum`) is `CGAL::Kernel_traits< boost::property_traits< VertexPointPMap >::%value_type >::%Kernel::Segment_3`. * - * \cgalModelsBare{`AABBPrimitive` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`, - * `AABBPrimitiveWithSharedData` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`} + * \cgalModelsBareBegin + * \cgalModelsBare{`AABBPrimitive` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_false`} + * \cgalModelsBare{`AABBPrimitiveWithSharedData` if `OneHalfedgeGraphPerTree` is `CGAL::Tag_true`} + * \cgalModelsBareEnd * * \tparam HalfedgeGraph is a model of the halfedge graph concept. * as key type and a \cgal Kernel `Point_3` as value type. diff --git a/AABB_tree/include/CGAL/AABB_primitive.h b/AABB_tree/include/CGAL/AABB_primitive.h index b31cf5a74de..4c58b83f4db 100644 --- a/AABB_tree/include/CGAL/AABB_primitive.h +++ b/AABB_tree/include/CGAL/AABB_primitive.h @@ -53,8 +53,10 @@ public: * The two property maps which are template parameters of the class enable to get the datum and the reference point of * the primitive from the identifier. The last template parameter controls whether the primitive class holds a copy of the datum. * - * \cgalModelsBare{`AABBPrimitive` if `ExternalPropertyMaps` is `CGAL::Tag_false`, - * `AABBPrimitiveWithSharedData` if `ExternalPropertyMaps` is `CGAL::Tag_true`} + * \cgalModelsBareBegin + * \cgalModelsBare{`AABBPrimitive` if `ExternalPropertyMaps` is `CGAL::Tag_false`} + * \cgalModelsBare{`AABBPrimitiveWithSharedData` if `ExternalPropertyMaps` is `CGAL::Tag_true`} + * \cgalModelsBareEnd * * \tparam ObjectPropertyMap is a model of `ReadablePropertyMap` with `Id` as * `key_type`. It must be a model of `CopyConstructible`, `DefaultConstructible`, and `CopyAssignable`. diff --git a/BGL/doc/BGL/CGAL/boost/graph/properties.h b/BGL/doc/BGL/CGAL/boost/graph/properties.h index 57b9f10c1cb..b8b2ab38e21 100644 --- a/BGL/doc/BGL/CGAL/boost/graph/properties.h +++ b/BGL/doc/BGL/CGAL/boost/graph/properties.h @@ -6,31 +6,41 @@ namespace CGAL { /// The constant `vertex_index` is a property tag which identifies the index property of a vertex of a \bgl /// Graph. +/// \cgalModelsBareBegin /// \cgalModelsBare{PropertyTag} +/// \cgalModelsBareEnd enum vertex_index_t { vertex_index }; /// The constant `halfedge_index` is a property tag which identifies the index property of a halfedge of a `HalfedgeGraph`. /// /// This is a property tag introduced by \cgal. +/// \cgalModelsBareBegin /// \cgalModelsBare{PropertyTag} +/// \cgalModelsBareEnd enum halfedge_index_t { halfedge_index }; /// The constant `edge_index` is a property tag which identifies the index property of an edge of a \bgl /// Graph. +/// \cgalModelsBareBegin /// \cgalModelsBare{PropertyTag} +/// \cgalModelsBareEnd enum edge_index_t { edge_index }; /// The constant `face_index` is a property tag which identifies the index property of a face of a `FaceGraph`. /// /// This is a property tag introduced by \cgal. +/// \cgalModelsBareBegin /// \cgalModelsBare{PropertyTag} +/// \cgalModelsBareEnd enum face_index_t { face_index }; /// The constant `vertex_point` is a property tag which refers to the geometric embedding property of /// a vertex of a `HalfedgeGraph`. /// /// This is a property tag introduced by \cgal. +/// \cgalModelsBareBegin /// \cgalModelsBare{PropertyTag} +/// \cgalModelsBareEnd enum vertex_point_t { vertex_point }; /// @} diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index deddf49dfa2..59b274cc823 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -142,8 +142,9 @@ ALIASES = "cgal=%CGAL" \ "cgalModels{4}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    " \ "cgalModels{5}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    @c \5
    " \ "cgalModels{6}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    @c \5
    @c \6
    " \ - "cgalModelsBare{1}=
    @cgalModelsHeader
    \1
    " \ - "cgalModelsBare{2}=
    @cgalModelsHeader
    \1
    \2
    " \ + "cgalModelsBareBegin=
    @cgalModelsHeader
    " \ + "cgalModelsBareEnd=
    " \ + "cgalModelsBare{1}=
    \1
    " \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModelsHeader=Has models" \ "cgalHasModelsBegin=
    @cgalHasModelsHeader
    " \ diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index b75f7ef3d32..15a620ba673 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -151,8 +151,9 @@ ALIASES = "cgal=%CGAL" \ "cgalModels{4}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    " \ "cgalModels{5}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    @c \5
    " \ "cgalModels{6}=
    @cgalModelsHeader
    @c \1
    @c \2
    @c \3
    @c \4
    @c \5
    @c \6
    " \ - "cgalModelsBare{1}=
    @cgalModelsHeader
    \1
    " \ - "cgalModelsBare{2}=
    @cgalModelsHeader
    \1
    \2
    " \ + "cgalModelsBareBegin=
    @cgalModelsHeader
    " \ + "cgalModelsBareEnd=
    " \ + "cgalModelsBare{1}=
    \1
    " \ "cgalGeneralizes=\xrefitem generalizes \"Generalizes\" \"Generalization Relationships\"" \ "cgalHasModelsHeader=Has models" \ "cgalHasModelsBegin=
    @cgalHasModelsHeader
    " \ diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h index ca8f1e6eee6..154d01373aa 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h @@ -10,7 +10,9 @@ uses the \cgal default allocator as default setting. `HalfedgeDS_default` is a list-based representation with bidirectional iterators that supports removal. +\cgalModelsBareBegin \cgalModelsBare{`HalfedgeDS`} +\cgalModelsBareEnd \sa `CGAL::HalfedgeDS_list` \sa `CGAL::HalfedgeDS_vector` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h index 0df742df464..e30952e1e1b 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h @@ -7,7 +7,9 @@ The class `HalfedgeDS_list` is a model for the `HalfedgeDS` concept. `HalfedgeDS_list` is a list-based representation with bidirectional iterators that supports removal. +\cgalModelsBareBegin \cgalModelsBare{`HalfedgeDS`} +\cgalModelsBareEnd \sa `CGAL::HalfedgeDS_default` \sa `CGAL::HalfedgeDS_vector` diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h index d2f29447128..33fa7dc5237 100644 --- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h +++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h @@ -7,7 +7,9 @@ The class `HalfedgeDS_vector` is a model for the `HalfedgeDS` concept. `HalfedgeDS_vector` is a vector-based representation with random access iterators that does not support removal. +\cgalModelsBareBegin \cgalModelsBare{`HalfedgeDS`} +\cgalModelsBareEnd \sa `CGAL::HalfedgeDS_default` \sa `CGAL::HalfedgeDS_list` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h index d9911834c80..f5fc8910f1e 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Projection_traits_xy_3.h @@ -21,12 +21,19 @@ constructions or if `K` is a `CGAL::Filtered_kernel` (such as for `CGAL::Exact_predicates_inexact_constructions_kernel`), this class automatically provides exact predicates. -\cgalModelsBare{The class is a model of several 2D triangulation traits class concepts\, - except that it does not provide the type and constructors - required to build the dual Voronoi diagram.\n - `PolygonTraits_2`\n`ConvexHullTraits_2`\n`TriangulationTraits_2`\n`DelaunayTriangulationTraits_2`\n - `ConstrainedTriangulationTraits_2`\n`ConvexHullTraits_2`\n`DelaunayMeshTraits_2`\n`AnalyticWeightTraits_2`\n - `Barycentric_coordinates::BarycentricTraits_2`} +\cgalModelsBareBegin +\cgalModelsBare{The class is a model of several 2D triangulation traits class concepts, + except that it does not provide the type and constructors required to build the dual Voronoi diagram.} +\cgalModelsBare{`PolygonTraits_2`} +\cgalModelsBare{`ConvexHullTraits_2`} +\cgalModelsBare{`TriangulationTraits_2`} +\cgalModelsBare{`DelaunayTriangulationTraits_2`} +\cgalModelsBare{`ConstrainedTriangulationTraits_2`} +\cgalModelsBare{`ConvexHullTraits_2`} +\cgalModelsBare{`DelaunayMeshTraits_2`} +\cgalModelsBare{`AnalyticWeightTraits_2`} +\cgalModelsBare{`Barycentric_coordinates::BarycentricTraits_2`} +\cgalModelsBareEnd \sa `CGAL::Projection_traits_3` */ diff --git a/Number_types/doc/Number_types/CGAL/Sqrt_extension.h b/Number_types/doc/Number_types/CGAL/Sqrt_extension.h index 494da54aa4b..8281df43339 100644 --- a/Number_types/doc/Number_types/CGAL/Sqrt_extension.h +++ b/Number_types/doc/Number_types/CGAL/Sqrt_extension.h @@ -87,14 +87,16 @@ The fourth template argument, `FilterPredicates`, triggers an internal filter th In case `NT` is not `RealEmbeddable`, `DifferentExtensionComparable` as well as `FilterPredicates` have no effect. -\cgalModelsBare{`Assignable`\n - `CopyConstructible`\n - `DefaultConstructible`\n - `EqualityComparable`\n - `ImplicitInteroperable` with `int`\n - `ImplicitInteroperable` with `NT`\n - `Fraction` if NT is a `Fraction`\n - `RootOf_2`} +\cgalModelsBareBegin +\cgalModelsBare{`Assignable`} +\cgalModelsBare{`CopyConstructible`} +\cgalModelsBare{`DefaultConstructible`} +\cgalModelsBare{`EqualityComparable`} +\cgalModelsBare{`ImplicitInteroperable` with `int`} +\cgalModelsBare{`ImplicitInteroperable` with `NT`} +\cgalModelsBare{`Fraction` if NT is a `Fraction`} +\cgalModelsBare{`RootOf_2`} +\cgalModelsBareEnd \sa `IntegralDomainWithoutDivision` \sa `IntegralDomain` diff --git a/Polynomial/doc/Polynomial/CGAL/Polynomial.h b/Polynomial/doc/Polynomial/CGAL/Polynomial.h index 77d9235aa0e..6e8be426862 100644 --- a/Polynomial/doc/Polynomial/CGAL/Polynomial.h +++ b/Polynomial/doc/Polynomial/CGAL/Polynomial.h @@ -53,16 +53,18 @@ the coefficient sequence does not contain leading zero coefficients (where leading means at the high-degree end), with the exception that the zero polynomial is represented by a single zero coefficient. -\cgalModelsBare{`Polynomial_d`\n - `Assignable`\n - `CopyConstructible`\n - `DefaultConstructible`\n - `EqualityComparable`\n - `ImplicitInteroperable` with int\n - `ImplicitInteroperable` with Coeff\n - `Fraction` if Coeff is model of `Fraction`\n - `LessThanComparable` if Coeff is model of `LessThanComparable`\n - `Modularizable` if `Coeff` is model of `Modularizable`} +\cgalModelsBareBegin +\cgalModelsBare{`Polynomial_d`} +\cgalModelsBare{`Assignable`} +\cgalModelsBare{`CopyConstructible`} +\cgalModelsBare{`DefaultConstructible`} +\cgalModelsBare{`EqualityComparable`} +\cgalModelsBare{`ImplicitInteroperable` with `int`} +\cgalModelsBare{`ImplicitInteroperable` with `Coeff`} +\cgalModelsBare{`Fraction` if `Coeff` is model of `Fraction`} +\cgalModelsBare{`LessThanComparable` if `Coeff` is model of `LessThanComparable`} +\cgalModelsBare{`Modularizable` if `Coeff` is model of `Modularizable`} +\cgalModelsBareEnd */ template< typename Coeff > class Polynomial { diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h index bd099094228..225ac8f3abf 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_face_base_with_info_2.h @@ -19,9 +19,11 @@ and is actually not used in `Triangulation_face_base_with_info_2` . \tparam Fb is a face base class from which `Triangulation_face_base_with_info_2` derives. +\cgalModelsBareBegin \cgalModelsBare{Because `Triangulation_face_base_with_info_2` derives from the class instantiating its third -parameter\, it will be a model of the same face base concept as its parameter: -`TriangulationFaceBase_2`\, `ConstrainedTriangulationFaceBase_2`\, or `RegularTriangulationFaceBase_2`} +parameter, it will be a model of the same face base concept as its parameter: +`TriangulationFaceBase_2`, `ConstrainedTriangulationFaceBase_2`, or `RegularTriangulationFaceBase_2`} +\cgalModelsBareEnd \sa `CGAL::Triangulation_face_base_2` \sa `CGAL::Constrained_triangulation_face_base_2` diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h index 6be4bf7ee8e..ad6b6ea3a81 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_vertex_base_with_info_2.h @@ -22,10 +22,12 @@ the triangulation. this parameter is instantiated by `Triangulation_vertex_base_2`. -\cgalModelsBare{`TriangulationVertexBaseWithInfo_2`, - The parameter `Vb` is a model of some vertex base concept. +\cgalModelsBareBegin +\cgalModelsBare{`TriangulationVertexBaseWithInfo_2`} +\cgalModelsBare{The parameter `Vb` is a model of some vertex base concept. `Triangulation_vertex_base_with_info_2` derives from `Vb` and will be a model of the -same vertex base concept: `TriangulationVertexBase_2`\, or `RegularTriangulationVertexBase_2`.} +same vertex base concept: `TriangulationVertexBase_2`, or `RegularTriangulationVertexBase_2`.} +\cgalModelsBareEnd \sa `CGAL::Triangulation_face_base_with_info_2` \sa `CGAL::Triangulation_vertex_base_2` From a935682a8219925122e4ca3a32be7704ea40dcc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Mon, 24 Jul 2023 10:53:27 +0200 Subject: [PATCH 27/94] (Re-)introduce Compact_simplicial_mesh_cell_base_3 Formerly known as Simplicial_mesh_cell_base_3, this cell base is more efficient in memory, but cannot inherit a base. --- .../Compact_simplicial_mesh_cell_base_3.h | 391 ++++++++++++++++++ .../Remeshing_cell_base_3.h | 4 +- 2 files changed, 393 insertions(+), 2 deletions(-) create mode 100644 SMDS_3/include/CGAL/Compact_simplicial_mesh_cell_base_3.h diff --git a/SMDS_3/include/CGAL/Compact_simplicial_mesh_cell_base_3.h b/SMDS_3/include/CGAL/Compact_simplicial_mesh_cell_base_3.h new file mode 100644 index 00000000000..d9c31c72597 --- /dev/null +++ b/SMDS_3/include/CGAL/Compact_simplicial_mesh_cell_base_3.h @@ -0,0 +1,391 @@ +// Copyright (c) 2006-2007 INRIA Sophia-Antipolis (France). +// Copyright (c) 2008,2011 GeometryFactory Sarl (France) +// All rights reserved. +// +// This file is part of CGAL (www.cgal.org). +// +// $URL$ +// $Id$ +// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial +// +// Author(s) : Laurent Rineau, Stephane Tayeb, Andreas Fabri, Jane Tournois + +#ifndef CGAL_COMPACT_SIMPLICIAL_MESH_CELL_BASE_3_H +#define CGAL_COMPACT_SIMPLICIAL_MESH_CELL_BASE_3_H + +#include + +#include +#include +#include +#include +#include +#include + +#include + +namespace CGAL { + +// Adds information to Cb about the cell of the input complex containing it +template +class Compact_simplicial_mesh_cell_3 +{ +public: + using Triangulation_data_structure = TDS; + + using Vertex_handle = typename TDS::Vertex_handle; + using Cell_handle = typename TDS::Cell_handle; + using Vertex = typename TDS::Vertex; + using Cell = typename TDS::Cell; + using TDS_data = typename TDS::Cell_data; + + // Index Type + using Subdomain_index = Subdomain_index_; + using Surface_patch_index = Surface_patch_index_; + +public: + // Constructors + Compact_simplicial_mesh_cell_3() + : time_stamp_(std::size_t(-1)) + {} + + Compact_simplicial_mesh_cell_3(const Compact_simplicial_mesh_cell_3& rhs) + : N(rhs.N) + , V(rhs.V) + , time_stamp_(rhs.time_stamp_) + , subdomain_index_(rhs.subdomain_index_) + { + for(int i=0; i <4; i++){ + surface_index_table_[i] = rhs.surface_index_table_[i]; + } + } + + Compact_simplicial_mesh_cell_3(Vertex_handle v0, + Vertex_handle v1, + Vertex_handle v2, + Vertex_handle v3) + : V(CGAL::make_array(v0, v1, v2, v3)) + { + } + + Compact_simplicial_mesh_cell_3(Vertex_handle v0, + Vertex_handle v1, + Vertex_handle v2, + Vertex_handle v3, + Cell_handle n0, + Cell_handle n1, + Cell_handle n2, + Cell_handle n3) + : N(CGAL::make_array(n0, n1, n2, n3)) + , V(CGAL::make_array(v0, v1, v2, v3)) + { + } + + // ACCESS FUNCTIONS + Vertex_handle vertex(int i) const + { + CGAL_precondition( i >= 0 && i <= 3 ); + return V[i]; + } + + bool has_vertex(Vertex_handle v) const + { + return (V[0] == v) || (V[1] == v) || (V[2]== v) || (V[3]== v); + } + + bool has_vertex(Vertex_handle v, int & i) const + { + if (v == V[0]) { i = 0; return true; } + if (v == V[1]) { i = 1; return true; } + if (v == V[2]) { i = 2; return true; } + if (v == V[3]) { i = 3; return true; } + return false; + } + + int index(Vertex_handle v) const + { + if (v == V[0]) { return 0; } + if (v == V[1]) { return 1; } + if (v == V[2]) { return 2; } + CGAL_assertion( v == V[3] ); + return 3; + } + + Cell_handle neighbor(int i) const + { + CGAL_precondition( i >= 0 && i <= 3); + return N[i]; + } + + bool has_neighbor(Cell_handle n) const + { + return (N[0] == n) || (N[1] == n) || (N[2] == n) || (N[3] == n); + } + + bool has_neighbor(Cell_handle n, int & i) const + { + if(n == N[0]){ i = 0; return true; } + if(n == N[1]){ i = 1; return true; } + if(n == N[2]){ i = 2; return true; } + if(n == N[3]){ i = 3; return true; } + return false; + } + + int index(Cell_handle n) const + { + if (n == N[0]) return 0; + if (n == N[1]) return 1; + if (n == N[2]) return 2; + CGAL_assertion( n == N[3] ); + return 3; + } + + // SETTING + void set_neighbor(int i, Cell_handle n) + { + CGAL_precondition( i >= 0 && i <= 3); + CGAL_precondition( this != n.operator->() ); + N[i] = n; + } + + void set_neighbors() + { + N[0] = N[1] = N[2] = N[3] = Cell_handle(); + } + + void set_neighbors(Cell_handle n0, Cell_handle n1, + Cell_handle n2, Cell_handle n3) + { + CGAL_precondition( this != n0.operator->() ); + CGAL_precondition( this != n1.operator->() ); + CGAL_precondition( this != n2.operator->() ); + CGAL_precondition( this != n3.operator->() ); + N[0] = n0; + N[1] = n1; + N[2] = n2; + N[3] = n3; + } + + // CHECKING + + // the following trivial is_valid allows + // the user of derived cell base classes + // to add their own purpose checking + bool is_valid(bool = false, int = 0) const + { return true; } + + // For use by Compact_container. + void * for_compact_container() const { return N[0].for_compact_container(); } + void for_compact_container(void *p) { N[0].for_compact_container(p); } + + // TDS internal data access functions. + TDS_data& tds_data() { return _tds_data; } + const TDS_data& tds_data() const { return _tds_data; } + + // We must override the functions that modify the vertices. + // And if the point inside a vertex is modified, we fail, + // but there's not much we can do for this now. + void set_vertex(int i, Vertex_handle v) + { + CGAL_precondition( i >= 0 && i <= 3); + V[i] = v; + } + + void set_vertices() + { + V[0] = V[1] = V[2] = V[3] = Vertex_handle(); + } + + void set_vertices(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3) + { + V[0] = v0; + V[1] = v1; + V[2] = v2; + V[3] = v3; + } + + // Returns the index of the cell of the input complex that contains the cell + Subdomain_index subdomain_index() const { return subdomain_index_; } + + // Sets the index of the cell of the input complex that contains the cell + void set_subdomain_index(const Subdomain_index& index) + { subdomain_index_ = index; } + + /// Set surface index of \c facet to \c index + void set_surface_patch_index(const int facet, const Surface_patch_index& index) + { + CGAL_precondition(facet>=0 && facet<4); + surface_index_table_[facet] = index; + } + + /// Returns surface index of facet \c facet + Surface_patch_index surface_patch_index(const int facet) const + { + CGAL_precondition(facet>=0 && facet<4); + return surface_index_table_[facet]; + } + + /// Returns true if facet lies on a surface patch + bool is_facet_on_surface(const int facet) const + { + CGAL_precondition(facet>=0 && facet<4); + return ( !( Surface_patch_index() == surface_index_table_[facet] )); + } + + // ----------------------------------- + // Backward Compatibility + // ----------------------------------- +#ifndef CGAL_MESH_3_NO_DEPRECATED_SURFACE_INDEX + typedef Surface_patch_index Surface_index; + + void set_surface_index(const int facet, const Surface_index& index) + { set_surface_patch_index(facet,index); } + + /// Returns surface index of facet \c facet + Surface_index surface_index(const int facet) const + { return surface_patch_index(facet); } +#endif // CGAL_MESH_3_NO_DEPRECATED_SURFACE_INDEX + // ----------------------------------- + // End backward Compatibility + // ----------------------------------- + + static + std::string io_signature() + { + return + Get_io_signature()() + + "+(" + Get_io_signature()() + ")[4]"; + } + + /// For the determinism of Compact_container iterators + ///@{ + typedef Tag_true Has_timestamp; + + std::size_t time_stamp() const { + return time_stamp_; + } + void set_time_stamp(const std::size_t& ts) { + time_stamp_ = ts; + } + ///@} + +private: + /// Stores surface_index for each facet of the cell + std::array surface_index_table_ = {}; + + std::array N; + std::array V; + + std::size_t time_stamp_; + + // The index of the cell of the input complex that contains me + Subdomain_index subdomain_index_ = {}; + + TDS_data _tds_data; + +public: + friend std::istream& operator>>(std::istream &is, Compact_simplicial_mesh_cell_3 &c) + { + Subdomain_index index; + if(IO::is_ascii(is)) + is >> index; + else + read(is, index); + + if(is) + { + c.set_subdomain_index(index); + for(int i = 0; i < 4; ++i) + { + Surface_patch_index i2; + if(IO::is_ascii(is)) + is >> IO::iformat(i2); + else + read(is, i2); + + c.set_surface_patch_index(i, i2); + } + } + + return is; + } + + friend + std::ostream& operator<<(std::ostream &os, const Compact_simplicial_mesh_cell_3&c) + { + if(IO::is_ascii(os)) + os << c.subdomain_index(); + else + write(os, c.subdomain_index()); + + for(int i = 0; i < 4; ++i) + { + if(IO::is_ascii(os)) + os << ' ' << IO::oformat(c.surface_patch_index(i)); + else + write(os, c.surface_patch_index(i)); + } + + return os; + } +}; + +/*! +\ingroup PkgSMDS3Classes + +The class `Compact_simplicial_mesh_cell_base_3` +is a model of the concept `SimplicialMeshCellBase_3`. +It is designed to serve as cell base class for.3D simplicial mesh data structures. +It stores and gives access to data about the complex the cell belongs to, such as the +subdomain it belongs to or surface it takes part to. +It is more compact in memory than `CGAL::Simplicial_mesh_cell_base_3`. + +\tparam SubdomainIndex Type of indices for subdomains of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must match the label +of the exterior of the domain (which contains at least the unbounded component). +It must match `MeshDomain_3::Subdomain_index` when used for mesh generation. + +\tparam SurfacePatchIndex Type of indices for surface patches (boundaries and interfaces) +of the discretized geometric domain. +Must be a model of `CopyConstructible`, `Assignable`, `DefaultConstructible` +and `EqualityComparable`. The default constructed value must be the index value +assigned to a non surface facet. +It must match `MeshDomain_3::Surface_patch_index` when used for mesh generation. + +\cgalModels `SimplicialMeshCellBase_3` + +\sa `CGAL::Mesh_complex_3_in_triangulation_3` +\sa \link Mesh_cell_base_3 `CGAL::Mesh_cell_base_3`\endlink +\sa `MeshDomain_3` +\sa `MeshDomainWithFeatures_3` +*/ +template +class Compact_simplicial_mesh_cell_base_3 +{ +public: +#ifdef DOXYGEN_RUNNING + typedef unspecified_type Triangulation_data_structure; +#else + typedef internal::Dummy_tds_3 Triangulation_data_structure; +#endif + typedef Triangulation_data_structure::Vertex_handle Vertex_handle; + typedef Triangulation_data_structure::Cell_handle Cell_handle; + +public: + template + struct Rebind_TDS + { + typedef Compact_simplicial_mesh_cell_3 Other; + }; +}; + +} // namespace CGAL + +#endif // CGAL_COMPACT_SIMPLICIAL_MESH_CELL_BASE_3_H diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index 162cfa27f21..94bcd7ab5f1 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -15,7 +15,7 @@ #include -#include +#include #include @@ -39,7 +39,7 @@ It must be a model of the `SimplicialMeshCellBase_3` concept. */ template > class Remeshing_cell_base_3 From 45a72e8dd22b1971b12d41e178bcff062dca679b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 26 Jul 2023 16:42:07 +0200 Subject: [PATCH 28/94] Use FT weights from the start --- .../Straight_skeleton_2/include/CGAL/input_helpers.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h b/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h index 35077e38c2e..ad41ff7a91f 100644 --- a/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h +++ b/Straight_skeleton_2/examples/Straight_skeleton_2/include/CGAL/input_helpers.h @@ -204,7 +204,7 @@ void generate_random_weights(const PolygonWithHoles& p, using Container = typename std::remove_reference::type; using Iterator = typename Container::const_iterator; - std::map weight; + std::map weight; // start somewhere not collinear Iterator start_it; @@ -238,7 +238,7 @@ void generate_random_weights(const PolygonWithHoles& p, else { CGAL_assertion(weight.count(it) == 0); - weight[it] = rnd.get_double(min_weight, max_weight); + weight[it] = FT(rnd.get_double(min_weight, max_weight)); } it = next(it, c); @@ -247,7 +247,7 @@ void generate_random_weights(const PolygonWithHoles& p, std::vector weights; for(auto it=c.begin(); it Date: Thu, 3 Aug 2023 12:05:40 +0200 Subject: [PATCH 29/94] Introduce AW3 Vb/Cb to avoid using T3_Vb/Cb_with_info_3 --- .../examples/Alpha_wrap_3/volumetric_wrap.cpp | 4 +- .../CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h | 133 ++++++------------ .../internal/Alpha_wrap_AABB_geom_traits.h | 14 +- .../Alpha_wrap_triangulation_cell_base_3.h | 97 +++++++++++++ .../Alpha_wrap_triangulation_vertex_base_3.h | 71 ++++++++++ .../Alpha_wrap_3/Alpha_wrap_3_plugin.cpp | 4 +- 6 files changed, 225 insertions(+), 98 deletions(-) create mode 100644 Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h create mode 100644 Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp index 7fb4d470420..dd63ad66711 100644 --- a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp @@ -137,7 +137,7 @@ int main(int argc, char** argv) for(auto c : tr.finite_cell_handles()) { - if(c->info().is_outside) + if(c->is_outside()) c->set_subdomain_index(0); else c->set_subdomain_index(1); @@ -146,7 +146,7 @@ int main(int argc, char** argv) // of the common face on the surface boundary for(int i=0; i<4; ++i) { - if(c->neighbor(i)->info().is_outside != c->info().is_outside) + if(c->neighbor(i)->is_outside() != c->is_outside()) { c->set_surface_patch_index(i, 1); boundary_facets.emplace(c, i); diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h index 677242e9da1..ba752a77590 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h @@ -1,4 +1,4 @@ -// Copyright (c) 2019-2022 Google LLC (USA). +// Copyright (c) 2019-2023 Google LLC (USA). // All rights reserved. // // This file is part of CGAL (www.cgal.org). @@ -29,6 +29,8 @@ #include +#include +#include #include #include #include @@ -37,9 +39,7 @@ #include #include #include -#include #include -#include #include #include @@ -76,58 +76,11 @@ namespace CGAL { namespace Alpha_wraps_3 { namespace internal { -struct Cell_info -{ - bool is_outside = false; -}; +namespace { -enum Vertex_info -{ - DEFAULT = 0, - BBOX_VERTEX, - SEED_VERTEX -}; +namespace AW3i = ::CGAL::Alpha_wraps_3::internal; -template -using Alpha_wrap_triangulation_vertex_base_3 = - CGAL::Triangulation_vertex_base_with_info_3< - Vertex_info, - GeomTraits, - CGAL::Triangulation_vertex_base_3 >; - -template -using Alpha_wrap_triangulation_cell_base_3 = - CGAL::Triangulation_cell_base_with_info_3< - Cell_info, - GeomTraits, - CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3< - GeomTraits, - CGAL::Delaunay_triangulation_cell_base_3 > >; - -template -class Cell_base_with_timestamp - : public Cb -{ - std::size_t time_stamp_; - -public: - template - Cell_base_with_timestamp(const Args&... args) : Cb(args...), time_stamp_(-1) { } - - Cell_base_with_timestamp(const Cell_base_with_timestamp& other) : Cb(other), time_stamp_(other.time_stamp_) { } - - typedef CGAL::Tag_true Has_timestamp; - - std::size_t time_stamp() const { return time_stamp_; } - void set_time_stamp(const std::size_t& ts) { time_stamp_ = ts; } - - template - struct Rebind_TDS - { - typedef typename Cb::template Rebind_TDS::Other Cb2; - typedef Cell_base_with_timestamp Other; - }; -}; +} // unnamed namespace struct Wrapping_default_visitor { @@ -163,7 +116,7 @@ class Alpha_wrap_3 // Triangulation using Base_GT = typename Oracle::Geom_traits; - using Default_Gt = Robust_circumcenter_filtered_traits_3; + using Default_Gt = CGAL::Robust_circumcenter_filtered_traits_3; using Default_Vb = Alpha_wrap_triangulation_vertex_base_3; using Default_Cb = Alpha_wrap_triangulation_cell_base_3; @@ -447,7 +400,7 @@ private: #ifdef CGAL_AW3_DEBUG_INITIALIZATION std::cout << "\t" << bp << std::endl; #endif - bv->info() = BBOX_VERTEX; + bv->type() = AW3i::Vertex_type:: BBOX_VERTEX; } } @@ -562,7 +515,7 @@ private: // which usually happens for large alpha values. Vertex_handle seed_v = m_tr.insert(seed_p); - seed_v->info() = SEED_VERTEX; + seed_v->type() = AW3i::Vertex_type:: SEED_VERTEX; seed_vs.push_back(seed_v); // Icosahedron vertices (see also BGL::make_icosahedron()) @@ -599,7 +552,7 @@ private: continue; Vertex_handle ico_v = m_tr.insert(seed_neighbor_p, seed_v /*hint*/); - ico_v->info() = SEED_VERTEX; + ico_v->type() = AW3i::Vertex_type:: SEED_VERTEX; } } @@ -621,13 +574,13 @@ private: inc_cells.reserve(64); m_tr.incident_cells(seed_v, std::back_inserter(inc_cells)); for(Cell_handle ch : inc_cells) - ch->info().is_outside = cavity_cell_outside_tag(ch); + ch->is_outside() = cavity_cell_outside_tag(ch); } // Might as well go through the full triangulation since only seeds should have been inserted for(Cell_handle ch : m_tr.all_cell_handles()) { - if(!ch->info().is_outside) + if(!ch->is_outside()) continue; // When the algorithm starts from a manually dug hole, infinite cells are tagged "inside" @@ -656,13 +609,13 @@ private: { if(m_tr.is_infinite(ch)) { - ch->info().is_outside = true; + ch->is_outside() = true; const int inf_index = ch->index(m_tr.infinite_vertex()); push_facet(std::make_pair(ch, inf_index)); } else { - ch->info().is_outside = false; + ch->is_outside() = false; } } @@ -690,7 +643,7 @@ public: for(auto cit=m_tr.finite_cells_begin(), cend=m_tr.finite_cells_end(); cit!=cend; ++cit) { Cell_handle seed = cit; - if(seed->info().is_outside || seed->tds_data().processed()) + if(seed->is_outside() || seed->tds_data().processed()) continue; std::queue to_visit; @@ -703,7 +656,7 @@ public: while(!to_visit.empty()) { const Cell_handle cell = to_visit.front(); - CGAL_assertion(!cell->info().is_outside && !m_tr.is_infinite(cell)); + CGAL_assertion(!cell->is_outside() && !m_tr.is_infinite(cell)); to_visit.pop(); @@ -715,13 +668,13 @@ public: for(int fid=0; fid<4; ++fid) { const Cell_handle neighbor = cell->neighbor(fid); - if(neighbor->info().is_outside) + if(neighbor->is_outside()) { // There shouldn't be any artificial vertex on the inside/outside boundary // (past initialization) -// CGAL_assertion(cell->vertex((fid + 1)&3)->info() == DEFAULT); -// CGAL_assertion(cell->vertex((fid + 2)&3)->info() == DEFAULT); -// CGAL_assertion(cell->vertex((fid + 3)&3)->info() == DEFAULT); +// CGAL_assertion(cell->vertex((fid + 1)&3)->type() == AW3i::Vertex_type:: DEFAULT); +// CGAL_assertion(cell->vertex((fid + 2)&3)->type() == AW3i::Vertex_type:: DEFAULT); +// CGAL_assertion(cell->vertex((fid + 3)&3)->type() == AW3i::Vertex_type:: DEFAULT); points.push_back(m_tr.point(cell, Triangulation::vertex_triple_index(fid, 0))); points.push_back(m_tr.point(cell, Triangulation::vertex_triple_index(fid, 1))); @@ -782,13 +735,13 @@ public: for(auto fit=m_tr.finite_facets_begin(), fend=m_tr.finite_facets_end(); fit!=fend; ++fit) { Facet f = *fit; - if(!f.first->info().is_outside) + if(!f.first->is_outside()) f = m_tr.mirror_facet(f); const Cell_handle c = f.first; const int s = f.second; const Cell_handle nh = c->neighbor(s); - if(c->info().is_outside == nh->info().is_outside) + if(c->is_outside() == nh->is_outside()) continue; std::array ids; @@ -961,7 +914,7 @@ private: if(m_tr.is_infinite(nh)) return TRAVERSABLE; - if(nh->info().is_outside) + if(nh->is_outside()) { #ifdef CGAL_AW3_DEBUG_FACET_STATUS std::cout << "Neighbor already outside" << std::endl; @@ -973,7 +926,8 @@ private: for(int i=0; i<3; ++i) { const Vertex_handle vh = ch->vertex(Triangulation::vertex_triple_index(id, i)); - if(vh->info() == BBOX_VERTEX || vh->info() == SEED_VERTEX) + if(vh->type() == AW3i::Vertex_type:: BBOX_VERTEX || + vh->type() == AW3i::Vertex_type:: SEED_VERTEX) { #ifdef CGAL_AW3_DEBUG_FACET_STATUS std::cout << "artificial facet due to artificial vertex #" << i << std::endl; @@ -999,7 +953,7 @@ private: bool push_facet(const Facet& f) { - CGAL_precondition(f.first->info().is_outside); + CGAL_precondition(f.first->is_outside()); // skip if f is already in queue if(m_queue.contains_with_bounds_check(Gate(f))) @@ -1111,7 +1065,7 @@ private: if(m_tr.is_infinite(neighbor)) { - neighbor->info().is_outside = true; + neighbor->is_outside() = true; continue; } @@ -1159,7 +1113,7 @@ private: // Actual insertion of the Steiner point Vertex_handle vh = m_tr.insert(steiner_point, lt, conflict_cell, li, lj); - vh->info() = DEFAULT; + vh->type() = AW3i::Vertex_type:: DEFAULT; visitor.after_Steiner_point_insertion(*this, vh); @@ -1169,7 +1123,7 @@ private: for(const Cell_handle& ch : new_cells) { // std::cout << "new cell has time stamp " << ch->time_stamp() << std::endl; - ch->info().is_outside = m_tr.is_infinite(ch); + ch->is_outside() = m_tr.is_infinite(ch); } // Push all new boundary facets to the queue. @@ -1185,11 +1139,11 @@ private: continue; const Cell_handle nh = ch->neighbor(i); - if(nh->info().is_outside == ch->info().is_outside) // not on the boundary + if(nh->is_outside() == ch->is_outside()) // not on the boundary continue; const Facet boundary_f = std::make_pair(ch, i); - if(ch->info().is_outside) + if(ch->is_outside()) push_facet(boundary_f); else push_facet(m_tr.mirror_facet(boundary_f)); @@ -1199,7 +1153,7 @@ private: else { // tag neighbor as OUTSIDE - neighbor->info().is_outside = true; + neighbor->is_outside() = true; // for each finite facet of neighbor, push it to the queue for(int i=0; i<4; ++i) @@ -1214,9 +1168,9 @@ private: // Check that no useful facet has been ignored CGAL_postcondition_code(for(auto fit=m_tr.finite_facets_begin(), fend=m_tr.finite_facets_end(); fit!=fend; ++fit) {) - CGAL_postcondition_code( if(fit->first->info().is_outside == fit->first->neighbor(fit->second)->info().is_outside) continue;) + CGAL_postcondition_code( if(fit->first->is_outside() == fit->first->neighbor(fit->second)->is_outside()) continue;) CGAL_postcondition_code( Facet f = *fit;) - CGAL_postcondition_code( if(!fit->first->info().is_outside) f = m_tr.mirror_facet(f);) + CGAL_postcondition_code( if(!fit->first->is_outside()) f = m_tr.mirror_facet(f);) CGAL_postcondition( facet_status(f) == IRRELEVANT); CGAL_postcondition_code(}) } @@ -1243,7 +1197,7 @@ private: for(Cell_handle ic : inc_cells) { ic->tds_data().clear(); - if(ic->info().is_outside) + if(ic->is_outside()) outside_start = ic; else if(inside_start == Cell_handle()) inside_start = ic; @@ -1278,7 +1232,7 @@ private: CGAL_assertion(neigh_c->has_vertex(v)); if(neigh_c->tds_data().processed() || - neigh_c->info().is_outside != curr_c->info().is_outside) // do not cross the boundary + neigh_c->is_outside() != curr_c->is_outside()) // do not cross the boundary continue; cells_to_visit.push(neigh_c); @@ -1343,7 +1297,7 @@ private: for(Cell_handle c : inc_cells) { - if(!c->info().is_outside) + if(!c->is_outside()) { do_remove = false; break; @@ -1390,15 +1344,20 @@ public: auto has_artificial_vertex = [](Cell_handle c) -> bool { for(int i=0; i<4; ++i) - if(c->vertex(i)->info() == BBOX_VERTEX || c->vertex(i)->info() == SEED_VERTEX) + { + if(c->vertex(i)->type() == AW3i::Vertex_type:: BBOX_VERTEX || + c->vertex(i)->type() == AW3i::Vertex_type:: SEED_VERTEX) + { return true; + } + } return false; }; auto is_on_boundary = [](Cell_handle c, int i) -> bool { - return (c->info().is_outside != c->neighbor(i)->info().is_outside); + return (c->is_outside() != c->neighbor(i)->is_outside()); }; auto count_boundary_facets = [&](Cell_handle c, Vertex_handle v) -> int @@ -1492,7 +1451,7 @@ public: CGAL_assertion(!m_tr.is_infinite(ic)); // This is where new material is added - ic->info().is_outside = false; + ic->is_outside() = false; #ifdef CGAL_AW3_DEBUG_DUMP_EVERY_STEP static int i = 0; @@ -1577,7 +1536,7 @@ private: int s = fit->second; Cell_handle nc = c->neighbor(s); - if(only_boundary_faces && (c->info().is_outside == nc->info().is_outside)) + if(only_boundary_faces && (c->is_outside() == nc->is_outside())) continue; std::array ids; diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_AABB_geom_traits.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_AABB_geom_traits.h index 22c64e9b5e2..80a403c258e 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_AABB_geom_traits.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_AABB_geom_traits.h @@ -36,24 +36,24 @@ struct Tetrahedron_with_outside_info using Triangle_3 = typename Kernel::Triangle_3; template - Tetrahedron_with_outside_info(const CellHandle ch, const K& k) + Tetrahedron_with_outside_info(const CellHandle c, const K& k) { typename K::Construct_bbox_3 bbox = k.construct_bbox_3_object(); typename K::Construct_tetrahedron_3 tetrahedron = k.construct_tetrahedron_3_object(); typename K::Construct_triangle_3 triangle = k.construct_triangle_3_object(); - m_tet = tetrahedron(ch->vertex(0)->point(), ch->vertex(1)->point(), - ch->vertex(2)->point(), ch->vertex(3)->point()); + m_tet = tetrahedron(c->vertex(0)->point(), c->vertex(1)->point(), + c->vertex(2)->point(), c->vertex(3)->point()); m_bbox = bbox(m_tet); for(int i=0; i<4; ++i) { - if(ch->neighbor(i)->info().is_outside) + if(c->neighbor(i)->is_outside()) m_b.set(i, true); - m_triangles[i] = triangle(ch->vertex((i+1)& 3)->point(), - ch->vertex((i+2)& 3)->point(), - ch->vertex((i+3)& 3)->point()); + m_triangles[i] = triangle(c->vertex((i+1)& 3)->point(), + c->vertex((i+2)& 3)->point(), + c->vertex((i+3)& 3)->point()); m_tbox[i] = bbox(m_triangles[i]); } } diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h new file mode 100644 index 00000000000..ebe337b614c --- /dev/null +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h @@ -0,0 +1,97 @@ +// Copyright (c) 2019-2023 Google LLC (USA). +// All rights reserved. +// +// This file is part of CGAL (www.cgal.org). +// +// $URL$ +// $Id$ +// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial +// +// Author(s) : Mael Rouxel-Labbé + +#ifndef CGAL_ALPHA_WRAP_TRIANGULATION_CELL_BASE_3_H +#define CGAL_ALPHA_WRAP_TRIANGULATION_CELL_BASE_3_H + +#include + +#include + +namespace CGAL { +namespace Alpha_wraps_3 { +namespace internal { + +template < typename GT, + typename Cb = CGAL::Delaunay_triangulation_cell_base_with_circumcenter_3 > +class Alpha_wrap_triangulation_cell_base_3 + : public Cb +{ +private: + bool outside; + +public: + typedef typename Cb::Vertex_handle Vertex_handle; + typedef typename Cb::Cell_handle Cell_handle; + + template < typename TDS2 > + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Alpha_wrap_triangulation_cell_base_3; + }; + + Alpha_wrap_triangulation_cell_base_3() + : Cb() + {} + + Alpha_wrap_triangulation_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3) + : Cb(v0, v1, v2, v3) + {} + + Alpha_wrap_triangulation_cell_base_3(Vertex_handle v0, Vertex_handle v1, + Vertex_handle v2, Vertex_handle v3, + Cell_handle n0, Cell_handle n1, + Cell_handle n2, Cell_handle n3) + : Cb(v0, v1, v2, v3, n0, n1, n2, n3) + {} + + bool is_outside() const { return outside; } + bool& is_outside() { return outside; } +}; + +template +class Cell_base_with_timestamp + : public Cb +{ + std::size_t time_stamp_; + +public: + using Has_timestamp = CGAL::Tag_true; + + template + struct Rebind_TDS + { + using Cb2 = typename Cb::template Rebind_TDS::Other; + using Other = Cell_base_with_timestamp; + }; + +public: + template + Cell_base_with_timestamp(const Args&... args) + : Cb(args...), time_stamp_(-1) + { } + + Cell_base_with_timestamp(const Cell_base_with_timestamp& other) + : Cb(other), time_stamp_(other.time_stamp_) + { } + +public: + std::size_t time_stamp() const { return time_stamp_; } + void set_time_stamp(const std::size_t& ts) { time_stamp_ = ts; } +}; + +} // namespace internal +} // namespace Alpha_wraps_3 +} // namespace CGAL + +#endif // CGAL_ALPHA_WRAP_TRIANGULATION_CELL_BASE_3_H diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h new file mode 100644 index 00000000000..75f26741755 --- /dev/null +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h @@ -0,0 +1,71 @@ +// Copyright (c) 2019-2023 Google LLC (USA). +// All rights reserved. +// +// This file is part of CGAL (www.cgal.org). +// +// $URL$ +// $Id$ +// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial +// +// Author(s) : Mael Rouxel-Labbé + +#ifndef CGAL_ALPHA_WRAP_TRIANGULATION_VERTEX_BASE_3_H +#define CGAL_ALPHA_WRAP_TRIANGULATION_VERTEX_BASE_3_H + +#include + +#include + +namespace CGAL { +namespace Alpha_wraps_3 { +namespace internal { + +enum class Vertex_type +{ + DEFAULT = 0, + BBOX_VERTEX, + SEED_VERTEX +}; + +template > +class Alpha_wrap_triangulation_vertex_base_3 + : public Vb +{ +private: + Vertex_type vertex_type; + +public: + using Cell_handle = typename Vb::Cell_handle; + using Point = typename Vb::Point; + + template + struct Rebind_TDS + { + using Vb2 = typename Vb::template Rebind_TDS::Other; + using Other = Alpha_wrap_triangulation_vertex_base_3; + }; + +public: + Alpha_wrap_triangulation_vertex_base_3() + : Vb() {} + + Alpha_wrap_triangulation_vertex_base_3(const Point& p) + : Vb(p) {} + + Alpha_wrap_triangulation_vertex_base_3(const Point& p, Cell_handle c) + : Vb(p, c) {} + + Alpha_wrap_triangulation_vertex_base_3(Cell_handle c) + : Vb(c) {} + +public: + const Vertex_type& type() const { return vertex_type; } + Vertex_type& type() { return vertex_type; } +}; + +} // namespace internal +} // namespace Alpha_wraps_3 +} // namespace CGAL + +#endif // CGAL_ALPHA_WRAP_TRIANGULATION_VERTEX_BASE_3_H diff --git a/Polyhedron/demo/Polyhedron/Plugins/Alpha_wrap_3/Alpha_wrap_3_plugin.cpp b/Polyhedron/demo/Polyhedron/Plugins/Alpha_wrap_3/Alpha_wrap_3_plugin.cpp index a105d1ba12e..a1b29fd5689 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/Alpha_wrap_3/Alpha_wrap_3_plugin.cpp +++ b/Polyhedron/demo/Polyhedron/Plugins/Alpha_wrap_3/Alpha_wrap_3_plugin.cpp @@ -153,13 +153,13 @@ public: for(auto fit=wrapper.triangulation().finite_facets_begin(), fend=wrapper.triangulation().finite_facets_end(); fit!=fend; ++fit) { Facet f = *fit; - if(!f.first->info().is_outside) + if(!f.first->is_outside()) f = wrapper.triangulation().mirror_facet(f); const Cell_handle c = f.first; const int s = f.second; const Cell_handle nh = c->neighbor(s); - if(c->info().is_outside == nh->info().is_outside) + if(c->is_outside() == nh->is_outside()) continue; std::array ids; From 5179c4acb12724fa452591946300fd1b8d25bc28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Thu, 3 Aug 2023 12:06:23 +0200 Subject: [PATCH 30/94] Clean examples --- .../examples/Alpha_wrap_3/mixed_inputs_wrap.cpp | 2 +- .../examples/Alpha_wrap_3/volumetric_wrap.cpp | 17 ++++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/mixed_inputs_wrap.cpp b/Alpha_wrap_3/examples/Alpha_wrap_3/mixed_inputs_wrap.cpp index be64a8febbd..ffcedc7f1cb 100644 --- a/Alpha_wrap_3/examples/Alpha_wrap_3/mixed_inputs_wrap.cpp +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/mixed_inputs_wrap.cpp @@ -16,9 +16,9 @@ using K = CGAL::Exact_predicates_inexact_constructions_kernel; using Point_3 = K::Point_3; using Segment_3 = K::Segment_3; -using Face = std::array; using Segments = std::vector; using Points = std::vector; +using Face = std::array; using Faces = std::vector; using Mesh = CGAL::Surface_mesh; diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp index dd63ad66711..66e9653f1b4 100644 --- a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp @@ -129,9 +129,7 @@ int main(int argc, char** argv) std::cout << "BEFORE: " << tr.number_of_vertices() << " vertices, " << tr.number_of_cells() << " cells" << std::endl; - // Set up the domain information and grab the boundary faces - std::set boundary_facets; - + // Set up the c3t3 information for(auto v : tr.finite_vertex_handles()) v->set_dimension(3); @@ -149,24 +147,25 @@ int main(int argc, char** argv) if(c->neighbor(i)->is_outside() != c->is_outside()) { c->set_surface_patch_index(i, 1); - boundary_facets.emplace(c, i); for(int j=1; j<4; ++j) c->vertex((i+j)%4)->set_dimension(2); } } } - // CGAL::draw(tr); std::ofstream out_before("before_remeshing.mesh"); CGAL::IO::write_MEDIT(out_before, tr); - auto fcm = CGAL::make_boolean_property_map(boundary_facets); - CGAL::tetrahedral_isotropic_remeshing(tr, alpha, - CGAL::parameters::facet_is_constrained_map(fcm)); + // edge length of equilateral triangle with circumradius alpha + // const double l = 2 * alpha * 0.8660254037844386; // sqrt(3)/2 + + // edge length of regular tetrahedron with circumradius alpha + const double l = 1.6329931618554521 * alpha; // sqrt(8/3) + + CGAL::tetrahedral_isotropic_remeshing(tr, l, CGAL::parameters::remesh_boundaries(false)); std::cout << "AFTER: " << tr.number_of_vertices() << " vertices, " << tr.number_of_cells() << " cells" << std::endl; - // CGAL::draw(tr); std::ofstream out_after("after_remeshing.mesh"); CGAL::IO::write_MEDIT(out_after, tr); From 6949cdb40aca7874b2f16fed0256802a58f83891 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Thu, 3 Aug 2023 12:15:36 +0200 Subject: [PATCH 31/94] Fix missing default initialization of the AW3 markers in the new Vb/Cb --- .../internal/Alpha_wrap_triangulation_cell_base_3.h | 2 +- .../internal/Alpha_wrap_triangulation_vertex_base_3.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h index ebe337b614c..db1df61c8f6 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_cell_base_3.h @@ -26,7 +26,7 @@ class Alpha_wrap_triangulation_cell_base_3 : public Cb { private: - bool outside; + bool outside = false; public: typedef typename Cb::Vertex_handle Vertex_handle; diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h index 75f26741755..3743edffbc7 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_triangulation_vertex_base_3.h @@ -33,7 +33,7 @@ class Alpha_wrap_triangulation_vertex_base_3 : public Vb { private: - Vertex_type vertex_type; + Vertex_type vertex_type = Vertex_type::DEFAULT; public: using Cell_handle = typename Vb::Cell_handle; From 57fe29fe4f3308f9b2fcbfdfb303481581de4705 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 4 Aug 2023 11:26:46 +0200 Subject: [PATCH 32/94] Add some comments about failed speedup experiments --- .../include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h index ba752a77590..04b30cf7678 100644 --- a/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h +++ b/Alpha_wrap_3/include/CGAL/Alpha_wrap_3/internal/Alpha_wrap_3.h @@ -1082,10 +1082,12 @@ private: const Cell_handle conflict_cell = m_tr.locate(steiner_point, lt, li, lj, neighbor); CGAL_assertion(lt != Triangulation::VERTEX); + // Using small vectors like in Triangulation_3 does not bring any runtime improvement std::vector boundary_facets; std::vector conflict_zone; boundary_facets.reserve(32); conflict_zone.reserve(32); + m_tr.find_conflicts(steiner_point, conflict_cell, std::back_inserter(boundary_facets), std::back_inserter(conflict_zone)); @@ -1112,6 +1114,8 @@ private: visitor.before_Steiner_point_insertion(*this, steiner_point); // Actual insertion of the Steiner point + // We could use TDS functions to avoid recomputing the conflict zone, but in practice + // it does not bring any runtime improvements Vertex_handle vh = m_tr.insert(steiner_point, lt, conflict_cell, li, lj); vh->type() = AW3i::Vertex_type:: DEFAULT; From 6b62d1d9b40d765462fa79bbee6baee04b243f00 Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Wed, 9 Aug 2023 10:48:54 +0300 Subject: [PATCH 33/94] Introduced is_intersection_valid() to check the validity of a new intersection point. Perhaps, a similar fix is required for validity of overlapping intersections --- .../Arrangement_2/Arrangement_zone_2_impl.h | 106 +++++++++--------- .../include/CGAL/Arrangement_zone_2.h | 21 +++- 2 files changed, 72 insertions(+), 55 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index feb429273ee..dfb8851479f 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -137,7 +137,7 @@ void Arrangement_zone_2::compute_zone() if (m_found_overlap) { // In this case m_cv overlaps the curve associated with m_intersect_he. // Compute the overlapping subcurve. - bool dummy; + Arr_parameter_space dummy; auto obj = _compute_next_intersection(m_intersect_he, false, dummy); m_overlap_cv = boost::get(*obj); @@ -153,7 +153,7 @@ void Arrangement_zone_2::compute_zone() // overlaps the curve associated with this edge. m_intersect_he = m_arr.non_const_handle(*hh); - bool dummy; + Arr_parameter_space dummy; auto obj = _compute_next_intersection(m_intersect_he, false, dummy); m_overlap_cv = boost::get(*obj); @@ -211,7 +211,7 @@ void Arrangement_zone_2::compute_zone() if (m_found_overlap) { // In this case m_cv overlaps the curve associated with m_intersect_he. // Compute the overlapping subcurve to the right of curr_v. - bool dummy; + Arr_parameter_space dummy; auto obj = _compute_next_intersection(m_intersect_he, false, dummy); m_overlap_cv = boost::get(*obj); @@ -505,6 +505,37 @@ _direct_intersecting_edge_to_left(const X_monotone_curve_2& cv_ins, } } +//----------------------------------------------------------------------------- +template +bool Arrangement_zone_2:: +is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& /* intersection_location */, + Arr_all_sides_oblivious_tag) const +{ return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); } + +template +bool Arrangement_zone_2:: +is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& intersection_location, + Arr_not_all_sides_oblivious_tag) const { + auto equal = m_geom_traits->equal_2_object(); + if (m_left_on_boundary) { + // The left-end lies on the left boundary. If the intersection point is not + // equal to the left-end, the intersection is valid, because it must lie to + // its right. + if (m_has_left_pt) return ! equal(ip, m_left_pt); + else return true; + } + if (m_has_right_pt && m_right_on_boundary && equal(ip, m_right_pt)) { + intersection_location = ARR_RIGHT_BOUNDARY; + return true; + } + + // We have a simple intersection point; + // make sure it lies to the right of m_left_pt. + return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); +} + //----------------------------------------------------------------------------- // Get the next intersection of cv with the given halfedge. // @@ -513,7 +544,7 @@ typename Arrangement_zone_2::Optional_intersection Arrangement_zone_2:: _compute_next_intersection(Halfedge_handle he, bool skip_first_point, - bool& intersection_on_right_boundary) + Arr_parameter_space& intersection_location) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_compute_next_intersection(" << he->curve() << ", " @@ -534,7 +565,7 @@ _compute_next_intersection(Halfedge_handle he, const X_monotone_curve_2* icv; bool valid_intersection; - intersection_on_right_boundary = false; + intersection_location = ARR_INTERIOR; if (iter != m_inter_map.end()) { // The intersections with the curve have already been computed. // Retrieve the intersections list from the map. @@ -548,25 +579,9 @@ _compute_next_intersection(Halfedge_handle he, // Compare that current object with m_left_pt (if exists). ip = boost::get(&(inter_list.front())); if (ip != nullptr) { - // We have an intersection point - if (m_left_on_boundary) { - // The left-end lies on the left boundary. If the intersection point - // is not equal to the left-end, the intersection is valid, because - // it must lie to its right. - if (m_has_left_pt) valid_intersection = ! equal(ip->first, m_left_pt); - else valid_intersection = true; - } - else if (m_has_right_pt && m_right_on_boundary && - equal(ip->first, m_right_pt)) - { - valid_intersection = true; - intersection_on_right_boundary = true; - } - else { - // We have a simple intersection point - make sure it lies to the - // right of m_left_pt. - valid_intersection = (compare_xy(ip->first, m_left_pt) == LARGER); - } + // We have an intersection point - + valid_intersection = + is_intersection_valid(ip->first, intersection_location); } else { // We have an overlapping subcurve. @@ -609,27 +624,11 @@ _compute_next_intersection(Halfedge_handle he, while (! inter_list.empty()) { // Compare that current object with m_left_pt (if exists). ip = boost::get(&(inter_list.front())); - if (ip != nullptr) { // We have an intersection point - // Check whether we need to skip the first intersection - if (is_first && skip_first_point) valid_intersection = false; - else if (m_left_on_boundary) { - // The left-end lies on the left boundary. If the intersection point - // is not equal to the left-end, the intersection is valid, because - // it must lie to its right. - if (m_has_left_pt) valid_intersection = ! equal(ip->first, m_left_pt); - else valid_intersection = true; - } - else if (m_right_on_boundary && m_has_right_pt && - equal(ip->first, m_right_pt)) - { - valid_intersection = true; - intersection_on_right_boundary = true; - } - else { - valid_intersection = (compare_xy(ip->first, m_left_pt) == LARGER); - } + valid_intersection = (is_first && skip_first_point) ? false : + is_intersection_valid(ip->first, intersection_location); } else if (m_left_on_boundary) { // The left end is on the boundary, so all overlapping curves are valid, @@ -768,7 +767,7 @@ _is_to_right_impl(const Point_2& p, Halfedge_handle he, template void Arrangement_zone_2:: _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, - bool& leftmost_on_right_boundary) + Arr_parameter_space& leftmost_location) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_leftmost_intersection(" << he_curr->curve() << ", " @@ -793,7 +792,7 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, // entirely to the right of m_intersect_p, its intersection with m_cv (if any) // cannot lie to the left of this point. We therefore do not need to compute // this intersection. - if (m_found_intersect && ! leftmost_on_right_boundary && + if (m_found_intersect && (leftmost_location != ARR_RIGHT_BOUNDARY) && _is_to_left(m_intersect_p, he_curr)) return; @@ -821,13 +820,14 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, // do not intersect. if (! left_equals_curr_endpoint && ((! m_left_on_boundary && _is_to_right(m_left_pt, he_curr)) || - ! is_in_x_range(m_cv, he_curr->curve()))) + ! is_in_x_range(m_cv, he_curr->curve()))) { return; + } // Compute the next intersection of m_cv and the current halfedge. - bool intersection_on_right_boundary; + Arr_parameter_space intersection_location; auto iobj = _compute_next_intersection(he_curr, left_equals_curr_endpoint, - intersection_on_right_boundary); + intersection_location); if (iobj) { // We have found an intersection (either a simple point or an @@ -839,8 +839,8 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, // Found a simple intersection point. Check if it is the leftmost // intersection point so far. if (! m_found_intersect || - (! intersection_on_right_boundary && - (leftmost_on_right_boundary || + ((intersection_location != ARR_RIGHT_BOUNDARY) && + ((leftmost_location == ARR_RIGHT_BOUNDARY) || compare_xy(ip, m_intersect_p) == SMALLER))) { // Store the leftmost intersection point and the halfedge handle. @@ -848,7 +848,7 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, m_ip_multiplicity = int_p->second; m_intersect_he = he_curr; m_found_overlap = false; - leftmost_on_right_boundary = intersection_on_right_boundary; + leftmost_location = intersection_location; } } else { @@ -895,7 +895,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) auto compare_xy = m_geom_traits->compare_xy_2_object(); auto is_in_x_range = m_geom_traits->is_in_x_range_2_object(); - bool leftmost_on_right_boundary = false; + Arr_parameter_space leftmost_location = ARR_INTERIOR; // Traverse the face outer-boundaries; iterate through all outer CCBs. for (auto occb_it = face->outer_ccbs_begin(); @@ -903,7 +903,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) { Ccb_halfedge_circulator he_first = *occb_it; Ccb_halfedge_circulator he_curr = he_first; - do _leftmost_intersection(he_curr, on_boundary, leftmost_on_right_boundary); + do _leftmost_intersection(he_curr, on_boundary, leftmost_location); while (++he_curr != he_first); } @@ -913,7 +913,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) { Ccb_halfedge_circulator he_first = *iccb_it; Ccb_halfedge_circulator he_curr = he_first; - do _leftmost_intersection(he_curr, on_boundary, leftmost_on_right_boundary); + do _leftmost_intersection(he_curr, on_boundary, leftmost_location); while (++he_curr != he_first); } diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h index 81f1c8bad04..71b5e4a7409 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h @@ -336,7 +336,7 @@ private: Optional_intersection _compute_next_intersection(Halfedge_handle he, bool skip_first_point, - bool& intersect_on_right_boundary); + Arr_parameter_space& intersection_location); /*! Remove the next intersection of m_cv with the given halfedge from the map. * \param he A handle to the halfedge. @@ -394,12 +394,29 @@ private: bool _is_to_right_impl(const Point_2& p, Halfedge_handle he, Arr_not_all_sides_oblivious_tag) const; + /*! Check whether an intersection point is valid. A valid intersection point + * must be to the left of the left end of the curve involved. + */ + bool is_intersection_valid(const Point_2& ip, + Arr_parameter_space& intersection_location) const { + return is_intersection_valid_impl(ip, intersection_location, + Are_all_sides_oblivious_category()); + } + + bool is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& intersection_location, + Arr_all_sides_oblivious_tag) const; + + bool is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& intersection_location, + Arr_not_all_sides_oblivious_tag) const; + /*! Compute the (lexicographically) leftmost intersection of the query * curve with a given halfedge on the boundary of a face in the arrangement. */ void _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, - bool& leftmost_on_right_boundary); + Arr_parameter_space& leftmost_location); /*! Compute the (lexicographically) leftmost intersection of the query * curve with the boundary of a given face in the arrangement. From a9625eb17cfd5da8f96686ac6cb122645f4caa0f Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Wed, 9 Aug 2023 14:03:14 +0300 Subject: [PATCH 34/94] Enhanced drawing---added support for arrangement on spheres indiced by geodesic arcs --- .../include/CGAL/draw_arrangement_2.h | 240 ++++++++++++++---- 1 file changed, 193 insertions(+), 47 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/draw_arrangement_2.h b/Arrangement_on_surface_2/include/CGAL/draw_arrangement_2.h index c7637f04b91..76e2eaf3283 100644 --- a/Arrangement_on_surface_2/include/CGAL/draw_arrangement_2.h +++ b/Arrangement_on_surface_2/include/CGAL/draw_arrangement_2.h @@ -29,7 +29,9 @@ #include #include +#include #include +#include namespace CGAL { @@ -46,32 +48,32 @@ struct Default_color_generator { }; // Viewer class for`< Polygon_2 -template -class Arr_2_basic_viewer_qt : public Basic_viewer_qt { - using Arr = Arrangement_2_; +class Aos_2_basic_viewer_qt : public Basic_viewer_qt { + using Aos = ArrangementOnSurface_2; using Color_generator = ColorGenerator; using Base = Basic_viewer_qt; - using Gt = typename Arr::Geometry_traits_2; - using Point = typename Arr::Point_2; - using X_monotone_curve = typename Arr::X_monotone_curve_2; - using Vertex_const_handle = typename Arr::Vertex_const_handle; - using Halfedge_const_handle = typename Arr::Halfedge_const_handle; - using Face_const_handle = typename Arr::Face_const_handle; + using Gt = typename Aos::Geometry_traits_2; + using Point = typename Aos::Point_2; + using X_monotone_curve = typename Aos::X_monotone_curve_2; + using Vertex_const_handle = typename Aos::Vertex_const_handle; + using Halfedge_const_handle = typename Aos::Halfedge_const_handle; + using Face_const_handle = typename Aos::Face_const_handle; using Ccb_halfedge_const_circulator = - typename Arr::Ccb_halfedge_const_circulator; + typename Aos::Ccb_halfedge_const_circulator; public: /// Construct the viewer. /// @param arr the arrangement to view /// @param title the title of the window - Arr_2_basic_viewer_qt(QWidget* parent, const Arr& arr, + Aos_2_basic_viewer_qt(QWidget* parent, const Aos& aos, Color_generator color_generator, const char* title = "2D Arrangement Basic Viewer", bool draw_vertices = false) : // First draw: vertices; edges, faces; multi-color; no inverse normal Base(parent, title, draw_vertices, true, true, false, false), - m_arr(arr), + m_aos(aos), m_color_generator(color_generator) { // mimic the computation of Camera::pixelGLRatio() @@ -154,32 +156,47 @@ public: */ CGAL::Bbox_2 bounding_box() { CGAL::Bbox_2 bbox; - const auto* traits = this->m_arr.geometry_traits(); + const auto* traits = this->m_aos.geometry_traits(); // At this point we assume that the arrangement is not open, and thus the // bounding box is defined by the vertices. - for (auto it = m_arr.vertices_begin(); it != m_arr.vertices_end(); ++it) + for (auto it = m_aos.vertices_begin(); it != m_aos.vertices_end(); ++it) bounding_box_impl1(bbox, it->point(), *traits, 0); return bbox; } + /*! Add all faces. + */ + template + void add_faces(const Traits&) { + for (auto it = m_aos.unbounded_faces_begin(); + it != m_aos.unbounded_faces_end(); ++it) + add_face(it); + } + + /*! Add all faces. + */ + template + void + add_faces(Arr_geodesic_arc_on_sphere_traits_2 const&) + { add_face(m_aos.faces_begin()); } + /*! Add all elements to be drawn. */ void add_elements() { + // std::cout << "add_elements()\n"; // std::cout << "ratio: " << this->pixel_ratio() << std::endl; clear(); m_visited.clear(); - if (m_arr.is_empty()) return; - for (auto it = m_arr.unbounded_faces_begin(); - it != m_arr.unbounded_faces_end(); ++it) - add_face(it); + if (m_aos.is_empty()) return; + add_faces(*(this->m_aos.geometry_traits())); - // Add edges that do not separe faces. - for (auto it = m_arr.edges_begin(); it != m_arr.edges_end(); ++it) + // Add edges that do not separate faces. + for (auto it = m_aos.edges_begin(); it != m_aos.edges_end(); ++it) if (it->face() == it->twin()->face()) draw_curve(it->curve()); // Add all points - for (auto it = m_arr.vertices_begin(); it != m_arr.vertices_end(); ++it) + for (auto it = m_aos.vertices_begin(); it != m_aos.vertices_end(); ++it) draw_point(it->point()); m_visited.clear(); @@ -190,11 +207,20 @@ public: double pixel_ratio() const { return m_pixel_ratio; } protected: + template + Halfedge_const_handle + find_smallest(Ccb_halfedge_const_circulator circ, + Arr_geodesic_arc_on_sphere_traits_2 const&) + { return circ; } + /*! Find the halfedge incident to the lexicographically smallest vertex * along the CCB, such that there is no other halfedge underneath. */ - Halfedge_const_handle find_smallest(Ccb_halfedge_const_circulator circ) { - const auto* traits = this->m_arr.geometry_traits(); + template + Halfedge_const_handle find_smallest(Ccb_halfedge_const_circulator circ, + const Traits&) { + // std::cout << "find_smallest()\n"; + const auto* traits = this->m_aos.geometry_traits(); auto cmp_xy = traits->compare_xy_2_object(); auto cmp_y = traits->compare_y_at_x_right_2_object(); @@ -241,6 +267,7 @@ protected: template void draw_approximate_region(Halfedge_const_handle curr, const Approximate& approx) { + // std::cout << "draw_approximate_region()\n"; std::vector polyline; double error(this->pixel_ratio()); bool l2r = curr->direction() == ARR_LEFT_TO_RIGHT; @@ -258,7 +285,7 @@ protected: */ template void draw_exact_curve(const XMonotoneCurve& curve) { - const auto* traits = this->m_arr.geometry_traits(); + const auto* traits = this->m_aos.geometry_traits(); auto ctr_min = traits->construct_min_vertex_2_object(); auto ctr_max = traits->construct_max_vertex_2_object(); this->add_segment(ctr_min(curve), ctr_max(curve)); @@ -267,7 +294,7 @@ protected: /*! Draw an exact region. */ void draw_exact_region(Halfedge_const_handle curr) { - this->add_point_in_face(curr->source()->point()); + // this->add_point_in_face(curr->source()->point()); draw_exact_curve(curr->curve()); } @@ -300,9 +327,46 @@ protected: { draw_approximate_region(curr, traits.approximate_2_object()); } #endif + template + void draw_region_impl1 + (Halfedge_const_handle curr, + Arr_geodesic_arc_on_sphere_traits_2 const& traits, + int) { + // std::cout << "draw_region_impl1()\n"; + auto approx = traits.approximate_2_object(); + using Kernel = Kernel_; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; + using Ak = typename Traits::Approximate_kernel; + using Ap = typename Traits::Approximate_point_2; + using Approx_point_3 = typename Ak::Point_3; + + std::vector polyline; + double error(0.01); + bool l2r = curr->direction() == ARR_LEFT_TO_RIGHT; + approx(curr->curve(), error, std::back_inserter(polyline), l2r); + if (polyline.empty()) return; + auto it = polyline.begin(); + auto x = it->dx(); + auto y = it->dy(); + auto z = it->dz(); + auto l = std::sqrt(x*x + y*y + z*z); + Approx_point_3 prev(x/l, y/l, z/l); + for (++it; it != polyline.end(); ++it) { + auto x = it->dx(); + auto y = it->dy(); + auto z = it->dz(); + auto l = std::sqrt(x*x + y*y + z*z); + Approx_point_3 next(x/l, y/l, z/l); + this->add_segment(prev, next); + prev = next; + // this->add_point_in_face(*prev); + } + } + /*! Draw a region. */ void draw_region(Ccb_halfedge_const_circulator circ) { + // std::cout << "draw_region()\n"; /* Check whether the traits has a member function called * approximate_2_object() and if so check whether the return type, namely * `Approximate_2` has an appropriate operator. @@ -321,8 +385,8 @@ protected: auto color = m_color_generator(circ->face()); this->face_begin(color); - const auto* traits = this->m_arr.geometry_traits(); - auto ext = find_smallest(circ); + const auto* traits = this->m_aos.geometry_traits(); + auto ext = find_smallest(circ, *traits); auto curr = ext; do { @@ -382,6 +446,37 @@ protected: { draw_approximate_curve(xcv, traits.approximate_2_object()); } #endif + template + void draw_curve_impl1 + (const X_monotone_curve& xcv, + Arr_geodesic_arc_on_sphere_traits_2 const& traits, + int) { + auto approx = traits.approximate_2_object(); + using Kernel = Kernel_; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; + using Ak = typename Traits::Approximate_kernel; + using Ap = typename Traits::Approximate_point_2; + using Approx_point_3 = typename Ak::Point_3; + std::vector apoints; + double error(0.01); + approx(xcv, error, std::back_inserter(apoints)); + auto it = apoints.begin(); + auto x = it->dx(); + auto y = it->dy(); + auto z = it->dz(); + auto l = std::sqrt(x*x + y*y + z*z); + Approx_point_3 prev(x/l, y/l, z/l); + for (++it; it != apoints.end(); ++it) { + auto x = it->dx(); + auto y = it->dy(); + auto z = it->dz(); + auto l = std::sqrt(x*x + y*y + z*z); + Approx_point_3 next(x/l, y/l, z/l); + this->add_segment(prev, next); + prev = next; + } + } + /*! Draw a curve. */ template @@ -404,14 +499,14 @@ protected: #if 0 if constexpr (std::experimental::is_detected_v) { - const auto* traits = this->m_arr.geometry_traits(); + const auto* traits = this->m_aos.geometry_traits(); auto approx = traits->approximate_2_object(); draw_approximate_curve(curve, approx); return; } draw_exact_curve(curve); #else - const auto* traits = this->m_arr.geometry_traits(); + const auto* traits = this->m_aos.geometry_traits(); draw_curve_impl1(curve, *traits, 0); #endif } @@ -442,16 +537,35 @@ protected: { add_point(traits.approximate_2_object()(p)); } #endif + template + void draw_point_impl1 + (const Point& p, + Arr_geodesic_arc_on_sphere_traits_2 const& traits, + int) { + auto approx = traits.approximate_2_object(); + using Traits = Arr_geodesic_arc_on_sphere_traits_2; + using Ak = typename Traits::Approximate_kernel; + using Approx_point_3 = typename Ak::Point_3; + auto ap = approx(p); + auto x = ap.dx(); + auto y = ap.dy(); + auto z = ap.dz(); + auto l = std::sqrt(x*x + y*y + z*z); + Approx_point_3 p3(x/l, y/l, z/l); + add_point(p3); + } + /*! Draw a point. */ void draw_point(const Point& p) { - const auto* traits = m_arr.geometry_traits(); + const auto* traits = m_aos.geometry_traits(); draw_point_impl1(p, *traits, 0); } /*! Add a Connected Component of the Boundary. */ void add_ccb(Ccb_halfedge_const_circulator circ) { + // std::cout << "add_ccb()\n"; auto curr = circ; do { auto new_face = curr->twin()->face(); @@ -464,8 +578,9 @@ protected: /*! Add a face. */ void add_face(Face_const_handle face) { - using Inner_ccb_const_iterator = typename Arr::Inner_ccb_const_iterator; - using Outer_ccb_const_iterator = typename Arr::Outer_ccb_const_iterator; + // std::cout << "add_face()\n"; + using Inner_ccb_const_iterator = typename Aos::Inner_ccb_const_iterator; + using Outer_ccb_const_iterator = typename Aos::Outer_ccb_const_iterator; for (Inner_ccb_const_iterator it = face->inner_ccbs_begin(); it != face->inner_ccbs_end(); ++it) @@ -505,7 +620,7 @@ protected: double m_pixel_ratio = 1; //! The arrangement to draw. - const Arr& m_arr; + const Aos& m_aos; //! The color generator. Color_generator m_color_generator; @@ -514,32 +629,63 @@ protected: }; //! Basic viewer of a 2D arrangement. -template -class Arr_2_viewer_qt : public Arr_2_basic_viewer_qt { public: - using Arr = Arrangement_2_; + using Aos = ArrangementOnSurface_2; using Color_generator = ColorGenerator; - using Base = Arr_2_basic_viewer_qt; - using Point = typename Arr::Point_2; - using X_monotone_curve = typename Arr::X_monotone_curve_2; - using Halfedge_const_handle = typename Arr::Halfedge_const_handle; - using Face_const_handle = typename Arr::Face_const_handle; + using Base = Aos_2_basic_viewer_qt; + using Point = typename Aos::Point_2; + using X_monotone_curve = typename Aos::X_monotone_curve_2; + using Halfedge_const_handle = typename Aos::Halfedge_const_handle; + using Face_const_handle = typename Aos::Face_const_handle; using Ccb_halfedge_const_circulator = - typename Arr::Ccb_halfedge_const_circulator; + typename Aos::Ccb_halfedge_const_circulator; /// Construct the viewer. /// @param arr the arrangement to view /// @param title the title of the window - Arr_2_viewer_qt(QWidget* parent, const Arr& arr, + Aos_2_viewer_qt(QWidget* parent, const Aos& aos, Color_generator color_generator, - const char* title = "2D Arrangement Basic Viewer", + const char* title = "2D Arrangement on Surface Basic Viewer", bool draw_vertices = false) : - Base(parent, arr, color_generator, title, draw_vertices) + Base(parent, aos, color_generator, title, draw_vertices) {} }; +/*! Draw an arrangement on surface. + */ +template +void draw(const Arrangement_on_surface_2& aos, + const char* title = "2D Arrangement on Surface Basic Viewer", + bool draw_vertices = false) { +#if defined(CGAL_TEST_SUITE) + bool cgal_test_suite=true; +#else + bool cgal_test_suite = qEnvironmentVariableIsSet("CGAL_TEST_SUITE"); +#endif + + if (cgal_test_suite) return; + using Gt = GeometryTraits_2; + using Tt = TopologyTraits; + using Aos = CGAL::Arrangement_on_surface_2; + using Viewer = Aos_2_viewer_qt; + + CGAL::Qt::init_ogl_context(4,3); + + int argc = 1; + const char* argv[2] = {"t2_viewer", nullptr}; + QApplication app(argc, const_cast(argv)); + Default_color_generator color_generator; + Viewer mainwindow(app.activeWindow(), aos, color_generator, title, + draw_vertices); + mainwindow.add_elements(); + mainwindow.show(); + app.exec(); +} + /*! Draw an arrangement. */ template @@ -555,7 +701,7 @@ void draw(const Arrangement_2& arr, if (cgal_test_suite) return; using Gt = GeometryTraits_2; using Arr = CGAL::Arrangement_2; - using Viewer = Arr_2_viewer_qt; + using Viewer = Aos_2_viewer_qt; CGAL::Qt::init_ogl_context(4,3); @@ -589,7 +735,7 @@ void draw(const Arrangement_2& arr, using Color_generator = ColorGenerator; using Gt = GeometryTraits_2; using Arr = CGAL::Arrangement_2; - using Viewer = Arr_2_viewer_qt; + using Viewer = Aos_2_viewer_qt; CGAL::Qt::init_ogl_context(4,3); From 46c42465706e397c031b5e15d1d70584afc6a913 Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Wed, 9 Aug 2023 17:37:01 +0300 Subject: [PATCH 35/94] Cleaned up --- .../Arr_geodesic_arc_on_sphere_traits_2.h | 719 +++++++++--------- 1 file changed, 360 insertions(+), 359 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h index 7a0a2eaa3af..e3a934889bc 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h @@ -39,9 +39,86 @@ namespace CGAL { +/*! Represent an extended 3D direction that is used in turn to represent a + * spherical-arc endpoint. The extended data consists of two flags that + * indicate whether the point is on the x and on a y boundaries, + * respectively. + */ +template +class Arr_extended_direction_3 : public Kernel::Direction_3 { +public: + using FT = typename Kernel::FT; + using Direction_3 = typename Kernel::Direction_3; + + /*! Enumeration of discontinuity type */ + enum Location_type { + NO_BOUNDARY_LOC = 0, + MIN_BOUNDARY_LOC, + MID_BOUNDARY_LOC, + MAX_BOUNDARY_LOC + }; + +private: + using Direction_2 = typename Kernel::Direction_2; + + //! The point discontinuity type + Location_type m_location; + + inline Sign x_sign(Direction_3 d) const { return CGAL::sign(d.dx()); } + + inline Sign y_sign(Direction_3 d) const { return CGAL::sign(d.dy()); } + + inline Sign z_sign(Direction_3 d) const { return CGAL::sign(d.dz()); } + +public: + /*! Default constructor */ + Arr_extended_direction_3() : + Direction_3(0, 0, 1), + m_location(MAX_BOUNDARY_LOC) + {} + + /*! Constructor */ + Arr_extended_direction_3(const Direction_3& dir, Location_type location) : + Direction_3(dir), + m_location(location) + {} + + /*! Copy constructor */ + Arr_extended_direction_3(const Arr_extended_direction_3& other) : + Direction_3(static_cast(other)) + { m_location = other.discontinuity_type(); } + + /*! Assignment operator */ + Arr_extended_direction_3& operator=(const Arr_extended_direction_3& other) { + *(static_cast(this)) = static_cast(other); + m_location = other.discontinuity_type(); + return (*this); + } + + /*! Set the location of the point. + */ + void set_location(Location_type location) { m_location = location; } + + /*! Obtain the location of the point. + */ + Location_type location() const { return m_location; } + + /*! Obtain the discontinuity type of the point. + * \todo deprecate this one; use the above instead. + */ + Location_type discontinuity_type() const { return m_location; } + + bool is_no_boundary() const { return (m_location == NO_BOUNDARY_LOC); } + + bool is_min_boundary() const { return (m_location == MIN_BOUNDARY_LOC); } + + bool is_mid_boundary() const { return (m_location == MID_BOUNDARY_LOC); } + + bool is_max_boundary() const { return (m_location == MAX_BOUNDARY_LOC); } +}; + template class Arr_x_monotone_geodesic_arc_on_sphere_3; template class Arr_geodesic_arc_on_sphere_3; -template class Arr_extended_direction_3; /*! A traits class-template for constructing and maintaining arcs of great * circles embedded on spheres. It is parameterized from a (linear) geometry @@ -54,44 +131,43 @@ class Arr_geodesic_arc_on_sphere_traits_2 : public Kernel_ { friend class Arr_extended_direction_3; public: - typedef Kernel_ Kernel; + using Kernel = Kernel_; // Category tags: - typedef Tag_true Has_left_category; - typedef Tag_true Has_merge_category; - typedef Tag_false Has_do_intersect_category; + using Has_left_category = Tag_true; + using Has_merge_category = Tag_true; + using Has_do_intersect_category = Tag_false; - typedef Arr_identified_side_tag Left_side_category; - typedef Arr_contracted_side_tag Bottom_side_category; - typedef Arr_contracted_side_tag Top_side_category; - typedef Arr_identified_side_tag Right_side_category; + using Left_side_category = Arr_identified_side_tag; + using Bottom_side_category = Arr_contracted_side_tag; + using Top_side_category = Arr_contracted_side_tag; + using Right_side_category = Arr_identified_side_tag; - typedef std::integral_constant Zero_atan_y; + using Zero_atan_y = std::integral_constant; // Traits objects - typedef Arr_extended_direction_3 Point_2; - typedef Arr_x_monotone_geodesic_arc_on_sphere_3 X_monotone_curve_2; - typedef Arr_geodesic_arc_on_sphere_3 Curve_2; - typedef unsigned int Multiplicity; + using Point_2 = Arr_extended_direction_3; + using X_monotone_curve_2 = Arr_x_monotone_geodesic_arc_on_sphere_3; + using Curve_2 = Arr_geodesic_arc_on_sphere_3; + using Multiplicity = std::size_t; /*! Default constructor */ Arr_geodesic_arc_on_sphere_traits_2() {} protected: - typedef typename Kernel::FT FT; + using FT = typename Kernel::FT; - typedef typename Kernel::Direction_3 Direction_3; - typedef typename Kernel::Vector_3 Vector_3; - typedef typename Kernel::Direction_2 Direction_2; - typedef typename Kernel::Vector_2 Vector_2; + using Direction_3 = typename Kernel::Direction_3; + using Vector_3 = typename Kernel::Vector_3; + using Direction_2 = typename Kernel::Direction_2; + using Vector_2 = typename Kernel::Vector_2; /*! Obtain the intersection of the identification arc and the xy plane. * By default, it is the vector directed along the negative x axis * (x = -infinity). * \return the intersection of the identification arc and the xy plane. */ - inline static const Direction_2& identification_xy() - { + inline static const Direction_2& identification_xy() { static const Direction_2 d(atan_x, atan_y); return d; } @@ -101,8 +177,7 @@ protected: * (y = infinity). * \return the normal of the plane that contains the identification arc. */ - inline static const Direction_3& identification_normal() - { + inline static const Direction_3& identification_normal() { static const Direction_3 d(atan_y, -atan_x, 0); return d; } @@ -110,8 +185,7 @@ protected: /*! Obtain the 2D direction directed along the negative x axis * \return the direction directed at x = -infinity */ - inline static const Direction_2& neg_x_2() - { + inline static const Direction_2& neg_x_2() { CGAL_STATIC_THREAD_LOCAL_VARIABLE_2(Direction_2, d, -1, 0); return d; } @@ -119,8 +193,7 @@ protected: /*! Obtain the 2D direction directed along the negative y axis * \return the direction directed at y = -infinity */ - inline static const Direction_2& neg_y_2() - { + inline static const Direction_2& neg_y_2() { CGAL_STATIC_THREAD_LOCAL_VARIABLE_2(Direction_2, d, 0, -1); return d; } @@ -186,8 +259,7 @@ protected: * \param dir the direction. */ inline Oriented_side oriented_side(const Direction_3& normal, - const Direction_3 dir) const - { + const Direction_3 dir) const { FT dot = normal.vector() * dir.vector(); return CGAL::sign(dot); } @@ -197,9 +269,8 @@ protected: * \param d2 the second direction. * \return the relative orientation of d1 and d2. */ - inline Orientation orientation(const Direction_2& d1, const Direction_2& d2) - const - { + inline Orientation orientation(const Direction_2& d1, + const Direction_2& d2) const { const Kernel& kernel(*this); return kernel.orientation_2_object()(d1.vector(), d2.vector()); } @@ -209,8 +280,7 @@ protected: * \param d2 the second direction. */ inline Direction_3 construct_normal_3(const Direction_3& d1, - const Direction_3& d2) const - { + const Direction_3& d2) const { const Kernel& kernel(*this); Vector_3 v = kernel.construct_cross_product_vector_3_object()(d1.vector(), d2.vector()); @@ -224,8 +294,7 @@ protected: * \return true if dir is contained in plane; false otherwise. * \pre the plane contains the origin. */ - inline bool has_on(const Direction_3& normal, const Direction_3& dir) const - { + inline bool has_on(const Direction_3& normal, const Direction_3& dir) const { FT dot = normal.vector() * dir.vector(); return CGAL::sign(dot) == ZERO; } @@ -239,8 +308,7 @@ public: * LARGER - v(d1) > v(d2). */ inline Comparison_result compare_y(const Direction_3& d1, - const Direction_3& d2) const - { + const Direction_3& d2) const { Vector_3 v1 = d1.vector(); Vector_3 v2 = d2.vector(); @@ -274,8 +342,7 @@ public: * LARGER - u(d1) > u(d2). */ inline Comparison_result compare_x(const Direction_2& d1, - const Direction_2& d2) const - { + const Direction_2& d2) const { const Kernel& kernel = *this; if (kernel.equal_2_object()(d1, d2)) return EQUAL; const Direction_2& d = identification_xy(); @@ -293,8 +360,7 @@ public: * \pre d2 does not coincide with any pole. */ inline Comparison_result compare_x(const Direction_3& d1, - const Direction_3& d2) const - { + const Direction_3& d2) const { // Compare the projections onto the xy plane: Direction_2 d1_2 = project_xy(d1); Direction_2 d2_2 = project_xy(d2); @@ -313,8 +379,7 @@ public: * \pre d2 does not lie on the discontinuity arc. */ inline Comparison_result compare_xy(const Direction_3& d1, - const Direction_3& d2) const - { + const Direction_3& d2) const { Comparison_result res = compare_x(d1, d2); if (res == EQUAL) return compare_y(d1, d2); return res; @@ -327,9 +392,9 @@ public: * false otherwise. * \pre point does not coincide with one of the poles */ - bool is_in_x_range(const X_monotone_curve_2& xcv, const Point_2& point) const - { - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + bool is_in_x_range(const X_monotone_curve_2& xcv, + const Point_2& point) const { + using Traits = Arr_geodesic_arc_on_sphere_traits_2; CGAL_precondition(!point.is_min_boundary()); CGAL_precondition(!point.is_max_boundary()); @@ -358,8 +423,7 @@ public: */ void intersection_with_identification(const X_monotone_curve_2& xcv, Direction_3& dp, - std::true_type) const - { + std::true_type) const { const Direction_3& normal = xcv.normal(); dp = (CGAL::sign(normal.dz()) == POSITIVE) ? Direction_3(-(normal.dz()), 0, normal.dx()) : @@ -371,8 +435,7 @@ public: */ void intersection_with_identification(const X_monotone_curve_2& xcv, Direction_3& dp, - std::false_type) const - { + std::false_type) const { const Direction_3& normal = xcv.normal(); FT z((atan_x * normal.dx() + atan_y * normal.dy()) / -(normal.dz())); @@ -383,8 +446,7 @@ public: * \param[in] cv the curve */ bool overlap_with_identification(const X_monotone_curve_2& xcv, - std::true_type) const - { + std::true_type) const { const Direction_3& normal = xcv.normal(); return ((x_sign(normal) == ZERO) && (((y_sign(normal) == NEGATIVE) && !xcv.is_directed_right()) || @@ -395,8 +457,7 @@ public: * \param[in] cv the curve */ bool overlap_with_identification(const X_monotone_curve_2& xcv, - std::false_type) const - { + std::false_type) const { const Direction_3& normal = xcv.normal(); const Direction_3& iden_normal = identification_normal(); const Direction_2 iden_normal_xy = project_xy(iden_normal); @@ -417,9 +478,9 @@ public: /*! A functor that constructs a point on the sphere. */ class Construct_point_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -436,8 +497,7 @@ public: * \param[in] y the y coordinate * \param[in] z the z coordinate */ - Point_2 operator()(const FT& x, const FT& y, const FT& z) - { + Point_2 operator()(const FT& x, const FT& y, const FT& z) { Point_2 p; Direction_3& d(p); d = Direction_3(x, y, z); @@ -449,8 +509,7 @@ public: * direction. * \param other the other direction */ - Point_2 operator()(const Direction_3& other) - { + Point_2 operator()(const Direction_3& other) { Point_2 p; Direction_3& d(p); d = Direction_3(other); @@ -461,8 +520,7 @@ public: /*! Initialize a point on the sphere, * \param[in] p the point to initialize. */ - void init(Point_2& p, std::true_type) const - { + void init(Point_2& p, std::true_type) const { const Direction_3& dir = p; if (y_sign(dir) != ZERO) { p.set_location(Point_2::NO_BOUNDARY_LOC); @@ -480,8 +538,7 @@ public: /*! Initialize a point on the sphere, * \param[in] p the point to initialize. */ - void init(Point_2& p, std::false_type) const - { + void init(Point_2& p, std::false_type) const { const Direction_3& dir = p; if ((x_sign(dir) == ZERO) && (y_sign(dir) == ZERO)) { typename Point_2::Location_type location = (z_sign(dir) == NEGATIVE) ? @@ -508,9 +565,9 @@ public: /*! A functor that constructs an x-monotone geodesic arc on the sphere. */ class Construct_x_monotone_curve_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -536,9 +593,8 @@ public: * \pre the source and target must not coincide. * \pre the source and target cannot be antipodal. */ - X_monotone_curve_2 operator()(const Point_2& source, const Point_2& target) - const - { + X_monotone_curve_2 operator()(const Point_2& source, + const Point_2& target) const { X_monotone_curve_2 xcv; xcv.set_source(source); @@ -561,8 +617,7 @@ public: * \param plane the containing plane. * \pre the plane is not vertical */ - X_monotone_curve_2 operator()(const Direction_3& normal) const - { + X_monotone_curve_2 operator()(const Direction_3& normal) const { X_monotone_curve_2 xcv; xcv.set_normal(normal); @@ -608,12 +663,11 @@ public: * \param target the target point. * \pre the source and target cannot be equal. */ - void init(X_monotone_curve_2& xcv) const - { + void init(X_monotone_curve_2& xcv) const { const Point_2& source = xcv.source(); const Point_2& target = xcv.target(); - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; const Kernel& kernel(m_traits); CGAL_precondition(!kernel.equal_3_object()(Direction_3(source), @@ -701,9 +755,9 @@ public: /*! A functor that constructs a geodesic arc on the sphere. */ class Construct_curve_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -728,8 +782,7 @@ public: * \pre the source and target cannot be equal. * \pre the source and target cannot be the opoosite of each other. */ - Curve_2 operator()(const Point_2& source, const Point_2& target) - { + Curve_2 operator()(const Point_2& source, const Point_2& target) { Curve_2 cv; cv.set_source(source); cv.set_target(target); @@ -794,8 +847,7 @@ public: Orientation orient = m_traits.orientation(s, t); const Kernel& kernel = m_traits; - typename Kernel::Counterclockwise_in_between_2 cc_in_between = - kernel.counterclockwise_in_between_2_object(); + auto cc_in_between = kernel.counterclockwise_in_between_2_object(); const Direction_2& d = Traits::identification_xy(); if (orient == LEFT_TURN) { @@ -819,8 +871,7 @@ public: * \pre Both endpoints lie on the given plane. */ Curve_2 operator()(const Point_2& source, const Point_2& target, - const Direction_3& normal) - { + const Direction_3& normal) { Curve_2 cv; cv.set_source(source); @@ -829,7 +880,7 @@ public: cv.set_is_degenerate(false); cv.set_is_empty(false); - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; CGAL_precondition(m_traits.has_on(normal, source)); CGAL_precondition(m_traits.has_on(normal, target)); @@ -912,8 +963,7 @@ public: Direction_2 s = project(source); Direction_2 t = project(target); const Direction_2& ny = Traits::neg_y_2(); - typename Kernel::Counterclockwise_in_between_2 ccib = - kernel.counterclockwise_in_between_2_object(); + auto ccib = kernel.counterclockwise_in_between_2_object(); cv.set_is_x_monotone((plane_is_positive && !ccib(ny, s, t)) || (!plane_is_positive && !ccib(ny, t, s))); @@ -929,8 +979,7 @@ public: const Direction_2& d = Traits::identification_xy(); Direction_2 s = Traits::project_xy(source); Direction_2 t = Traits::project_xy(target); - typename Kernel::Counterclockwise_in_between_2 ccib = - kernel.counterclockwise_in_between_2_object(); + auto ccib = kernel.counterclockwise_in_between_2_object(); bool plane_is_positive = (z_sign(normal) == POSITIVE); cv.set_is_x_monotone((plane_is_positive && !ccib(d, s, t)) || (!plane_is_positive && !ccib(d, t, s))); @@ -961,9 +1010,9 @@ public: /*! A functor that compares the x-coordinates of two directional points */ class Compare_x_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -983,8 +1032,7 @@ public: * \pre p1 does not lie on the boundary. * \pre p2 does not lie on the boundary. */ - Comparison_result operator()(const Point_2& p1, const Point_2& p2) const - { + Comparison_result operator()(const Point_2& p1, const Point_2& p2) const { CGAL_precondition(p1.is_no_boundary()); CGAL_precondition(p2.is_no_boundary()); @@ -996,8 +1044,7 @@ protected: /*! Obtain the positive (north) pole * \return the positive (north) pole */ - inline static const Point_2& pos_pole() - { + inline static const Point_2& pos_pole() { static const Point_2 p(Direction_3(0, 0, 1), Point_2::MAX_BOUNDARY_LOC); return p; } @@ -1005,8 +1052,7 @@ protected: /*! Obtain the negative (south) pole * \return the negative (south) pole */ - inline static const Point_2& neg_pole() - { + inline static const Point_2& neg_pole() { static const Point_2 p(Direction_3(0, 0, -1), Point_2::MIN_BOUNDARY_LOC); return p; } @@ -1020,9 +1066,9 @@ public: */ class Compare_xy_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1044,8 +1090,7 @@ public: * \pre p1 does not lie on the boundary. * \pre p2 does not lie on the boundary. */ - Comparison_result operator()(const Point_2& p1, const Point_2& p2) const - { + Comparison_result operator()(const Point_2& p1, const Point_2& p2) const { CGAL_precondition(p1.is_no_boundary()); CGAL_precondition(p2.is_no_boundary()); @@ -1094,8 +1139,7 @@ public: * \return true if the curve is a vertical spherical_arc; false otherwise. * \pre the arc is not degenerate (consists of a single point) */ - bool operator()(const X_monotone_curve_2& xc) const - { + bool operator()(const X_monotone_curve_2& xc) const { CGAL_precondition(!xc.is_degenerate()); return xc.is_vertical(); } @@ -1109,9 +1153,9 @@ public: */ class Compare_y_at_x_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1132,8 +1176,7 @@ public: * \pre p is in the x-range of xc. */ Comparison_result operator()(const Point_2& p, - const X_monotone_curve_2& xc) const - { + const X_monotone_curve_2& xc) const { CGAL_precondition(!p.is_min_boundary() && !p.is_max_boundary()); CGAL_precondition(m_traits.is_in_x_range(xc, p)); @@ -1169,9 +1212,9 @@ public: */ class Compare_y_at_x_left_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1195,8 +1238,7 @@ public: */ Comparison_result operator()(const X_monotone_curve_2& xc1, const X_monotone_curve_2& xc2, - const Point_2& p) const - { + const Point_2& p) const { CGAL_precondition(! xc1.is_degenerate()); CGAL_precondition(! xc2.is_degenerate()); CGAL_precondition(p == xc1.right()); @@ -1227,8 +1269,7 @@ public: auto opposite_3 = kernel.construct_opposite_direction_3_object(); Direction_3 opposite_p = opposite_3(p); if (kernel.equal_3_object()(opposite_p, Direction_3(l1)) || - kernel.equal_3_object()(opposite_p, Direction_3(l2))) - { + kernel.equal_3_object()(opposite_p, Direction_3(l2))) { Sign xsign = Traits::x_sign(p); Sign ysign = Traits::y_sign(p); Project project = (xsign == ZERO) ? @@ -1286,9 +1327,9 @@ public: */ class Compare_y_at_x_right_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1312,8 +1353,7 @@ public: */ Comparison_result operator()(const X_monotone_curve_2& xc1, const X_monotone_curve_2& xc2, - const Point_2& p) const - { + const Point_2& p) const { CGAL_precondition(! xc1.is_degenerate()); CGAL_precondition(! xc2.is_degenerate()); @@ -1335,8 +1375,7 @@ public: auto opposite_3 = kernel.construct_opposite_direction_3_object(); Direction_3 opposite_p = opposite_3(p); if (kernel.equal_3_object()(opposite_p, Direction_3(r1)) || - kernel.equal_3_object()(opposite_p, Direction_3(r2))) - { + kernel.equal_3_object()(opposite_p, Direction_3(r2))) { Sign xsign = Traits::x_sign(p); Sign ysign = Traits::y_sign(p); Project project = (xsign == ZERO) ? @@ -1402,9 +1441,9 @@ public: */ class Equal_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1422,8 +1461,7 @@ public: * \return true if the two curves are the same; false otherwise. */ bool operator()(const X_monotone_curve_2& xc1, - const X_monotone_curve_2& xc2) const - { + const X_monotone_curve_2& xc2) const { const Kernel& kernel = m_traits; typename Kernel::Equal_3 equal_3 = kernel.equal_3_object(); if (xc1.is_full() || xc2.is_full()) { @@ -1447,8 +1485,7 @@ public: * \param p2 the second point. * \return true if the two point are the same; false otherwise. */ - bool operator()(const Point_2& p1, const Point_2& p2) const - { + bool operator()(const Point_2& p1, const Point_2& p2) const { const Kernel& kernel = m_traits; return kernel.equal_3_object()(Direction_3(p1), Direction_3(p2)); } @@ -1466,9 +1503,9 @@ public: */ class Parameter_space_in_x_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1498,8 +1535,7 @@ public: * \pre xcv does not coincide with the identification */ Arr_parameter_space operator()(const X_monotone_curve_2& xcv, - Arr_curve_end ce) const - { + Arr_curve_end ce) const { CGAL_precondition(!m_traits.is_on_y_identification_2_object()(xcv)); // vertical, but not on identification! if (xcv.is_vertical()) return ARR_INTERIOR; @@ -1516,8 +1552,7 @@ public: * \param p the point. * \return the parameter space at p. */ - Arr_parameter_space operator()(const Point_2& p) const - { + Arr_parameter_space operator()(const Point_2& p) const { CGAL_precondition(p.is_no_boundary()); CGAL_USE(p); return ARR_INTERIOR; @@ -1551,8 +1586,7 @@ public: * maximal end. */ Arr_parameter_space operator()(const X_monotone_curve_2& xcv, - Arr_curve_end ce) const - { + Arr_curve_end ce) const { return (ce == ARR_MIN_END) ? ((xcv.left().is_min_boundary()) ? ARR_BOTTOM_BOUNDARY: ARR_INTERIOR) : ((xcv.right().is_max_boundary()) ? ARR_TOP_BOUNDARY : ARR_INTERIOR); @@ -1565,8 +1599,7 @@ public: * \param p the point. * \return the parameter space at p. */ - Arr_parameter_space operator()(const Point_2& p) const - { + Arr_parameter_space operator()(const Point_2& p) const { return (p.is_min_boundary()) ? ARR_BOTTOM_BOUNDARY : (p.is_max_boundary()) ? ARR_TOP_BOUNDARY : ARR_INTERIOR; @@ -1583,9 +1616,9 @@ public: */ class Compare_x_on_boundary_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1613,8 +1646,8 @@ public: */ Comparison_result operator()(const Point_2& point, const X_monotone_curve_2& xcv, - Arr_curve_end CGAL_precondition_code(ce)) const - { + Arr_curve_end CGAL_precondition_code(ce)) + const { CGAL_precondition(point.is_no_boundary()); CGAL_precondition_code (const Point_2& p2 = (ce == ARR_MIN_END) ? xcv.left() : xcv.right();); @@ -1659,8 +1692,8 @@ public: Comparison_result operator()(const X_monotone_curve_2& xcv1, Arr_curve_end CGAL_precondition_code(ce1), const X_monotone_curve_2& xcv2, - Arr_curve_end CGAL_precondition_code(ce2)) const - { + Arr_curve_end CGAL_precondition_code(ce2)) + const { CGAL_precondition_code (const Point_2& p1 = (ce1 == ARR_MIN_END) ? xcv1.left() : xcv1.right();); CGAL_precondition(!p1.is_no_boundary()); @@ -1695,9 +1728,7 @@ public: */ Comparison_result operator()(const Point_2& /* p1 */, const Point_2& /* p2 */) const - { - CGAL_error(); return EQUAL; - } + { CGAL_error(); return EQUAL; } }; /*! Obtain a Compare_x_on_boundary_2 function object. @@ -1710,9 +1741,9 @@ public: */ class Compare_x_near_boundary_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1746,8 +1777,8 @@ public: CGAL_precondition_code(xcv1), const X_monotone_curve_2& CGAL_precondition_code(xcv2), - Arr_curve_end CGAL_precondition_code(ce)) const - { + Arr_curve_end CGAL_precondition_code(ce)) + const { CGAL_precondition_code (const Point_2& p1 = (ce == ARR_MIN_END) ? xcv1.left() : xcv1.right();); CGAL_precondition(!p1.is_no_boundary()); @@ -1774,9 +1805,9 @@ public: */ class Compare_y_near_boundary_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1800,8 +1831,7 @@ public: */ Comparison_result operator()(const X_monotone_curve_2& xcv1, const X_monotone_curve_2& xcv2, - Arr_curve_end ce) const - { + Arr_curve_end ce) const { CGAL_precondition(! xcv1.is_degenerate()); CGAL_precondition(! xcv2.is_degenerate()); @@ -1918,9 +1948,9 @@ public: */ class Is_on_y_identification_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -1944,8 +1974,7 @@ public: * \return a Boolean indicating whether xcv coincides with the vertical * identification arc. */ - bool operator()(const X_monotone_curve_2& xcv) const - { + bool operator()(const X_monotone_curve_2& xcv) const { /* If the curve is not vertical and non of its endpoints lie on the * boundary, the arc itself cannot lie on the identification arc. */ @@ -1977,9 +2006,9 @@ public: */ class Compare_y_on_boundary_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2000,8 +2029,7 @@ public: * \pre p1 lies on the vertical identification arc including the poles! * \pre p2 lies on the vertical identification arc including the poles! */ - Comparison_result operator()(const Point_2& p1, const Point_2& p2) const - { + Comparison_result operator()(const Point_2& p1, const Point_2& p2) const { // first deal with the 'degenerate' case of poles! if (p1.is_min_boundary()) { if (p2.is_min_boundary()) return EQUAL; @@ -2039,9 +2067,9 @@ public: */ class Make_x_monotone_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2063,8 +2091,8 @@ public: */ template OutputIterator operator()(const Curve_2& c, OutputIterator oi) const { - typedef boost::variant - Make_x_monotone_result; + using Make_x_monotone_result = + boost::variant; // std::cout << "full: " << c.is_full() << std::endl; // std::cout << "vert: " << c.is_vertical() << std::endl; // std::cout << "xmon: " << c.is_x_monotone() << std::endl; @@ -2199,9 +2227,9 @@ public: /*! A functor that splits an x-monotone arc at a directional point. */ class Split_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2223,8 +2251,7 @@ public: * \pre xc is not degenerate */ void operator()(const X_monotone_curve_2& xc, const Point_2& p, - X_monotone_curve_2& xc1, X_monotone_curve_2& xc2) const - { + X_monotone_curve_2& xc1, X_monotone_curve_2& xc2) const { CGAL_precondition(!xc.is_degenerate()); const Point_2& source = xc.source(); const Point_2& target = xc.target(); @@ -2268,9 +2295,9 @@ public: /*! The clockwise-in-between function object */ class Clockwise_in_between_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2282,8 +2309,7 @@ public: public: bool operator()(const Direction_2& d, - const Direction_2& d1, const Direction_2& d2) const - { + const Direction_2& d1, const Direction_2& d2) const { const Kernel& kernel = m_traits; return kernel.counterclockwise_in_between_2_object()(d, d2, d1); } @@ -2318,11 +2344,10 @@ public: bool vertical, const In_between& in_between, Project project, - OutputIterator oi) const - { - typedef std::pair Intersection_point; - typedef boost::variant - Intersection_result; + OutputIterator oi) const { + using Intersection_point = std::pair; + using Intersection_result = + boost::variant; const Kernel& kernel = m_traits; typename Kernel::Equal_2 equal = kernel.equal_2_object(); @@ -2473,8 +2498,7 @@ public: * \pre point lies in the underlying plane of xc. */ bool is_in_between(const Point_2& point, - const X_monotone_curve_2& xc) const - { + const X_monotone_curve_2& xc) const { const Kernel& kernel = m_traits; CGAL_precondition(m_traits.has_on(xc.normal(), point)); @@ -2523,9 +2547,9 @@ public: } protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2548,20 +2572,16 @@ public: template OutputIterator operator()(const X_monotone_curve_2& xc1, const X_monotone_curve_2& xc2, - OutputIterator oi) const - { + OutputIterator oi) const { // std::cout << "xc1: " << xc1 << std::endl // << "xc2: " << xc2 << std::endl; CGAL_precondition(!xc1.is_degenerate()); CGAL_precondition(!xc2.is_degenerate()); - typedef typename Kernel::Counterclockwise_in_between_2 - Counterclockwise_in_between_2; - typedef typename Kernel::Equal_3 Equal_3; - - typedef std::pair Intersection_point; - typedef boost::variant - Intersection_result; + using Equal_3 = typename Kernel::Equal_3; + using Intersection_point = std::pair; + using Intersection_result = + boost::variant; const Kernel& kernel = m_traits; @@ -2574,7 +2594,7 @@ public: if (equal_3(normal1, normal2) || equal_3(opposite_normal1, normal2)) { // The underlying planes are the same - Counterclockwise_in_between_2 ccib = kernel.counterclockwise_in_between_2_object(); + auto ccib = kernel.counterclockwise_in_between_2_object(); auto cib = m_traits.clockwise_in_between_2_object(); if (xc1.is_vertical()) { @@ -2662,9 +2682,9 @@ public: /*! A functor that tests whether two x-monotone arcs can be merged. */ class Are_mergeable_2 { - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2684,8 +2704,7 @@ public: * 2. share a common endpoint that is not on the identification arc */ bool operator()(const X_monotone_curve_2& xc1, - const X_monotone_curve_2& xc2) const - { + const X_monotone_curve_2& xc2) const { if (xc1.is_empty() || xc2.is_empty()) return true; if ((xc1.is_full() || xc1.is_meridian()) && (xc2.is_full() || xc2.is_meridian())) return false; @@ -2734,9 +2753,9 @@ public: /*! A functor that merges two x-monotone arcs into one */ class Merge_2 { protected: - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; - /*! The traits (in case it has state) */ + //! The traits (in case it has state) const Traits& m_traits; /*! Constructor @@ -2755,8 +2774,7 @@ public: */ void operator()(const X_monotone_curve_2& xc1, const X_monotone_curve_2& xc2, - X_monotone_curve_2& xc) const - { + X_monotone_curve_2& xc) const { CGAL_precondition (m_traits.are_mergeable_2_object()(xc1, xc2) == true); if (xc1.is_degenerate() || xc1.is_empty()) { @@ -2835,9 +2853,11 @@ public: /// \name Functor definitions for the landmarks point-location strategy. //@{ - typedef double Approximate_number_type; - typedef CGAL::Cartesian Approximate_kernel; - typedef Approximate_kernel::Point_2 Approximate_point_2; + using Approximate_number_type = double; + using Approximate_kernel = CGAL::Cartesian; + using Approximate_point_2 = Arr_extended_direction_3; + using Approximate_kernel_vector_3 = Approximate_kernel::Vector_3; + using Approximate_kernel_direction_3 = Approximate_kernel::Direction_3; class Approximate_2 { public: @@ -2849,21 +2869,103 @@ public: * approximation of p's y-coordinate (if i == 1). */ Approximate_number_type operator()(const Point_2& p, int i) const { - CGAL_precondition((i == 0) || (i == 1)); - return (i == 0) ? CGAL::to_double(p.x()) : CGAL::to_double(p.y()); + CGAL_precondition((i == 0) || (i == 1) || (i == 2)); + return (i == 0) ? CGAL::to_double(p.dx()) : + ((i == 1) ? CGAL::to_double(p.dy()) : CGAL::to_double(p.dz())); } /*! Obtain an approximation of a point. */ - Approximate_point_2 operator()(const Point_2& p) const - { return Approximate_point_2(operator()(p, 0), operator()(p, 1)); } + Approximate_point_2 operator()(const Point_2& p) const { + Approximate_kernel::Direction_3 dir(operator()(p, 0), operator()(p, 1), + operator()(p, 2)); + auto loc = static_cast(p.location()); + return Approximate_point_2(dir, loc); + } /*! Obtain an approximation of an \f$x\f$-monotone curve. */ template - OutputIterator operator()(const X_monotone_curve_2& /* xcv */, double /* error */, - OutputIterator /* oi */, bool /* l2r */ = true) const { - CGAL_error_msg("Not implemented yet!"); + OutputIterator operator()(const X_monotone_curve_2& xcv, + Approximate_number_type error, + OutputIterator oi, bool l2r = true) const { + auto s = xcv.source(); + auto t = xcv.target(); + auto n = xcv.normal(); + + // get the approximate points; + auto as = (*this)(s); + auto at = (*this)(t); + + // convert the approximate points to vectors with approximate-kernel + auto vs = approximate_vector_3(as); + auto vt = approximate_vector_3(at); + auto vn = approximate_vector_3(n); + + // normalize the vectors + auto normalize = [](auto& x) { x /= std::sqrt(x.squared_length()); }; + normalize(vs); + normalize(vt); + normalize(vn); + + // Define the spanning vectors of the coordinate system where we are + // going to make the approximation: + auto axis_x = vs; // x-axis will coincide with the vector from the + // origin to the normalized SOURCE-vector + auto axis_z = vn; // this will make sure that the orientation of the + // approximated curve is consistent with the curve + auto axis_y = CGAL::cross_product(axis_z, axis_x); + normalize(axis_y); + + // In this coordinate system the source has local coords (0,0), hence its + // initial angle with the X-axis is 0 degrees (radians) + // Compute the local coordinates and the angle it makes with the X-axis + Approximate_number_type theta; + if (xcv.is_full()) theta = 2.0 * CGAL_PI; + else { + auto ltx = CGAL::scalar_product(axis_x, vt); + auto lty = CGAL::scalar_product(axis_y, vt); + theta = std::atan2(lty, ltx); + if (theta < 0) + theta += 2.0 * CGAL_PI; + } + + // compute the number of divisions given the requested error + const Approximate_number_type R = 1.0; // radius is always 1 + Approximate_number_type dtheta = 2.0 * std::acos(1 - error / R); + int num_segs = std::ceil(theta / dtheta); + dtheta = theta / num_segs; + + // generate the points approximating the curve + const auto loc = Approximate_point_2::NO_BOUNDARY_LOC; + *oi++ = approximate_point_2(vs, loc); // source vector + for (int i = 1; i < num_segs; ++i) { + const Approximate_number_type angle = i * dtheta; + auto p = std::cos(angle) * axis_x + std::sin(angle) * axis_y; + *oi++ = approximate_point_2(p, loc); + } + *oi++ = approximate_point_2(vt, loc); // target vector + + return oi; + } + + private: + Approximate_kernel_vector_3 + approximate_vector_3(const Approximate_point_2& p) const + { return Approximate_kernel_vector_3(p.dx(), p.dy(), p.dz()); }; + + Approximate_kernel_vector_3 + approximate_vector_3(const Direction_3& d) const { + return Approximate_kernel_vector_3(CGAL::to_double(d.dx()), + CGAL::to_double(d.dy()), + CGAL::to_double(d.dz())); + }; + + Approximate_point_2 + approximate_point_2(const Approximate_kernel_vector_3& v, + const Approximate_point_2::Location_type loc) const { + Approximate_kernel_direction_3 d(v.x(), v.y(), v.z()); + return Approximate_point_2(d, loc); } }; @@ -2877,9 +2979,7 @@ public: class Compare_endpoints_xy_2 { public: - - /*! - * Compare the endpoints of an $x$-monotone curve lexicographically. + /*! Compare the endpoints of an $x$-monotone curve lexicographically. * (assuming the curve has a designated source and target points). * \param xc the curve. * \return SMALLER if the curve is directed right; @@ -2911,8 +3011,7 @@ public: #if 0 /*! Inserter for the spherical_arc class used by the traits-class */ template - friend OutputStream& operator<<(OutputStream& os, const Point_2& p) - { + friend OutputStream& operator<<(OutputStream& os, const Point_2& p) { CGAL::To_double todouble; os << static_cast(todouble(p.dx())) << ", " << static_cast(todouble(p.dy())) << ", " @@ -2923,101 +3022,20 @@ public: /*! Inserter for the spherical_arc class used by the traits-class */ template friend OutputStream& operator<<(OutputStream& os, - const X_monotone_curve_2& xc) - { + const X_monotone_curve_2& xc) { os << "(" << xc.left() << "), (" << xc.right() << ")"; return os; } /*! Extractor for the spherical_arc class used by the traits-class */ template - friend InputStream& operator>>(InputStream& is, X_monotone_curve_2& arc) - { + friend InputStream& operator>>(InputStream& is, X_monotone_curve_2& arc) { CGAL_error_msg("Not implemented yet!"); return is; } #endif }; -/*! Represent an extended 3D direction that is used in turn to represent a - * spherical-arc endpoint. The extended data consists of two flags that - * indicate whether the point is on the x and on a y boundaries, - * respectively. - */ -template -class Arr_extended_direction_3 : public Kernel::Direction_3 { -public: - typedef typename Kernel::FT FT; - typedef typename Kernel::Direction_3 Direction_3; - - /*! Enumeration of discontinuity type */ - enum Location_type { - NO_BOUNDARY_LOC = 0, - MIN_BOUNDARY_LOC, - MID_BOUNDARY_LOC, - MAX_BOUNDARY_LOC - }; - -private: - typedef typename Kernel::Direction_2 Direction_2; - - /*! The point discontinuity type */ - Location_type m_location; - - inline Sign x_sign(Direction_3 d) const { return CGAL::sign(d.dx()); } - - inline Sign y_sign(Direction_3 d) const { return CGAL::sign(d.dy()); } - - inline Sign z_sign(Direction_3 d) const { return CGAL::sign(d.dz()); } - -public: - /*! Default constructor */ - Arr_extended_direction_3() : - Direction_3(0, 0, 1), - m_location(MAX_BOUNDARY_LOC) - {} - - /*! Constructor */ - Arr_extended_direction_3(const Direction_3& dir, Location_type location) : - Direction_3(dir), - m_location(location) - {} - - /*! Copy constructor */ - Arr_extended_direction_3(const Arr_extended_direction_3& other) : - Direction_3(static_cast(other)) - { m_location = other.discontinuity_type(); } - - /*! Assignment operator */ - Arr_extended_direction_3& operator=(const Arr_extended_direction_3& other) - { - *(static_cast(this)) = static_cast(other); - m_location = other.discontinuity_type(); - return (*this); - } - - /*! Set the location of the point. - */ - void set_location(Location_type location) { m_location = location; } - - /*! Obtain the location of the point. - */ - Location_type location() const { return m_location; } - - /*! Obtain the discontinuity type of the point. - * \todo deprecate this one; use the above instead. - */ - Location_type discontinuity_type() const { return m_location; } - - bool is_no_boundary() const { return (m_location == NO_BOUNDARY_LOC); } - - bool is_min_boundary() const { return (m_location == MIN_BOUNDARY_LOC); } - - bool is_mid_boundary() const { return (m_location == MID_BOUNDARY_LOC); } - - bool is_max_boundary() const { return (m_location == MAX_BOUNDARY_LOC); } -}; - /*! A Representation of an x-monotone great circular arc embedded on a sphere, * as used by the Arr_geodesic_arc_on_sphere_traits_2 traits-class * An x-monotone great circular arc cannot cross the closed hemi-circle arc of @@ -3029,38 +3047,38 @@ public: template class Arr_x_monotone_geodesic_arc_on_sphere_3 { public: - typedef Kernel_ Kernel; - typedef typename Kernel::Direction_3 Direction_3; - typedef typename Kernel::Plane_3 Plane_3; - typedef typename Kernel::Vector_3 Vector_3; - typedef typename Kernel::Direction_2 Direction_2; + using Kernel = Kernel_; + using Direction_3 = typename Kernel::Direction_3; + using Plane_3 = typename Kernel::Plane_3; + using Vector_3 = typename Kernel::Vector_3; + using Direction_2 = typename Kernel::Direction_2; protected: // For some reason compilation under Windows fails without the qualifier - typedef CGAL::Arr_extended_direction_3 Arr_extended_direction_3; + using Arr_extended_direction_3 = CGAL::Arr_extended_direction_3; - /*! The source point of the arc. */ + //! The source point of the arc. Arr_extended_direction_3 m_source; - /*! The target point of the arc. */ + //! The target point of the arc. Arr_extended_direction_3 m_target; - /*! The direction of the plane that contains the arc. */ + //! The direction of the plane that contains the arc. Direction_3 m_normal; - /*! The arc is vertical. */ + //! The arc is vertical. bool m_is_vertical; - /*! Target (lexicographically) larger than source. */ + //! Target (lexicographically) larger than source. bool m_is_directed_right; - /*! The arc is a full circle. */ + //! The arc is a full circle. bool m_is_full; - /* The arc is degenerate - it consists of a single point. */ + //! The arc is degenerate - it consists of a single point. bool m_is_degenerate; - /*! The arc is empty. */ + //! The arc is empty. bool m_is_empty; inline Sign x_sign(Direction_3 d) const { return CGAL::sign(d.dx()); } @@ -3109,8 +3127,7 @@ public: * \param other the other arc */ Arr_x_monotone_geodesic_arc_on_sphere_3 - (const Arr_x_monotone_geodesic_arc_on_sphere_3& other) - { + (const Arr_x_monotone_geodesic_arc_on_sphere_3& other) { m_source = other.m_source; m_target = other.m_target; m_normal = other.m_normal; @@ -3123,8 +3140,7 @@ public: /*! Assignment operator */ Arr_x_monotone_geodesic_arc_on_sphere_3& operator= - (const Arr_x_monotone_geodesic_arc_on_sphere_3& other) - { + (const Arr_x_monotone_geodesic_arc_on_sphere_3& other) { m_source = other.m_source; m_target = other.m_target; m_normal = other.m_normal; @@ -3150,9 +3166,8 @@ public: * \param target the target point. * \pre the source and target cannot be equal. */ - void init() - { - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + void init() { + using Traits = Arr_geodesic_arc_on_sphere_traits_2; Kernel kernel; CGAL_precondition(!kernel.equal_3_object()(Direction_3(m_source), @@ -3241,8 +3256,7 @@ public: m_is_directed_right(z_sign(normal) == POSITIVE), m_is_full(true), m_is_degenerate(false), - m_is_empty(false) - { + m_is_empty(false) { CGAL_precondition(z_sign(normal) != ZERO); #if (CGAL_IDENTIFICATION_XY == CGAL_X_MINUS_1_Y_0) @@ -3250,8 +3264,8 @@ public: Direction_3(-(normal.dz()), 0, normal.dx()) : Direction_3(normal.dz(), 0, -(normal.dx())); #else - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; - typedef typename Kernel::FT FT; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; + using FT = typename Kernel::FT; const Direction_2& xy = Traits::identification_xy(); FT x = xy.dx(); @@ -3277,8 +3291,7 @@ public: m_is_directed_right(z_sign(normal) == POSITIVE), m_is_full(true), m_is_degenerate(false), - m_is_empty(false) - { + m_is_empty(false) { CGAL_precondition(has_on(point)); CGAL_precondition(z_sign(normal) != ZERO); #if !defined(CGAL_FULL_X_MONOTONE_GEODESIC_ARC_ON_SPHERE_IS_SUPPORTED) @@ -3303,8 +3316,7 @@ public: m_normal(normal), m_is_full(false), m_is_degenerate(false), - m_is_empty(false) - { + m_is_empty(false) { CGAL_precondition(has_on(source)); CGAL_precondition(has_on(target)); @@ -3414,8 +3426,7 @@ public: #if 0 /*! Create a bounding box for the spherical_arc */ - Bbox_2 bbox() const - { + Bbox_2 bbox() const { Kernel kernel; Segment_2 seg = kernel.construct_spherical_arc_2_object()(this->m_source, this->m_target); @@ -3424,8 +3435,7 @@ public: #endif /*! Flip the spherical_arc (swap it source and target) */ - Arr_x_monotone_geodesic_arc_on_sphere_3 opposite() const - { + Arr_x_monotone_geodesic_arc_on_sphere_3 opposite() const { Arr_x_monotone_geodesic_arc_on_sphere_3 opp; opp.m_source = this->m_target; opp.m_target = this->m_source; @@ -3444,8 +3454,7 @@ public: * \return true if dir is contained in plane; false otherwise. * \pre the plane contains the origin. */ - inline bool has_on(const Direction_3& dir) const - { + inline bool has_on(const Direction_3& dir) const { typename Kernel::FT dot = normal().vector() * dir.vector(); return CGAL::sign(dot) == ZERO; } @@ -3463,25 +3472,25 @@ template class Arr_geodesic_arc_on_sphere_3 : public Arr_x_monotone_geodesic_arc_on_sphere_3 { public: - typedef Kernel_ Kernel; + using Kernel = Kernel_; protected: - typedef Arr_x_monotone_geodesic_arc_on_sphere_3 Base; + using Base = Arr_x_monotone_geodesic_arc_on_sphere_3; public: - typedef typename Base::Plane_3 Plane_3; - typedef typename Base::Direction_3 Direction_3; - typedef typename Base::Direction_2 Direction_2; + using Plane_3 = typename Base::Plane_3; + using Direction_3 = typename Base::Direction_3; + using Direction_2 = typename Base::Direction_2; protected: // For some reason compilation under Windows fails without the qualifier - typedef CGAL::Arr_extended_direction_3 Arr_extended_direction_3; + using Arr_extended_direction_3 = CGAL::Arr_extended_direction_3; using Base::x_sign; using Base::y_sign; using Base::z_sign; - /*! Indicates whether the arc is x-monotone */ + //! Indicates whether the arc is x-monotone bool m_is_x_monotone; public: @@ -3537,8 +3546,7 @@ public: */ Arr_geodesic_arc_on_sphere_3(const Arr_extended_direction_3& source, const Arr_extended_direction_3& target, - const Direction_3& normal) - { + const Direction_3& normal) { Kernel kernel; this->set_source(source); @@ -3547,7 +3555,7 @@ public: this->set_is_degenerate(false); this->set_is_empty(false); - typedef Arr_geodesic_arc_on_sphere_traits_2 Traits; + using Traits = Arr_geodesic_arc_on_sphere_traits_2; CGAL_precondition(this->has_on(source)); CGAL_precondition(this->has_on(target)); @@ -3627,8 +3635,7 @@ public: Direction_2 s = project(source); Direction_2 t = project(target); const Direction_2& ny = Traits::neg_y_2(); - typename Kernel::Counterclockwise_in_between_2 ccib = - kernel.counterclockwise_in_between_2_object(); + auto ccib = kernel.counterclockwise_in_between_2_object(); set_is_x_monotone((plane_is_positive && !ccib(ny, s, t)) || (!plane_is_positive && !ccib(ny, t, s))); @@ -3644,8 +3651,7 @@ public: const Direction_2& d = Traits::identification_xy(); Direction_2 s = Traits::project_xy(source); Direction_2 t = Traits::project_xy(target); - typename Kernel::Counterclockwise_in_between_2 ccib = - kernel.counterclockwise_in_between_2_object(); + auto ccib = kernel.counterclockwise_in_between_2_object(); bool plane_is_positive = (z_sign(normal) == POSITIVE); set_is_x_monotone((plane_is_positive && !ccib(d, s, t)) || (!plane_is_positive && !ccib(d, t, s))); @@ -3654,8 +3660,7 @@ public: /*! Construct a full spherical_arc from a normal to a plane. * \param normal the normal to the plane containing the arc. */ - Arr_geodesic_arc_on_sphere_3(const Direction_3& normal) - { + Arr_geodesic_arc_on_sphere_3(const Direction_3& normal) { this->normal(normal); this->set_is_vertical(CGAL::sign(normal.dz()) == ZERO); this->set_is_directed_right(true); @@ -3679,8 +3684,7 @@ public: /*! Inserter for the spherical_arc class used by the traits-class */ template OutputStream& operator<<(OutputStream& os, - const Arr_extended_direction_3& ed) -{ + const Arr_extended_direction_3& ed) { #if defined(CGAL_ARR_GEODESIC_ARC_ON_SPHERE_DETAILS) os << "(" << ed.dx() << ", " << ed.dy() << ", " << ed.dz(); @@ -3703,8 +3707,7 @@ OutputStream& operator<<(OutputStream& os, template OutputStream& operator<<(OutputStream& os, - const Arr_x_monotone_geodesic_arc_on_sphere_3& arc) -{ + const Arr_x_monotone_geodesic_arc_on_sphere_3& arc) { #if defined(CGAL_ARR_GEODESIC_ARC_ON_SPHERE_DETAILS) os << "(" << "(" << arc.source() << "), (" << arc.target() << ")" @@ -3724,10 +3727,9 @@ operator<<(OutputStream& os, /*! Extractor for the spherical-arc point class used by the traits-class */ template InputStream& -operator>>(InputStream& is, Arr_extended_direction_3& point) -{ - typedef Kernel_ Kernel; - typedef Arr_extended_direction_3 Point; +operator>>(InputStream& is, Arr_extended_direction_3& point) { + using Kernel = Kernel_; + using Point = Arr_extended_direction_3; // CGAL_error_msg("Importing a geodesic point is not supported!"); typename Kernel::Direction_3 d; is >> d; @@ -3741,10 +3743,9 @@ operator>>(InputStream& is, Arr_extended_direction_3& point) template InputStream& operator>>(InputStream& is, - Arr_x_monotone_geodesic_arc_on_sphere_3& arc) -{ - typedef Kernel_ Kernel; - typedef Arr_extended_direction_3 Point; + Arr_x_monotone_geodesic_arc_on_sphere_3& arc) { + using Kernel = Kernel_; + using Point = Arr_extended_direction_3; // CGAL_error_msg("Importing a geodesic arc is not supported!\n"); From afa58a942661b42e7c2c432b286dbccb589ca33a Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Wed, 9 Aug 2023 17:46:35 +0300 Subject: [PATCH 36/94] Cleaned up --- .../Arrangement_2/Arrangement_zone_2_impl.h | 64 +++++++------------ 1 file changed, 24 insertions(+), 40 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index dfb8851479f..054724aa6e4 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -28,8 +28,7 @@ namespace CGAL { // template void Arrangement_zone_2:: -init_with_hint(const X_monotone_curve_2& cv, Pl_result_type obj) -{ +init_with_hint(const X_monotone_curve_2& cv, Pl_result_type obj) { #if defined(ARR_ZONE_VERBOSE) std::cout << "init_with_hint()" << std::endl; #endif @@ -80,8 +79,7 @@ init_with_hint(const X_monotone_curve_2& cv, Pl_result_type obj) // notifications for the visitor. // template -void Arrangement_zone_2::compute_zone() -{ +void Arrangement_zone_2::compute_zone() { #if defined(ARR_ZONE_VERBOSE) std::cout << "compute_zone()" << std::endl; #endif @@ -253,8 +251,7 @@ template bool Arrangement_zone_2:: do_overlap_impl(const X_monotone_curve_2& cv1, const X_monotone_curve_2& cv2, - const Point_2& p, Arr_not_all_sides_oblivious_tag) const -{ + const Point_2& p, Arr_not_all_sides_oblivious_tag) const { typename Traits_adaptor_2::Compare_y_at_x_right_2 cmp_right = m_geom_traits->compare_y_at_x_right_2_object(); @@ -307,8 +304,7 @@ do_overlap_impl(const X_monotone_curve_2& cv1, // template bool Arrangement_zone_2:: -_find_prev_around_vertex(Vertex_handle v, Halfedge_handle& he) -{ +_find_prev_around_vertex(Vertex_handle v, Halfedge_handle& he) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_find_prev_around_vertex(" << v->point() << ")" << std::endl; #endif @@ -393,8 +389,7 @@ typename Arrangement_zone_2::Halfedge_handle Arrangement_zone_2:: _direct_intersecting_edge_to_right(const X_monotone_curve_2& cv_ins, const Point_2& cv_left_pt, - Halfedge_handle query_he) -{ + Halfedge_handle query_he) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_direct_intersecting_edge_to_right() " << cv_left_pt << std::endl; @@ -446,8 +441,7 @@ template typename Arrangement_zone_2::Halfedge_handle Arrangement_zone_2:: _direct_intersecting_edge_to_left(const X_monotone_curve_2& cv_ins, - Halfedge_handle query_he) -{ + Halfedge_handle query_he) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_direct_intersecting_edge_to_left()" << std::endl; #endif @@ -544,8 +538,7 @@ typename Arrangement_zone_2::Optional_intersection Arrangement_zone_2:: _compute_next_intersection(Halfedge_handle he, bool skip_first_point, - Arr_parameter_space& intersection_location) -{ + Arr_parameter_space& intersection_location) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_compute_next_intersection(" << he->curve() << ", " << skip_first_point << ")" << std::endl; @@ -591,7 +584,8 @@ _compute_next_intersection(Halfedge_handle he, if (is_closed(*icv, ARR_MIN_END)) { // The curve has a valid left point - make sure it lies to the // right of m_left_pt. - valid_intersection = (compare_xy(ctr_min(*icv), m_left_pt) != SMALLER); + valid_intersection = + (compare_xy(ctr_min(*icv), m_left_pt) != SMALLER); } // In this case the overlap is not valid. else valid_intersection = false; @@ -670,8 +664,7 @@ _compute_next_intersection(Halfedge_handle he, // template void Arrangement_zone_2:: -_remove_next_intersection(Halfedge_handle he) -{ +_remove_next_intersection(Halfedge_handle he) { // Get a pointer to the curve associated with the halfedge. const X_monotone_curve_2* p_curve = &(he->curve()); @@ -691,8 +684,7 @@ _remove_next_intersection(Halfedge_handle he) template bool Arrangement_zone_2:: _is_to_left_impl(const Point_2& p, Halfedge_handle he, - Arr_not_all_sides_oblivious_tag) const -{ + Arr_not_all_sides_oblivious_tag) const { #if defined(ARR_ZONE_VERBOSE) std::cout << "_is_to_left_impl(" << p << "," << he->curve() << ")" << std::endl; @@ -723,13 +715,13 @@ _is_to_left_impl(const Point_2& p, Halfedge_handle he, } //----------------------------------------------------------------------------- -// Determine whether a given point lies completely to the right of a given curve. +// Determine whether a given point lies completely to the right of a given +// curve. // template bool Arrangement_zone_2:: _is_to_right_impl(const Point_2& p, Halfedge_handle he, - Arr_not_all_sides_oblivious_tag) const -{ + Arr_not_all_sides_oblivious_tag) const { #if defined(ARR_ZONE_VERBOSE) std::cout << "_is_to_right_impl(" << p << "," << he->curve() << ")" << std::endl; @@ -767,8 +759,7 @@ _is_to_right_impl(const Point_2& p, Halfedge_handle he, template void Arrangement_zone_2:: _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, - Arr_parameter_space& leftmost_location) -{ + Arr_parameter_space& leftmost_location) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_leftmost_intersection(" << he_curr->curve() << ", " << on_boundary << ")" << std::endl; @@ -880,8 +871,7 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, // template void Arrangement_zone_2:: -_leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) -{ +_leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_leftmost_intersection_with_face_boundary(" << on_boundary << ")" << std::endl; @@ -899,8 +889,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) // Traverse the face outer-boundaries; iterate through all outer CCBs. for (auto occb_it = face->outer_ccbs_begin(); - occb_it != face->outer_ccbs_end(); ++occb_it) - { + occb_it != face->outer_ccbs_end(); ++occb_it) { Ccb_halfedge_circulator he_first = *occb_it; Ccb_halfedge_circulator he_curr = he_first; do _leftmost_intersection(he_curr, on_boundary, leftmost_location); @@ -909,8 +898,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) // Traverse the face inner-boundaries; iterate through all inner CCBs (holes). for (auto iccb_it = face->inner_ccbs_begin(); - iccb_it != face->inner_ccbs_end(); ++iccb_it) - { + iccb_it != face->inner_ccbs_end(); ++iccb_it) { Ccb_halfedge_circulator he_first = *iccb_it; Ccb_halfedge_circulator he_curr = he_first; do _leftmost_intersection(he_curr, on_boundary, leftmost_location); @@ -921,17 +909,15 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) // Traverse the isolated vertices inside the face (if there exist any), and // check whether an isolated vertex lies on the curve. - typedef typename Arrangement_2::Isolated_vertex_iterator - Isolated_vertex_iterator; - for (Isolated_vertex_iterator iv_it = face->isolated_vertices_begin(); - iv_it != face->isolated_vertices_end(); ++iv_it) - { + for (auto iv_it = face->isolated_vertices_begin(); + iv_it != face->isolated_vertices_end(); ++iv_it) { // If the isolated vertex is not in the x-range of our curve, disregard it. if (! is_in_x_range(m_cv, iv_it->point())) continue; // If we already have an intersection point, compare it to the current // isolated vertex, in order to filter unnecessary computations. - if (m_found_intersect && compare_xy(iv_it->point(), m_intersect_p) == LARGER) + if (m_found_intersect && + (compare_xy(iv_it->point(), m_intersect_p) == LARGER)) continue; // In case the isolated vertex lies on the curve, update the intersection @@ -960,8 +946,7 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) // template bool Arrangement_zone_2:: -_zone_in_face(Face_handle face, bool on_boundary) -{ +_zone_in_face(Face_handle face, bool on_boundary) { #if defined(ARR_ZONE_VERBOSE) std::cout << "_zone_in_face(" << on_boundary << ")" << std::endl; #endif @@ -1190,8 +1175,7 @@ _zone_in_face(Face_handle face, bool on_boundary) // curve currently associated with m_intersect_he. // template -bool Arrangement_zone_2::_zone_in_overlap() -{ +bool Arrangement_zone_2::_zone_in_overlap() { #if defined(ARR_ZONE_VERBOSE) std::cout << "_zone_in_overlap()" << std::endl; #endif From ada39fdfaedc8847ea689b54dbc382c145692abb Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Wed, 9 Aug 2023 19:10:16 +0300 Subject: [PATCH 37/94] Cleaned up and dispatched is_intersection_valid_impl() properly --- .../Arrangement_2/Arrangement_zone_2_impl.h | 50 +++++++-- .../include/CGAL/Arrangement_zone_2.h | 104 +++++++++--------- 2 files changed, 96 insertions(+), 58 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index 054724aa6e4..6903b44429a 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -504,14 +504,46 @@ template bool Arrangement_zone_2:: is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& /* intersection_location */, - Arr_all_sides_oblivious_tag) const + Arr_boundary_cond_tag) const { return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); } template bool Arrangement_zone_2:: is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_not_all_sides_oblivious_tag) const { + Arr_has_identified_side_tag) const { + auto equal = m_geom_traits->equal_2_object(); + auto is_on_y_ident = m_geom_traits->is_on_y_identification_2_object(); + // Case 1: the curve lies on the y-identification + if (is_on_y_ident(m_cv)) { + if (equal(ip, m_left_pt)) return false; + // We set the location to be on the left as a convention + intersection_location = ARR_LEFT_BOUNDARY; + return true; + } + + // Case 2: The left-end lies on the left boundary + // (It cannot lie on the right boundary) + // If the intersection point is not equal to the left-end, it must lie to + // its right; thus valid. + if (m_left_on_boundary) return ! equal(ip, m_left_pt); + + // Case 3: The right-end lies on the right boundary + if (m_right_on_boundary && equal(ip, m_right_pt)) { + intersection_location = ARR_RIGHT_BOUNDARY; + return true; + } + + // We have a simple intersection point; + // make sure it lies to the right of m_left_pt. + return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); +} + +template +bool Arrangement_zone_2:: +is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& intersection_location, + Arr_has_open_side_tag) const { auto equal = m_geom_traits->equal_2_object(); if (m_left_on_boundary) { // The left-end lies on the left boundary. If the intersection point is not @@ -699,12 +731,12 @@ _is_to_left_impl(const Point_2& p, Halfedge_handle he, if (ps_x_min == ARR_LEFT_BOUNDARY) return false; auto ps_in_y = m_geom_traits->parameter_space_in_y_2_object(); - auto ps_y = ps_in_y(he->curve(), ARR_MIN_END); - if (ps_y != ARR_INTERIOR) { + auto ps_y_min = ps_in_y(he->curve(), ARR_MIN_END); + if (ps_y_min != ARR_INTERIOR) { // Check if p is to the left of the minimal curve-end: auto cmp_x = m_geom_traits->compare_x_point_curve_end_2_object(); const auto res = cmp_x(p, he->curve(), ARR_MIN_END); - return ((res == SMALLER) || (res == EQUAL && ps_y == ARR_TOP_BOUNDARY)); + return ((res == SMALLER) || (res == EQUAL && ps_y_min == ARR_TOP_BOUNDARY)); } // In case the minimal curve-end does not have boundary conditions, simply @@ -738,12 +770,12 @@ _is_to_right_impl(const Point_2& p, Halfedge_handle he, if (ps_x_max == ARR_LEFT_BOUNDARY) return true; auto ps_in_y = m_geom_traits->parameter_space_in_y_2_object(); - auto ps_y = ps_in_y(he->curve(), ARR_MAX_END); - if (ps_y != ARR_INTERIOR) { + auto ps_y_max = ps_in_y(he->curve(), ARR_MAX_END); + if (ps_y_max != ARR_INTERIOR) { // Check if p is to the right of the maximal curve-end: auto cmp_x = m_geom_traits->compare_x_point_curve_end_2_object(); auto res = cmp_x(p, he->curve(), ARR_MAX_END); - return ((res == LARGER) || (res == EQUAL && ps_y == ARR_BOTTOM_BOUNDARY)); + return ((res == LARGER) || (res == EQUAL && ps_y_max == ARR_BOTTOM_BOUNDARY)); } // In case the maximal curve-end does not have boundary conditions, simply @@ -783,7 +815,7 @@ _leftmost_intersection(Ccb_halfedge_circulator he_curr, bool on_boundary, // entirely to the right of m_intersect_p, its intersection with m_cv (if any) // cannot lie to the left of this point. We therefore do not need to compute // this intersection. - if (m_found_intersect && (leftmost_location != ARR_RIGHT_BOUNDARY) && + if (m_found_intersect && (leftmost_location == ARR_INTERIOR) && _is_to_left(m_intersect_p, he_curr)) return; diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h index 71b5e4a7409..5d22e410109 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h @@ -55,65 +55,70 @@ namespace CGAL { template class Arrangement_zone_2 { public: - typedef Arrangement_ Arrangement_2; - typedef typename Arrangement_2::Geometry_traits_2 Geometry_traits_2; - typedef typename Arrangement_2::Topology_traits Topology_traits; + using Arrangement_2 = Arrangement_; + using Geometry_traits_2 = typename Arrangement_2::Geometry_traits_2; + using Topology_traits = typename Arrangement_2::Topology_traits; protected: - typedef Arr_traits_adaptor_2 Traits_adaptor_2; + using Traits_adaptor_2 = Arr_traits_adaptor_2; - typedef typename Traits_adaptor_2::Left_side_category Left_side_category; - typedef typename Traits_adaptor_2::Bottom_side_category Bottom_side_category; - typedef typename Traits_adaptor_2::Top_side_category Top_side_category; - typedef typename Traits_adaptor_2::Right_side_category Right_side_category; + using Left_side_category = typename Traits_adaptor_2::Left_side_category; + using Bottom_side_category = typename Traits_adaptor_2::Bottom_side_category; + using Top_side_category = typename Traits_adaptor_2::Top_side_category; + using Right_side_category = typename Traits_adaptor_2::Right_side_category; static_assert(Arr_sane_identified_tagging::value); + // Categories for dispatching + using Are_all_sides_oblivious_category = + typename Arr_all_sides_oblivious_category::result; + + using Left_or_right_sides_category = + typename Arr_two_sides_category::result; public: - typedef ZoneVisitor_ Visitor; + using Visitor = ZoneVisitor_; - typedef typename Arrangement_2::Vertex_handle Vertex_handle; - typedef typename Arrangement_2::Halfedge_handle Halfedge_handle; - typedef typename Arrangement_2::Face_handle Face_handle; + using Vertex_handle = typename Arrangement_2::Vertex_handle; + using Halfedge_handle = typename Arrangement_2::Halfedge_handle; + using Face_handle = typename Arrangement_2::Face_handle; - typedef std::pair Visitor_result; + using Visitor_result = std::pair; - typedef typename Geometry_traits_2::Point_2 Point_2; - typedef typename Geometry_traits_2::X_monotone_curve_2 X_monotone_curve_2; - typedef typename Geometry_traits_2::Multiplicity Multiplicity; + using Point_2 = typename Geometry_traits_2::Point_2; + using X_monotone_curve_2 = typename Geometry_traits_2::X_monotone_curve_2; + using Multiplicity = typename Geometry_traits_2::Multiplicity; protected: - typedef typename Arr_all_sides_oblivious_category::result - Are_all_sides_oblivious_category; + // General types + using Vertex_const_handle = typename Arrangement_2::Vertex_const_handle; + using Halfedge_const_handle = typename Arrangement_2::Halfedge_const_handle; + using Face_const_handle = typename Arrangement_2::Face_const_handle; - typedef typename Arrangement_2::Vertex_const_handle Vertex_const_handle; - typedef typename Arrangement_2::Halfedge_const_handle Halfedge_const_handle; - typedef typename Arrangement_2::Face_const_handle Face_const_handle; - - typedef typename Arrangement_2::Ccb_halfedge_circulator - Ccb_halfedge_circulator; + using Ccb_halfedge_circulator = + typename Arrangement_2::Ccb_halfedge_circulator; // Types used for caching intersection points: - typedef std::pair Intersection_point; - typedef boost::variant - Intersection_result; - typedef boost::optional Optional_intersection; - typedef std::list Intersect_list; - typedef std::map - Intersect_map; - typedef typename Intersect_map::iterator Intersect_map_iterator; + using Intersection_point = std::pair; + using Intersection_result = + boost::variant; + using Optional_intersection = boost::optional; + using Intersect_list = std::list; + using Intersect_map = + std::map; + using Intersect_map_iterator = typename Intersect_map::iterator; - typedef std::set Curves_set; - typedef typename Curves_set::iterator Curves_set_iterator; + using Curves_set = std::set; + using Curves_set_iterator = typename Curves_set::iterator; - typedef Arr_point_location_result Pl_result; - typedef typename Pl_result::Type Pl_result_type; + using Pl_result = Arr_point_location_result; + using Pl_result_type = typename Pl_result::Type; // Data members: Arrangement_2& m_arr; // The associated arrangement. @@ -193,8 +198,7 @@ public: * \param pl A point-location object associated with the arrangement. */ template - void init(const X_monotone_curve_2& cv, const PointLocation& pl) - { + void init(const X_monotone_curve_2& cv, const PointLocation& pl) { // Set the curve and check whether its left end has boundary conditions. m_cv = cv; @@ -267,8 +271,7 @@ private: */ bool do_overlap_impl(const X_monotone_curve_2& cv1, const X_monotone_curve_2& cv2, - const Point_2& p, Arr_all_sides_oblivious_tag) const - { + const Point_2& p, Arr_all_sides_oblivious_tag) const { return m_geom_traits->compare_y_at_x_right_2_object()(cv1, cv2, p) == EQUAL; } @@ -381,8 +384,7 @@ private: { return (_is_to_right_impl(p, he, Are_all_sides_oblivious_category())); } bool _is_to_right_impl(const Point_2& p, Halfedge_handle he, - Arr_all_sides_oblivious_tag) const - { + Arr_all_sides_oblivious_tag) const { return (((he->direction() == ARR_LEFT_TO_RIGHT) && m_geom_traits->compare_xy_2_object()(p, he->target()->point()) == LARGER) || @@ -400,16 +402,20 @@ private: bool is_intersection_valid(const Point_2& ip, Arr_parameter_space& intersection_location) const { return is_intersection_valid_impl(ip, intersection_location, - Are_all_sides_oblivious_category()); + Left_or_right_sides_category()); } bool is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_all_sides_oblivious_tag) const; + Arr_boundary_cond_tag) const; bool is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_not_all_sides_oblivious_tag) const; + Arr_has_identified_side_tag) const; + + bool is_intersection_valid_impl(const Point_2& ip, + Arr_parameter_space& intersection_location, + Arr_has_open_side_tag) const; /*! Compute the (lexicographically) leftmost intersection of the query * curve with a given halfedge on the boundary of a face in the arrangement. From 0762a3040051bc0eb4fa611e20e1cfd57302321f Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Thu, 10 Aug 2023 21:38:52 +0300 Subject: [PATCH 38/94] Fixed is_intersection_valid_impl() and added test case --- .../Arrangement_2/Arrangement_zone_2_impl.h | 11 ++++++++--- .../include/CGAL/Arrangement_zone_2.h | 4 ++-- .../geodesic_arcs_on_sphere/test40.txt | 17 +++++++++++++++++ ...est_construction.geodesic_arcs_on_sphere.cmd | 1 + 4 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 Arrangement_on_surface_2/test/Arrangement_on_surface_2/data/test_construction/geodesic_arcs_on_sphere/test40.txt diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index 6903b44429a..222f869444a 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -499,14 +499,15 @@ _direct_intersecting_edge_to_left(const X_monotone_curve_2& cv_ins, } } -//----------------------------------------------------------------------------- +//! Implementation for no boundary conditions. template bool Arrangement_zone_2:: is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& /* intersection_location */, - Arr_boundary_cond_tag) const + Arr_all_sides_oblivious_tag) const { return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); } +//! Implementation for left and right identified boundaries. template bool Arrangement_zone_2:: is_intersection_valid_impl(const Point_2& ip, @@ -539,11 +540,15 @@ is_intersection_valid_impl(const Point_2& ip, return (m_geom_traits->compare_xy_2_object()(ip, m_left_pt) == LARGER); } +/*! Implementation for all the rest. + * It would be better to split into the various cases, which is the cartesian + * product of (contructed, closed, open) X (contructed, closed, open) + */ template bool Arrangement_zone_2:: is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_has_open_side_tag) const { + Arr_boundary_cond_tag) const { auto equal = m_geom_traits->equal_2_object(); if (m_left_on_boundary) { // The left-end lies on the left boundary. If the intersection point is not diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h index 5d22e410109..2a5db1727c3 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_zone_2.h @@ -407,7 +407,7 @@ private: bool is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_boundary_cond_tag) const; + Arr_all_sides_oblivious_tag) const; bool is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, @@ -415,7 +415,7 @@ private: bool is_intersection_valid_impl(const Point_2& ip, Arr_parameter_space& intersection_location, - Arr_has_open_side_tag) const; + Arr_boundary_cond_tag) const; /*! Compute the (lexicographically) leftmost intersection of the query * curve with a given halfedge on the boundary of a face in the arrangement. diff --git a/Arrangement_on_surface_2/test/Arrangement_on_surface_2/data/test_construction/geodesic_arcs_on_sphere/test40.txt b/Arrangement_on_surface_2/test/Arrangement_on_surface_2/data/test_construction/geodesic_arcs_on_sphere/test40.txt new file mode 100644 index 00000000000..adccf6ecad9 --- /dev/null +++ b/Arrangement_on_surface_2/test/Arrangement_on_surface_2/data/test_construction/geodesic_arcs_on_sphere/test40.txt @@ -0,0 +1,17 @@ +5 +0 -1 0 0 0 -1 0 +0 0 -1 0 0 0 -1 +0 0 0 -1 0 1 0 +0 0 1 0 -1 0 0 +0 0 0 -1 -1 0 0 +0 +4 5 3 +0 0 -1 +-1 0 0 +0 -1 0 +0 1 0 +0 0 0 -1 -1 0 0 1 +0 -1 0 0 0 -1 0 1 +0 0 -1 0 0 0 -1 1 +0 0 0 -1 0 1 0 1 +0 0 1 0 -1 0 0 1 diff --git a/Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.geodesic_arcs_on_sphere.cmd b/Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.geodesic_arcs_on_sphere.cmd index 547aa518864..d995644a095 100644 --- a/Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.geodesic_arcs_on_sphere.cmd +++ b/Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.geodesic_arcs_on_sphere.cmd @@ -37,3 +37,4 @@ data/test_construction/geodesic_arcs_on_sphere/test36.txt data/test_construction/geodesic_arcs_on_sphere/test37.txt data/test_construction/geodesic_arcs_on_sphere/test38.txt data/test_construction/geodesic_arcs_on_sphere/test39.txt +data/test_construction/geodesic_arcs_on_sphere/test40.txt From 0ce82c0bd5a389b92f9ef1d9f6fea0544fa97442 Mon Sep 17 00:00:00 2001 From: albert-github Date: Sun, 13 Aug 2023 18:22:07 +0200 Subject: [PATCH 39/94] Better showing of `#include` Getting a better (and consistent) output for the include file to be used with some functions. Normally `#include` are sown as in a typewrite font, but the `#include` in these cases were shown in a code block way. --- .../PackageDescription.txt | 4 +- .../PackageDescription.txt | 4 +- .../PackageDescription.txt | 8 +-- Nef_3/doc/Nef_3/PackageDescription.txt | 4 +- .../PackageDescription.txt | 4 +- .../doc/Point_set_3/PackageDescription.txt | 4 +- Polygon/doc/Polygon/PackageDescription.txt | 8 +-- .../doc/Polyhedron/PackageDescription.txt | 4 +- .../doc/Surface_mesh/PackageDescription.txt | 4 +- .../PackageDescription.txt | 4 +- .../Triangulation_2/PackageDescription.txt | 4 +- .../Triangulation_3/PackageDescription.txt | 4 +- .../Voronoi_diagram_2/PackageDescription.txt | 4 +- Weights/doc/Weights/PackageDescription.txt | 72 +++++-------------- 14 files changed, 33 insertions(+), 99 deletions(-) diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt index 04ce3c47c28..a23221fc04f 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt @@ -47,9 +47,7 @@ namespace ArrTraits {} /// \ingroup PkgArrangementOnSurface2Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgArrangementOnSurface2Draw Drawing /// \ingroup PkgArrangementOnSurface2Ref diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt b/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt index 7c3b7b13e71..3050f0a5654 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt @@ -7,9 +7,7 @@ namespace ArrDirectionalTraits {} /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPolygonSet2 Draw a 2D Polygon Set /// \ingroup PkgBooleanSetOperations2Ref diff --git a/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt b/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt index d8cc1ad2fbd..03264451c0c 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt +++ b/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt @@ -12,17 +12,13 @@ /// \ingroup PkgLinearCellComplexRef /*! High-level operations. - \code - #include - \endcode + `#include ` */ /// \defgroup PkgLinearCellComplexOperations Operations for Linear Cell Complex /// \ingroup PkgLinearCellComplexRef /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawLinearCellComplex Draw a Linear Cell Complex /// \ingroup PkgLinearCellComplexRef diff --git a/Nef_3/doc/Nef_3/PackageDescription.txt b/Nef_3/doc/Nef_3/PackageDescription.txt index 7edd3f45d4b..db62abd9bf7 100644 --- a/Nef_3/doc/Nef_3/PackageDescription.txt +++ b/Nef_3/doc/Nef_3/PackageDescription.txt @@ -4,9 +4,7 @@ /// \ingroup PkgNef3Ref /*! Draw. - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawNef3 Draw a Nef Polyhedron /// \ingroup PkgNef3Ref diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt index dcffaea8da8..767fc2b01e0 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt @@ -16,9 +16,7 @@ /// \ingroup PkgPeriodic2Triangulation2Ref /*! Draw. - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPeriodic2Triangulation2 Draw a 2D Periodic Triangulation /// \ingroup PkgPeriodic2Triangulation2Ref diff --git a/Point_set_3/doc/Point_set_3/PackageDescription.txt b/Point_set_3/doc/Point_set_3/PackageDescription.txt index 271b13b4634..c6d433e20bf 100644 --- a/Point_set_3/doc/Point_set_3/PackageDescription.txt +++ b/Point_set_3/doc/Point_set_3/PackageDescription.txt @@ -1,9 +1,7 @@ /// \defgroup PkgPointSet3Ref 3D Point Set Reference /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPointSet3D Draw a 3D Point Set /// \ingroup PkgPointSet3Ref diff --git a/Polygon/doc/Polygon/PackageDescription.txt b/Polygon/doc/Polygon/PackageDescription.txt index 1d48e74493c..fd7cd1f7e0c 100644 --- a/Polygon/doc/Polygon/PackageDescription.txt +++ b/Polygon/doc/Polygon/PackageDescription.txt @@ -7,17 +7,13 @@ /// \ingroup PkgPolygon2Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPolygon2 Draw a 2D Polygon /// \ingroup PkgPolygon2Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPolygonWithHoles2 Draw a 2D Polygon with Holes /// \ingroup PkgPolygon2Ref diff --git a/Polyhedron/doc/Polyhedron/PackageDescription.txt b/Polyhedron/doc/Polyhedron/PackageDescription.txt index 827683c7918..12ee7940d94 100644 --- a/Polyhedron/doc/Polyhedron/PackageDescription.txt +++ b/Polyhedron/doc/Polyhedron/PackageDescription.txt @@ -6,9 +6,7 @@ /// \ingroup PkgPolyhedronRef /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawPolyhedron Draw a Polyhedron 3 /// \ingroup PkgPolyhedronRef diff --git a/Surface_mesh/doc/Surface_mesh/PackageDescription.txt b/Surface_mesh/doc/Surface_mesh/PackageDescription.txt index 974c86b9f54..4278f42d86c 100644 --- a/Surface_mesh/doc/Surface_mesh/PackageDescription.txt +++ b/Surface_mesh/doc/Surface_mesh/PackageDescription.txt @@ -1,9 +1,7 @@ /// \defgroup PkgSurface_mesh Surface Mesh Reference /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawSurfaceMesh Draw a Surface Mesh /// \ingroup PkgSurface_mesh diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt b/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt index 40828383894..7087216cd1a 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt @@ -7,9 +7,7 @@ /// \ingroup PkgSurfaceMeshTopologyRef /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawFaceGraphWithPaths Draw a Mesh with Paths /// \ingroup PkgSurfaceMeshTopologyRef diff --git a/Triangulation_2/doc/Triangulation_2/PackageDescription.txt b/Triangulation_2/doc/Triangulation_2/PackageDescription.txt index 65b8c9137e4..f9e1d3a2c04 100644 --- a/Triangulation_2/doc/Triangulation_2/PackageDescription.txt +++ b/Triangulation_2/doc/Triangulation_2/PackageDescription.txt @@ -14,9 +14,7 @@ /// \ingroup PkgTriangulation2Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawTriangulation2 Draw a Triangulation 2 /// \ingroup PkgTriangulation2Ref diff --git a/Triangulation_3/doc/Triangulation_3/PackageDescription.txt b/Triangulation_3/doc/Triangulation_3/PackageDescription.txt index 6e12268a179..b1bbaf9f3ac 100644 --- a/Triangulation_3/doc/Triangulation_3/PackageDescription.txt +++ b/Triangulation_3/doc/Triangulation_3/PackageDescription.txt @@ -13,9 +13,7 @@ /// \ingroup PkgTriangulation3Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawTriangulation3 Draw a Triangulation 3 /// \ingroup PkgTriangulation3Ref diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt b/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt index d888fa4473a..dc6ca27d40a 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt @@ -13,9 +13,7 @@ /// \ingroup PkgVoronoiDiagram2Ref /*! - \code - #include - \endcode + `#include ` */ /// \defgroup PkgDrawVoronoiDiagram2 Draw a 2D Voronoi Diagram /// \ingroup PkgVoronoiDiagram2Ref diff --git a/Weights/doc/Weights/PackageDescription.txt b/Weights/doc/Weights/PackageDescription.txt index b59f3e06d68..eb5f9bf451c 100644 --- a/Weights/doc/Weights/PackageDescription.txt +++ b/Weights/doc/Weights/PackageDescription.txt @@ -19,9 +19,7 @@ Models and functions that can be used to compute weights which have a simple ana \defgroup PkgWeightsRefUniformWeights Uniform Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is always equal to 1. @@ -35,9 +33,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefShepardWeights Shepard Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \frac{1}{d^a}\f$ @@ -65,9 +61,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefInverseDistanceWeights Inverse Distance Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \frac{1}{d}\f$ @@ -96,9 +90,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefThreePointFamilyWeights Three Point Family Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \frac{d_2^a A_0 - d^a B + d_0^a A_2}{A_0 A_2}\f$ @@ -137,9 +129,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefWachspressWeights Wachspress Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \frac{C}{A_0 A_2}\f$ @@ -170,9 +160,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefAuthalicWeights Authalic Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = 2 \frac{\cot\beta + \cot\gamma}{d^2}\f$ @@ -202,9 +190,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefMeanValueWeights Mean Value Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \pm 2 \sqrt{\frac{2 (d_0 d_2 - D)}{(d d_0 + D_0)(d d_2 + D_2)}}\f$ @@ -241,9 +227,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefTangentWeights Tangent Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = 2 \frac{t_1 + t_2}{d}\f$, where @@ -278,9 +262,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefDiscreteHarmonicWeights Discrete Harmonic Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = \frac{d_2^2 A_0 - d^2 B + d_0^2 A_2}{A_0 A_2}\f$ @@ -311,9 +293,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefCotangentWeights Cotangent Weight \ingroup PkgWeightsRefAnalytic -\verbatim -#include -\endverbatim +`#include ` This weight is computed as \f$w = 2 (\cot\beta + \cot\gamma)\f$ @@ -348,9 +328,7 @@ to polygons. These weights are then normalized in order to obtain barycentric co \defgroup PkgWeightsRefBarycentricWachspressWeights Wachspress Weights \ingroup PkgWeightsRefBarycentric -\verbatim -#include -\endverbatim +`#include ` Wachspress weights which can be computed for a query point with respect to the vertices of a strictly convex polygon. @@ -361,9 +339,7 @@ vertices of a strictly convex polygon. \defgroup PkgWeightsRefBarycentricMeanValueWeights Mean Value Weights \ingroup PkgWeightsRefBarycentric -\verbatim -#include -\endverbatim +`#include ` Mean value weights which can be computed for a query point with respect to the vertices of a simple polygon. @@ -374,9 +350,7 @@ vertices of a simple polygon. \defgroup PkgWeightsRefBarycentricDiscreteHarmonicWeights Discrete Harmonic Weights \ingroup PkgWeightsRefBarycentric -\verbatim -#include -\endverbatim +`#include ` Discrete Harmonic weights which can be computed for a query point with respect to the vertices of a strictly convex polygon. @@ -394,9 +368,7 @@ used to balance other weights. \defgroup PkgWeightsRefUniformRegionWeights Uniform Region Weight \ingroup PkgWeightsRefRegions -\verbatim -#include -\endverbatim +`#include ` This weight is always equal to 1. @@ -410,9 +382,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefTriangularRegionWeights Triangular Region Weight \ingroup PkgWeightsRefRegions -\verbatim -#include -\endverbatim +`#include ` This weight is the area of the shaded region in the figure below. The region is the triangle `[p, q, r]`. @@ -431,9 +401,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefBarycentricRegionWeights Barycentric Region Weight \ingroup PkgWeightsRefRegions -\verbatim -#include -\endverbatim +`#include ` This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the barycenter of @@ -453,9 +421,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefVoronoiRegionWeights Voronoi Region Weight \ingroup PkgWeightsRefRegions -\verbatim -#include -\endverbatim +`#include ` This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the circumcenter of @@ -477,9 +443,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefMixedVoronoiRegionWeights Mixed Voronoi Region Weight \ingroup PkgWeightsRefRegions -\verbatim -#include -\endverbatim +`#include ` This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the circumcenter of From 5cc58a4080c6b80d604057871c48df5b80e3d372 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Thu, 17 Aug 2023 15:02:48 +0200 Subject: [PATCH 40/94] don't do collinear test for a triangle to be collapsed --- .../CGAL/Polygon_mesh_processing/internal/Snapping/snap.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Snapping/snap.h b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Snapping/snap.h index b7f158d6814..d03168bbef7 100644 --- a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Snapping/snap.h +++ b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Snapping/snap.h @@ -134,6 +134,7 @@ void simplify_range(HalfedgeRange& halfedge_range, { const halfedge_descriptor prev_h = prev(h, tm); const halfedge_descriptor next_h = next(h, tm); + const halfedge_descriptor prev_oh = prev(opposite(h, tm), tm); // check that the border has at least 4 edges not to create degenerate volumes if(border_size(h, tm) >= 4) @@ -156,7 +157,7 @@ void simplify_range(HalfedgeRange& halfedge_range, bool do_collapse = true; for(halfedge_descriptor he : halfedges_around_target(h, tm)) { - if(he != h && + if(he != prev_oh && // ignore the triangle incident to h that will disappear !is_border(he, tm) && collinear(get(vpm, source(he, tm)), new_p, get(vpm, target(next(he,tm),tm)))) { From 7b00717eabbe10265204ad6261a364064dc0055b Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Fri, 18 Aug 2023 12:49:32 +0300 Subject: [PATCH 41/94] Fixed comment --- .../include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h index e3a934889bc..ddf3688c48d 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h @@ -95,11 +95,11 @@ public: return (*this); } - /*! Set the location of the point. + /*! Set the location type of the point. */ void set_location(Location_type location) { m_location = location; } - /*! Obtain the location of the point. + /*! Obtain the location type of the point. */ Location_type location() const { return m_location; } From de459faa76881bd151204fb1cedb16324f4f94ed Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Fri, 18 Aug 2023 13:35:00 +0300 Subject: [PATCH 42/94] Fixed the Approximate_2::operator() that returns a sequence of points that approximate a curve; in particular, respected the l2r parameter. --- .../Arr_geodesic_arc_on_sphere_traits_2.h | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h index ddf3688c48d..3dde86da5a9 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arr_geodesic_arc_on_sphere_traits_2.h @@ -2889,18 +2889,31 @@ public: OutputIterator operator()(const X_monotone_curve_2& xcv, Approximate_number_type error, OutputIterator oi, bool l2r = true) const { - auto s = xcv.source(); - auto t = xcv.target(); - auto n = xcv.normal(); + const auto& s = xcv.source(); + const auto& t = xcv.target(); + const auto& n = xcv.normal(); + const auto dx = CGAL::to_double(n.dx()); + const auto dy = CGAL::to_double(n.dy()); + const auto dz = CGAL::to_double(n.dz()); - // get the approximate points; - auto as = (*this)(s); - auto at = (*this)(t); + Approximate_point_2 as, at; + Approximate_kernel_vector_3 vn; + if (xcv.is_directed_right() == l2r) { + // Get the approximate points + as = (*this)(s); + at = (*this)(t); + vn = Approximate_kernel_vector_3(dx, dy, dz); + } + else { + // Get the approximate points + as = (*this)(t); + at = (*this)(s); + vn = Approximate_kernel_vector_3(-dx, -dy, -dz); + } // convert the approximate points to vectors with approximate-kernel auto vs = approximate_vector_3(as); auto vt = approximate_vector_3(at); - auto vn = approximate_vector_3(n); // normalize the vectors auto normalize = [](auto& x) { x /= std::sqrt(x.squared_length()); }; From 51fc8aa18d314194a8cf0c6b3ee5aff18aed2c09 Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Fri, 18 Aug 2023 13:38:34 +0300 Subject: [PATCH 43/94] Removed unused variable --- .../include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index 222f869444a..7a824ab974a 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -581,7 +581,6 @@ _compute_next_intersection(Halfedge_handle he, << skip_first_point << ")" << std::endl; #endif - auto equal = m_geom_traits->equal_2_object(); auto compare_xy = m_geom_traits->compare_xy_2_object(); auto ctr_min = m_geom_traits->construct_min_vertex_2_object(); auto is_closed = m_geom_traits->is_closed_2_object(); From 3b84bd05f86e4003804b3b5b59858f8ba02ceadc Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Fri, 18 Aug 2023 13:45:53 +0300 Subject: [PATCH 44/94] Reported the fix in PR #7644 --- Installation/CHANGES.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Installation/CHANGES.md b/Installation/CHANGES.md index bedbfc89832..a0e667f0328 100644 --- a/Installation/CHANGES.md +++ b/Installation/CHANGES.md @@ -11,6 +11,9 @@ Release date: October 2023 - **Breaking change**: C++17 is now required - Support for Visual `C++` 14.0 (Visual studio 2015) is dropped. +### [2D Arrangements](https://doc.cgal.org/6.0/Manual/packages.html#PkgArrangementOnSurface2) +- Fixed a bug in the zone construction code applied to arrangements of geodesic arcs on a sphere, + when inserting an arc that lies on the identification curve. [Release 5.6](https://github.com/CGAL/cgal/releases/tag/v5.6) ----------- From b48ef206d962eb15beb8392faaa3f3e3ef78b883 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 09:11:09 +0100 Subject: [PATCH 45/94] Arrangement: small doc fixes --- .../doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt index 5254543120c..cea994341a9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt @@ -4780,7 +4780,7 @@ or line segments. The \link Arr_conic_traits_2::Curve_2 `Curve_2`\endlink and the derived \link Arr_conic_traits_2::X_monotone_curve_2 `X_monotone_curve_2`\endlink classes also support basic access functions such as `source()`, -`target()`, and `orientation()`. +`target()`, and `%orientation()`. \cgalFigureBegin{aos_fig-conics,conics.png} @@ -5067,7 +5067,7 @@ substitute the template parameters `RatKernel`, `AlgKernel`, and the same requirements of the corresponding types used to instantiate the `Arr_conic_traits_2` class template. Here, the use of the `CORE_algebraic_number_traits` class is also recommended with -Cartesian kernels instantiated with the `Rational` and `Algebraic` +%Cartesian kernels instantiated with the `Rational` and `Algebraic` number types defined by this class. The examples given in this manual use the type definitions listed below. These types are defined in the header file `arr_Bezier.h`. From 6f4804fd1e1aa8068467e5f1a629434b5faf5b6e Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 10:02:18 +0100 Subject: [PATCH 46/94] More fixes --- .../doc/Algebraic_foundations/Algebraic_foundations.txt | 5 ++--- Number_types/doc/Number_types/NumberTypeSupport.txt | 4 ++-- Stream_support/doc/Stream_support/IOstream.txt | 3 +-- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Algebraic_foundations.txt b/Algebraic_foundations/doc/Algebraic_foundations/Algebraic_foundations.txt index 890716d2c09..80a69b1719a 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Algebraic_foundations.txt +++ b/Algebraic_foundations/doc/Algebraic_foundations/Algebraic_foundations.txt @@ -169,8 +169,8 @@ Every \cgal `Kernel` comes with two real number types (number types embeddable into the real numbers). One of them is a `FieldNumberType`, and the other a `RingNumberType`. The coordinates of the basic kernel objects (points, vectors, etc.) come -from one of these types (the `FieldNumberType` in case of Cartesian -kernels, and the `RingNumberType` for Homogeneous kernels). +from one of these types (the `FieldNumberType` in case of %Cartesian +kernels, and the `RingNumberType` for %Homogeneous kernels). The concept `FieldNumberType` combines the requirements of the concepts `Field` and `RealEmbeddable`, while @@ -277,4 +277,3 @@ subsequent chapters. */ } /* namespace CGAL */ - diff --git a/Number_types/doc/Number_types/NumberTypeSupport.txt b/Number_types/doc/Number_types/NumberTypeSupport.txt index 705e1fe6d27..d22aee9d648 100644 --- a/Number_types/doc/Number_types/NumberTypeSupport.txt +++ b/Number_types/doc/Number_types/NumberTypeSupport.txt @@ -120,7 +120,7 @@ To use these classes, \gmp and \mpfr must be installed. \anchor ledant \leda provides number types that can be used for exact computation -with both Cartesian and homogeneous representations. If you are using +with both %Cartesian and homogeneous representations. If you are using homogeneous representation with the built-in integer types `short`, `int`, and `long` as ring type, exactness of computations can be guaranteed only if your input data come from a @@ -130,7 +130,7 @@ integers of arbitrary length. (Of course the length is somehow bounded by the resources of your computer.) It can be used as ring type in homogeneous kernels and leads to exact computation as long as all intermediate results are rational. For the -same kind of problems, Cartesian representation with number type +same kind of problems, %Cartesian representation with number type `leda_rational` leads to exact computation as well. The number type `leda_bigfloat` in \leda is a variable precision floating-point type. Rounding mode and precision (i.e.\ mantissa length) of diff --git a/Stream_support/doc/Stream_support/IOstream.txt b/Stream_support/doc/Stream_support/IOstream.txt index cfdf25073ec..be0f7ee02a9 100644 --- a/Stream_support/doc/Stream_support/IOstream.txt +++ b/Stream_support/doc/Stream_support/IOstream.txt @@ -69,7 +69,7 @@ as a sequence of four byte. The format depends on the machine. The mode `PRETTY` serves mainly for debugging as the type of the geometric object is written, as well as the data defining the object. For example -for a point at the origin with Cartesian double coordinates, the output +for a point at the origin with %Cartesian double coordinates, the output would be `PointC2(0.0, 0.0)`. At the moment \cgal does not provide input operations for pretty printed data. By default a stream is in \ascii mode. @@ -519,4 +519,3 @@ which might look as follows: */ } /* namespace CGAL */ - From 55ea7ba7ecd2a88b4ac322ce34a50277b90c9a6e Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 10:21:46 +0100 Subject: [PATCH 47/94] More fixes --- .../Concepts/FieldNumberType.h | 3 +- .../CGAL/Arr_circle_segment_traits_2.h | 2 +- .../CGAL/Arr_conic_traits_2.h | 2 +- .../Concepts/BarycentricTraits_2.h | 4 +- .../CGAL/Approximate_min_ellipsoid_d.h | 8 +-- .../CGAL/Min_ellipse_2_traits_2.h | 2 +- .../CGAL/Min_sphere_of_spheres_d.h | 2 +- .../doc/Kernel_23/CGAL/Filtered_predicate.h | 2 +- .../Kernel_23/CGAL/Kernel/global_functions.h | 28 ++++---- Kernel_23/doc/Kernel_23/CGAL/Vector_2.h | 12 ++-- .../Concepts/FunctionObjectConcepts.h | 68 +++++++++---------- Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h | 4 +- .../Kernel--CartesianConstIterator_d.h | 3 +- .../Nef_2/Concepts/ExtendedKernelTraits_2.h | 3 +- .../Concepts/PMPDistanceTraits.h | 2 +- .../Concepts/PolynomialTraits_d--IsZeroAt.h | 5 +- .../Concepts/PolynomialTraits_d--SignAt.h | 5 +- .../Concepts/EfficientRANSACTraits.h | 8 +-- .../doc/Spatial_searching/CGAL/Fuzzy_sphere.h | 2 +- .../Concepts/FuzzyQueryItem.h | 2 +- .../Concepts/RawPoint_3.h | 2 +- .../MeanCurvatureSkeletonizationTraits.h | 3 +- 22 files changed, 83 insertions(+), 89 deletions(-) diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h index 8609a9a9cbe..ed902b7c3f1 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/FieldNumberType.h @@ -5,7 +5,7 @@ The concept `FieldNumberType` combines the requirements of the concepts `Field` and `RealEmbeddable`. A model of `FieldNumberType` can be used as a template parameter -for Cartesian kernels. +for %Cartesian kernels. \cgalRefines{Field,RealEmbeddable} @@ -32,4 +32,3 @@ public: /// @} }; /* end FieldNumberType */ - diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h index 43b7d56bcf8..f7a5ec81820 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_circle_segment_traits_2.h @@ -168,7 +168,7 @@ public: /*! The `Point_2` number-type nested within the traits class represents - * a Cartesian point whose coordinates are algebraic numbers of type + * a %Cartesian point whose coordinates are algebraic numbers of type * `CoordNT`. */ class Point_2 { diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h index fe6e70de9c5..4d7d479fed9 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_conic_traits_2.h @@ -274,7 +274,7 @@ public: */ Point_2(const Algebraic& hx, const Algebraic& hy, const Algebraic& hz); - /*! constructs from Cartesian coordinates. + /*! constructs from %Cartesian coordinates. */ Point_2(const Algebraic& x, const Algebraic& y);: diff --git a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h index 1fe3c8fc2bd..ba6951b7614 100644 --- a/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h +++ b/Barycentric_coordinates_2/doc/Barycentric_coordinates_2/Concepts/BarycentricTraits_2.h @@ -159,7 +159,7 @@ typedef unspecified_type Less_xy_2; `Comparison_result operator(const Point_2& p, const Point_2& q)` - that compares the Cartesian x-coordinates of the points `p` and `q`. + that compares the %Cartesian x-coordinates of the points `p` and `q`. */ typedef unspecified_type Compare_x_2; @@ -168,7 +168,7 @@ typedef unspecified_type Compare_x_2; `Comparison_result operator(const Point_2& p, const Point_2& q)` - that compares the Cartesian y-coordinates of the points `p` and `q`. + that compares the %Cartesian y-coordinates of the points `p` and `q`. */ typedef unspecified_type Compare_y_2; diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d.h index 856d1a16929..7b48c2fc114 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d.h @@ -8,7 +8,7 @@ An object of class `Approximate_min_ellipsoid_d` is an approximation to the ellipsoid of smallest volume enclosing a finite multiset of points in \f$ d\f$-dimensional Euclidean space \f$ \E^d\f$, \f$ d\ge 2\f$. -An ellipsoid in \f$ \E^d\f$ is a Cartesian pointset of the form \f$ \{ +An ellipsoid in \f$ \E^d\f$ is a %Cartesian pointset of the form \f$ \{ x\in\E^d \mid x^T E x + x^T e + \eta\leq 0 \}\f$, where \f$ E\f$ is some positive definite matrix from the set \f$ \mathbb{R}^{d\times d}\f$, \f$ e\f$ is some real \f$ d\f$-vector, and \f$ \eta\in\mathbb{R}\f$. A pointset \f$ P\subseteq \E^d\f$ is @@ -94,7 +94,7 @@ is actually achieved; the performance of the algorithm in this respect highly depends on the input pointset. Values of at least \f$ 0.01\f$ for \f$ \epsilon\f$ are usually handled without problems. -Internally, the algorithm represents the input points' Cartesian +Internally, the algorithm represents the input points' %Cartesian coordinates as `double`'s. For this conversion to work, the input point coordinates must be convertible to `double`. Also, in order to compute the achieved epsilon \f$ \epsilon'\f$ mentioned above, the algorithm @@ -171,7 +171,7 @@ typedef unspecified_type Cartesian_const_iterator; /*! A model of STL concept `RandomAccessIterator` with value type `double` that is used -to iterate over the Cartesian center coordinates of the computed +to iterate over the %Cartesian center coordinates of the computed ellipsoid, see `center_cartesian_begin()`. */ typedef unspecified_type Center_coordinate_iterator; @@ -313,7 +313,7 @@ int dimension() const; /*! -returns an iterator pointing to the first of the \f$ d\f$ Cartesian +returns an iterator pointing to the first of the \f$ d\f$ %Cartesian coordinates of the computed ellipsoid's center. The returned point is a floating-point approximation to the diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h index 25b54759c1a..49c9b0c7485 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2_traits_2.h @@ -46,7 +46,7 @@ bool is_circle(); /*! gives a double approximation of the -ellipse's conic equation. If `K` is a Cartesian kernel, the ellipse +ellipse's conic equation. If `K` is a %Cartesian kernel, the ellipse is the set of all points \f$ (x,y)\f$ satisfying \f$ rx^2+sy^2+txy+ux+vy+w=0\f$. In the Homogeneous case, the ellipse is the set of points \f$ (hx,hy,hw)\f$ satisfying \f$ r(hx)^2+s(hy)^2+t(hx)(hy)+u(hx)(hw)+v(hy)(hw)+w(hw)^2=0\f$. diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d.h index fbcd5f02e2d..3590abf82a7 100644 --- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d.h +++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_of_spheres_d.h @@ -90,7 +90,7 @@ be used in such a case. (For exact number types Currently, we require `Traits::FT` to be either an exact number type or `double` or `float`; other inexact number types are not supported at this time. Also, the current implementation only -handles spheres with Cartesian coordinates; homogeneous representation +handles spheres with %Cartesian coordinates; homogeneous representation is not supported yet. \cgalHeading{Example} diff --git a/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h b/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h index bad95b0defa..b809ff933f2 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h @@ -21,7 +21,7 @@ we use the function objects `C2E` and `C2F`, which must be of the form \cgalHeading{Example} The following example defines an efficient and exact version of the -orientation predicate over three points using the Cartesian representation +orientation predicate over three points using the %Cartesian representation with double coordinates and without reference counting (`Simple_cartesian::Point_2`). Of course, the orientation predicate can already be found in the kernel, but diff --git a/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h b/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h index 6be2530b49b..1b7099243c9 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h @@ -753,7 +753,7 @@ const CGAL::Point_3& r); /// @{ /*! -Compares the Cartesian coordinates of points `p` and +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xy\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. This is the same function as `compare_xy` and exists for compatibility with `Point_d`. @@ -763,7 +763,7 @@ Comparison_result compare_lexicographically(const CGAL::Point_2& p, const CGAL::Point_2& q); /*! -Compares the Cartesian coordinates of points `p` and +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xyz\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared, and if both \f$ x\f$- and \f$ y\f$- coordinate are equal, @@ -1144,7 +1144,7 @@ global function are available. /// @{ /*! -Compares the Cartesian coordinates of points `p` and +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xy\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. @@ -1154,7 +1154,7 @@ Comparison_result compare_xy(const CGAL::Point_2& p, const CGAL::Point_2& q); /*! -Compares the Cartesian coordinates of points `p` and `q` +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xy\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. @@ -1177,7 +1177,7 @@ compare_xy(const CGAL::Point_3& p, const CGAL::Point_3& q); /// @{ /*! -Compares the \f$ x\f$ and \f$ y\f$ Cartesian coordinates of points `p` and +Compares the \f$ x\f$ and \f$ y\f$ %Cartesian coordinates of points `p` and `q` lexicographically. */ template @@ -1186,7 +1186,7 @@ Comparison_result const CGAL::Circular_arc_point_2 &q); /*! -Compares the \f$ x\f$ and \f$ y\f$ Cartesian coordinates of points `p` and +Compares the \f$ x\f$ and \f$ y\f$ %Cartesian coordinates of points `p` and `q` lexicographically. */ template @@ -1209,7 +1209,7 @@ compare_xy(const CGAL::Circular_arc_point_2 &p, /*! -Compares the \f$ x\f$ and \f$ y\f$ Cartesian coordinates of points `p` and +Compares the \f$ x\f$ and \f$ y\f$ %Cartesian coordinates of points `p` and `q` lexicographically. */ template @@ -1218,7 +1218,7 @@ Comparison_result const CGAL::Circular_arc_point_3 &q); /*! -Compares the \f$ x\f$ and \f$ y\f$ Cartesian coordinates of points `p` and +Compares the \f$ x\f$ and \f$ y\f$ %Cartesian coordinates of points `p` and `q` lexicographically. */ template @@ -1442,13 +1442,13 @@ global function are available. */ /// @{ /*! - compares Cartesian \f$ y\f$-coordinates of `p` and `q`. + compares %Cartesian \f$ y\f$-coordinates of `p` and `q`. */ template Comparison_result compare_y(const CGAL::Point_2 &p, const CGAL::Point_2 &q); /*! - compares Cartesian \f$ y\f$-coordinates of `p` and `q`. + compares %Cartesian \f$ y\f$-coordinates of `p` and `q`. */ template Comparison_result compare_y(const CGAL::Point_3 &p, @@ -1564,7 +1564,7 @@ global function are available. /// @{ /*! -Compares the Cartesian coordinates of points `p` and +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xyz\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared, and if both \f$ x\f$- and \f$ y\f$- coordinate are equal, @@ -1587,7 +1587,7 @@ compare_xyz(const CGAL::Point_3& p, const CGAL::Point_3& q); */ /// @{ -/*! Compares the Cartesian coordinates of points `p` and `q` lexicographically. +/*! Compares the %Cartesian coordinates of points `p` and `q` lexicographically. */ template Comparison_result @@ -1595,7 +1595,7 @@ compare_xyz(const CGAL::Circular_arc_point_3 &p, const CGAL::Circular_arc_point_3 &q); /*! -Compares the Cartesian coordinates of points `p` and `q` lexicographically. +Compares the %Cartesian coordinates of points `p` and `q` lexicographically. */ template Comparison_result @@ -1682,7 +1682,7 @@ compare_z(const CGAL::Circular_arc_point_3 &p, const CGAL::Poin /// @{ /*! -Compares the Cartesian coordinates of points `p` and +Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ yx\f$ order: first \f$ y\f$-coordinates are compared, if they are equal, \f$ x\f$-coordinates are compared. diff --git a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h index eaeab03a882..df1aa0c913b 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h @@ -13,7 +13,7 @@ will explicitly state where you can pass this constant as an argument instead of a vector initialized with zeros. \cgalModels `Kernel::Vector_2` -\cgalModels `Hashable` if `Kernel` is a cartesian kernel and if `Kernel::FT` is `Hashable` +\cgalModels `Hashable` if `Kernel` is a %Cartesian kernel and if `Kernel::FT` is `Hashable` */ template< typename Kernel > @@ -25,7 +25,7 @@ public: /*! An iterator for enumerating the -Cartesian coordinates of a vector. +%Cartesian coordinates of a vector. */ typedef unspecified_type Cartesian_const_iterator; @@ -119,7 +119,7 @@ Kernel::FT y() const; /// \name Convenience Operators /// The following operations are for convenience and for compatibility -/// with higher dimensional vectors. Again they come in a Cartesian +/// with higher dimensional vectors. Again they come in a %Cartesian /// and homogeneous flavor. /// @{ @@ -131,7 +131,7 @@ returns the i'th homogeneous coordinate of `v`. Kernel::RT homogeneous(int i) const; /*! -returns the i'th Cartesian coordinate of `v`. +returns the i'th %Cartesian coordinate of `v`. \pre `0 <= i <= 1`. */ Kernel::FT cartesian(int i) const; @@ -143,13 +143,13 @@ returns `cartesian(i)`. Kernel::FT operator[](int i) const; /*! -returns an iterator to the Cartesian coordinates +returns an iterator to the %Cartesian coordinates of `v`, starting with the 0th coordinate. */ Cartesian_const_iterator cartesian_begin() const; /*! -returns an off the end iterator to the Cartesian +returns an off the end iterator to the %Cartesian coordinates of `v`. */ Cartesian_const_iterator cartesian_end() const; diff --git a/Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h b/Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h index bdd0dff3473..7e4e6661523 100644 --- a/Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h +++ b/Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h @@ -478,7 +478,7 @@ public: \ingroup PkgKernel23ConceptsFunctionObjects \cgalConcept - A type representing an iterator to the Cartesian coordinates of a point + A type representing an iterator to the %Cartesian coordinates of a point in two dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} @@ -495,7 +495,7 @@ public: \ingroup PkgKernel23ConceptsFunctionObjects \cgalConcept - A type representing an iterator to the Cartesian coordinates of a point + A type representing an iterator to the %Cartesian coordinates of a point in three dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} @@ -1365,7 +1365,7 @@ public: /// @{ /*! - Compares the Cartesian coordinates of points `p` and + Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xyz\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. If they are equal, \f$ z\f$-coordinates are compared. @@ -1395,7 +1395,7 @@ public: /// @{ /*! - Compares the Cartesian coordinates of points `p` and + Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xy\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. @@ -1425,7 +1425,7 @@ public: /*! - Compares the Cartesian coordinates of points `p` and + Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ xy\f$ order: first \f$ x\f$-coordinates are compared, if they are equal, \f$ y\f$-coordinates are compared. @@ -1458,7 +1458,7 @@ public: /// @{ /*! - compares the Cartesian \f$ x\f$-coordinates of points `p` and `q` + compares the %Cartesian \f$ x\f$-coordinates of points `p` and `q` */ Comparison_result operator()(const Kernel::Point_2&p, const Kernel::Point_2&q); @@ -1514,7 +1514,7 @@ public: /// @{ /*! - Compares the Cartesian \f$ x\f$-coordinates of points `p` and + Compares the %Cartesian \f$ x\f$-coordinates of points `p` and `q` */ Comparison_result operator()(const Kernel::Point_3&p, @@ -1633,7 +1633,7 @@ public: /// @{ /*! - Compares the Cartesian coordinates of points `p` and + Compares the %Cartesian coordinates of points `p` and `q` lexicographically in \f$ yx\f$ order: first \f$ y\f$-coordinates are compared, if they are equal, \f$ x\f$-coordinates are compared. @@ -1666,7 +1666,7 @@ public: /// @{ /*! - Compares the Cartesian \f$ y\f$-coordinates of points `p` and + Compares the %Cartesian \f$ y\f$-coordinates of points `p` and `q` */ Comparison_result operator()(const Kernel::Point_2&p, @@ -1725,7 +1725,7 @@ public: /// @{ /*! - Compares the Cartesian \f$ y\f$-coordinates of points `p` and + Compares the %Cartesian \f$ y\f$-coordinates of points `p` and `q` */ Comparison_result operator()(const Kernel::Point_3&p, @@ -1752,7 +1752,7 @@ public: /// @{ /*! - Compares the Cartesian \f$ z\f$-coordinates of points `p` and + Compares the %Cartesian \f$ z\f$-coordinates of points `p` and `q` */ Comparison_result operator()(const Kernel::Point_3&p, @@ -3983,25 +3983,25 @@ public: /*! - returns an iterator on the 0'th Cartesian coordinate of `p`. + returns an iterator on the 0'th %Cartesian coordinate of `p`. */ Kernel::Cartesian_const_iterator_2 operator()(const Kernel::Point_2 &p); /*! - returns the past the end iterator of the Cartesian coordinates of `p`. + returns the past the end iterator of the %Cartesian coordinates of `p`. */ Kernel::Cartesian_const_iterator_2 operator()(const Kernel::Point_2 &p, int); /*! - returns an iterator on the 0'th Cartesian coordinate of `v`. + returns an iterator on the 0'th %Cartesian coordinate of `v`. */ Kernel::Cartesian_const_iterator_2 operator()(const Kernel::Vector_2 &v); /*! - returns the past the end iterator of the Cartesian coordinates of `v`. + returns the past the end iterator of the %Cartesian coordinates of `v`. */ Kernel::Cartesian_const_iterator_2 operator()(const Kernel::Vector_2 &v, int); @@ -4028,25 +4028,25 @@ public: /// @{ /*! - returns an iterator on the 0'th Cartesian coordinate of `p`. + returns an iterator on the 0'th %Cartesian coordinate of `p`. */ Kernel::Cartesian_const_iterator_3 operator()(const Kernel::Point_3 &p); /*! - returns the past the end iterator of the Cartesian coordinates of `p`. + returns the past the end iterator of the %Cartesian coordinates of `p`. */ Kernel::Cartesian_const_iterator_3 operator()(const Kernel::Point_3 &p, int); /*! - returns an iterator on the 0'th Cartesian coordinate of `v`. + returns an iterator on the 0'th %Cartesian coordinate of `v`. */ Kernel::Cartesian_const_iterator_3 operator()(const Kernel::Vector_3 &v); /*! - returns the past the end iterator of the Cartesian coordinates of `v`. + returns the past the end iterator of the %Cartesian coordinates of `v`. */ Kernel::Cartesian_const_iterator_3 operator()(const Kernel::Vector_3 &v, int); @@ -5992,7 +5992,7 @@ public: /// @{ /*! - introduces a variable with Cartesian coordinates + introduces a variable with %Cartesian coordinates \f$ (0,0)\f$. */ Kernel::Point_2 operator()(const CGAL::Origin &CGAL::ORIGIN); @@ -6033,7 +6033,7 @@ public: /// @{ /*! - introduces a point with Cartesian coordinates\f$ (0,0,0)\f$. + introduces a point with %Cartesian coordinates\f$ (0,0,0)\f$. */ Kernel::Point_3 operator()(const CGAL::Origin &CGAL::ORIGIN); @@ -7287,19 +7287,19 @@ public: /// @{ /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates \f$ (0,0)\f$ and weight \f$ 0 \f$. */ Kernel::Weighted_point_2 operator()(const CGAL::Origin &CGAL::ORIGIN); /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates those of \f$ p \f$ and weight \f$ 0 \f$. */ Kernel::Weighted_point_2 operator()(const Kernel::Point_2& p); /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates those of \f$ p \f$ and weight \f$ w \f$. */ Kernel::Weighted_point_2 operator()(const Kernel::Point_2& p, const Kernel::FT& w); @@ -7325,19 +7325,19 @@ public: /// @{ /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates \f$ (0,0,0)\f$ and weight \f$ 0 \f$. */ Kernel::Weighted_point_3 operator()(const CGAL::Origin &CGAL::ORIGIN); /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates those of \f$ p \f$ and weight \f$ 0 \f$. */ Kernel::Weighted_point_3 operator()(const Kernel::Point_3& p); /*! - introduces a weighted point with Cartesian coordinates + introduces a weighted point with %Cartesian coordinates those of \f$ p \f$ and weight \f$ w \f$. */ Kernel::Weighted_point_3 operator()(const Kernel::Point_3& p, const Kernel::FT& w); @@ -7590,8 +7590,8 @@ public: /*! - returns true iff `p` and `q` have the same Cartesian \f$ x\f$-coordinate - and the same Cartesian \f$ y\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ x\f$-coordinate + and the same %Cartesian \f$ y\f$-coordinate. */ bool operator()(const Kernel::Point_3&p, const Kernel::Point_3&q); @@ -7617,7 +7617,7 @@ public: /// @{ /*! - returns true iff `p` and `q` have the same Cartesian \f$ x\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ x\f$-coordinate. */ bool operator()(const Kernel::Point_2&p, const Kernel::Point_2&q); @@ -7643,7 +7643,7 @@ public: /// @{ /*! - returns true iff `p` and `q` have the same Cartesian \f$ x\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ x\f$-coordinate. */ bool operator()(const Kernel::Point_3&p, const Kernel::Point_3&q); @@ -7669,7 +7669,7 @@ public: /// @{ /*! - returns true iff `p` and `q` have the same Cartesian \f$ y\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ y\f$-coordinate. */ bool operator()(const Kernel::Point_2&p, const Kernel::Point_2&q); @@ -7695,7 +7695,7 @@ public: /// @{ /*! - returns true iff `p` and `q` have the same Cartesian \f$ y\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ y\f$-coordinate. */ bool operator()(const Kernel::Point_3&p, const Kernel::Point_3&q); @@ -7721,7 +7721,7 @@ public: /// @{ /*! - returns true iff `p` and `q` have the same Cartesian \f$ z\f$-coordinate. + returns true iff `p` and `q` have the same %Cartesian \f$ z\f$-coordinate. */ bool operator()(const Kernel::Point_3&p, const Kernel::Point_3&q); diff --git a/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h b/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h index 4fcacb5b584..ce91a8107dd 100644 --- a/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h +++ b/Kernel_d/doc/Kernel_d/CGAL/Epeck_d.h @@ -79,9 +79,9 @@ Point_d(ForwardIterator first, ForwardIterator end); \pre `i` is non-negative and less than the dimension. */ double operator[](int i)const; -/*! returns an iterator pointing to the zeroth Cartesian coordinate. */ +/*! returns an iterator pointing to the zeroth %Cartesian coordinate. */ Cartesian_const_iterator_d cartesian_begin()const; -/*! returns an iterator pointing beyond the last Cartesian coordinate. */ +/*! returns an iterator pointing beyond the last %Cartesian coordinate. */ Cartesian_const_iterator_d cartesian_end()const; }; diff --git a/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h b/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h index c951a0735ef..b42e7d36203 100644 --- a/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h +++ b/Kernel_d/doc/Kernel_d/Concepts/Kernel--CartesianConstIterator_d.h @@ -3,7 +3,7 @@ \ingroup PkgKernelDKernelConcept \cgalConcept -A type representing an iterator to the Cartesian coordinates of a point +A type representing an iterator to the %Cartesian coordinates of a point in `d` dimensions. \cgalRefines{CopyConstructible,Assignable,DefaultConstructible} @@ -18,4 +18,3 @@ class Kernel_d::CartesianConstIterator_d { public: }; /* end Kernel_d::CartesianConstIterator_d */ - diff --git a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h index 8d5e82f7fed..7fa1febc458 100644 --- a/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h +++ b/Nef_2/doc/Nef_2/Concepts/ExtendedKernelTraits_2.h @@ -8,7 +8,7 @@ geometry\cgalFootnote{It is called extended geometry for simplicity, though it is not a real geometry in the classical sense}. Let `K` be an instance of the data type `ExtendedKernelTraits_2`. The central notion of extended geometry are extended points. An extended point -represents either a standard affine point of the Cartesian plane or a +represents either a standard affine point of the %Cartesian plane or a non-standard point representing the equivalence class of rays where two rays are equivalent if one is contained in the other. @@ -353,4 +353,3 @@ const char* output_identifier() ; /// @} }; /* end ExtendedKernelTraits_2 */ - diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h index 61575e3ff89..df2bd3fe0e2 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPDistanceTraits.h @@ -19,7 +19,7 @@ public: /*! 3D point type * It must be default constructible, and can be constructed from 3 objects of type `FT`. * `bool operator<(Point_3, Point_3)` to lexicographically compare two points must be available. - * Access to Cartesian coordinates must be possible using `Point_3::x()`, `Point_3::y(), Point_3::z()` and + * Access to %Cartesian coordinates must be possible using `Point_3::x()`, `Point_3::y(), Point_3::z()` and * `FT operator[](int i)` with `0 <= i < 3`. * * There must be a specialization of `CGAL::Kernel_traits` such that diff --git a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--IsZeroAt.h b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--IsZeroAt.h index 3f778a6fc9e..1369e95f518 100644 --- a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--IsZeroAt.h +++ b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--IsZeroAt.h @@ -4,7 +4,7 @@ \cgalConcept This `AdaptableFunctor` returns whether a -`PolynomialTraits_d::Polynomial_d` \f$ p\f$ is zero at a given Cartesian point, +`PolynomialTraits_d::Polynomial_d` \f$ p\f$ is zero at a given %Cartesian point, which is represented as an iterator range. \cgalRefines{AdaptableFunctor,CopyConstructible,DefaultConstructible} @@ -32,7 +32,7 @@ typedef bool result_type; /*! -Computes whether \f$ p\f$ is zero at the Cartesian point given by the iterator range, +Computes whether \f$ p\f$ is zero at the %Cartesian point given by the iterator range, where `begin` is referring to the innermost variable. \pre (end-begin == `PolynomialTraits_d::d`) @@ -47,4 +47,3 @@ InputIterator end ); /// @} }; /* end PolynomialTraits_d::IsZeroAt */ - diff --git a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--SignAt.h b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--SignAt.h index 89dc6556dad..d1645dd00e2 100644 --- a/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--SignAt.h +++ b/Polynomial/doc/Polynomial/Concepts/PolynomialTraits_d--SignAt.h @@ -4,7 +4,7 @@ \cgalConcept This `AdaptableFunctor` returns the sign of a -`PolynomialTraits_d::Polynomial_d` \f$ p\f$ at given Cartesian point represented +`PolynomialTraits_d::Polynomial_d` \f$ p\f$ at given %Cartesian point represented as an iterator range. This functor is well defined if `PolynomialTraits_d::Innermost_coefficient_type` is @@ -35,7 +35,7 @@ typedef CGAL::Sign result_type; /*! -Returns the sign of \f$ p\f$ at the given Cartesian point, where `begin` is referring +Returns the sign of \f$ p\f$ at the given %Cartesian point, where `begin` is referring to the innermost variable. \pre (`end-begin` == `PolynomialTraits_d::d`) \pre `std::iterator_traits< InputIterator >::%value_type` is `ExplicitInteroperable` with `PolynomialTraits_d::Innermost_coefficient_type`. @@ -49,4 +49,3 @@ InputIterator end ); /// @} }; /* end PolynomialTraits_d::SignAt */ - diff --git a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h index 5441f324e94..a4f915567b4 100644 --- a/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h +++ b/Shape_detection/doc/Shape_detection/Concepts/EfficientRANSACTraits.h @@ -39,7 +39,7 @@ public: /// The 2D vector type, only required if you want to detect tori typedef unspecified_type Vector_2; - /// The number type of the Cartesian coordinates of types Point_3 + /// The number type of the %Cartesian coordinates of types Point_3 typedef unspecified_type FT; /// A model of the concept `Range` with random access iterators, providing input points and normals @@ -63,9 +63,9 @@ public: /*! * Function object type that provides * `Point_3 operator()(Origin p)` - * returning the point with 0, 0, 0 as Cartesian coordinates + * returning the point with 0, 0, 0 as %Cartesian coordinates * and `Point_3 operator()(FT x, FT y, FT z)` - * returning the point with `x`, `y` and `z` as Cartesian coordinates. + * returning the point with `x`, `y` and `z` as %Cartesian coordinates. */ typedef unspecified_type Construct_point_3; @@ -106,7 +106,7 @@ public: /*! * Function object type that provides * `Point_2 operator()(FT x, FT y)` - * returning the 2D point with `x` and `y` as Cartesian coordinates. + * returning the 2D point with `x` and `y` as %Cartesian coordinates. * Only required if you want to detect tori. */ typedef unspecified_type Construct_point_2; diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h index dac7c110cb0..b9ee673a03e 100644 --- a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h +++ b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h @@ -76,7 +76,7 @@ less than \f$ r\f$. bool contains(const Point_d& p) const; /*! -Test whether the fuzzy sphere contains the point whose Cartesian coordinates +Test whether the fuzzy sphere contains the point whose %Cartesian coordinates are contained in the range [`begin`, `end`). */ template diff --git a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h index a8aa2640a2c..12ebb30eb80 100644 --- a/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h +++ b/Spatial_searching/doc/Spatial_searching/Concepts/FuzzyQueryItem.h @@ -43,7 +43,7 @@ bool contains(Point_d p) const; /*! \note Optional: must be defined when used with a `Kd_tree` where `EnablePointsCache` is set to `Tag_true`. -tests whether the query item contains the point whose Cartesian coordinates +tests whether the query item contains the point whose %Cartesian coordinates are contained in the range [`begin`, `end`). */ template diff --git a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/RawPoint_3.h b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/RawPoint_3.h index 41b10daa4a7..32925160334 100644 --- a/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/RawPoint_3.h +++ b/Surface_mesh_deformation/doc/Surface_mesh_deformation/Concepts/RawPoint_3.h @@ -9,7 +9,7 @@ class RawPoint_3 public: /// \name Creation /// @{ - /// constructor from Cartesian coordinates + /// constructor from %Cartesian coordinates RawPoint_3(double x, double y, double z); /// @} diff --git a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h index 824b21454e5..c5713628db9 100644 --- a/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h +++ b/Surface_mesh_skeletonization/doc/Surface_mesh_skeletonization/Concepts/MeanCurvatureSkeletonizationTraits.h @@ -28,7 +28,7 @@ typedef unspecified_type FT; /*! * Function object type that provides * `Point_3 operator()(FT x, FT y, FT z) const` - * returning the point with `x`, `y` and `z` as Cartesian coordinates. + * returning the point with `x`, `y` and `z` as %Cartesian coordinates. */ typedef unspecified_type Construct_point_3; @@ -186,4 +186,3 @@ compute_z_3_object(); /// @} }; /* end DelaunayTriangulationTraits_2 */ - From c11711e728689171c40bc18fd7f8abb7e3e84add Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 10:29:04 +0100 Subject: [PATCH 48/94] More fixes --- .../doc/Algebraic_foundations/Concepts/RingNumberType.h | 3 +-- Nef_3/doc/Nef_3/Nef_3.txt | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h index a2b6c5036f0..fc53fb1f4eb 100644 --- a/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h +++ b/Algebraic_foundations/doc/Algebraic_foundations/Concepts/RingNumberType.h @@ -6,7 +6,7 @@ The concept `RingNumberType` combines the requirements of the concepts `IntegralDomainWithoutDivision` and `RealEmbeddable`. A model of `RingNumberType` can be used as a template parameter -for Homogeneous kernels. +for homogeneous kernels. \cgalRefines{IntegralDomainWithoutDivision,RealEmbeddable} @@ -32,4 +32,3 @@ class RingNumberType { public: }; /* end RingNumberType */ - diff --git a/Nef_3/doc/Nef_3/Nef_3.txt b/Nef_3/doc/Nef_3/Nef_3.txt index 60e98f18864..bd7de74fd27 100644 --- a/Nef_3/doc/Nef_3/Nef_3.txt +++ b/Nef_3/doc/Nef_3/Nef_3.txt @@ -448,7 +448,7 @@ We recommend the use of the \cgal kernels `Homogeneous`, The homogeneous kernel provides reliable fast performance. In combination with `leda_integer` it is the fastest kernel for `Nef_polyhedron_3`. The `Exact_predicates_exact_constructions_kernel` uses filtering. In non-degenerate -scenarios it's faster than the Homogeneous kernel. The most +scenarios it's faster than the homogeneous kernel. The most important advantage of the filtered kernel is that it is a %Cartesian kernel, which allows the proper handling of OFF files using floating-point coordinates. From 7f1d36c5142fa27f58d20cc81e77b2d2474c9c9d Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 10:34:51 +0100 Subject: [PATCH 49/94] More fixes --- .../doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt index cea994341a9..b4bff8ed2db 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt @@ -117,8 +117,8 @@ special type of objects. They must, however, supply the relevant traits class, which mainly involves algebraic computations. A traits class also encapsulates the number types used to represent coordinates of geometric objects and to carry out algebraic operations on them. It -encapsulates the type of coordinate system used (e.g., Cartesian and -Homogeneous), and the geometric or algebraic computation methods +encapsulates the type of coordinate system used (e.g., %Cartesian and +homogeneous), and the geometric or algebraic computation methods themselves. The precise minimal sets of requirements the actual traits classes must conform to are organized as a hierarchy of concepts; see Section \ref aos_sec-geom_traits. From 7e50a90a4c70425efed257e188ba6ec6a687553a Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 13:59:44 +0100 Subject: [PATCH 50/94] Check #isolated vertices --- Nef_2/include/CGAL/Nef_2/PM_const_decorator.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h b/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h index 7748f4b1f61..de2eb257997 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h @@ -481,6 +481,8 @@ check_integrity_and_topological_planarity(bool faces) const first=false; } + CGAL_assertion(iso_vert_num == iv_num); + std::size_t v_num = number_of_vertices() - iso_vert_num; std::size_t e_num = number_of_edges(); std::size_t c_num = number_of_connected_components() - iso_vert_num; From e7198a0d65e2ec16d1ba2d568f508cbd52db5b2e Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 15:08:42 +0100 Subject: [PATCH 51/94] Add test case that triggers an assertion --- Nef_2/test/Nef_2/issue7662.cpp | 43 ++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Nef_2/test/Nef_2/issue7662.cpp diff --git a/Nef_2/test/Nef_2/issue7662.cpp b/Nef_2/test/Nef_2/issue7662.cpp new file mode 100644 index 00000000000..9ae6ff6bd91 --- /dev/null +++ b/Nef_2/test/Nef_2/issue7662.cpp @@ -0,0 +1,43 @@ +#include +#include +#include +#include +#include +#include + +typedef CGAL::Lazy_exact_nt FT; +typedef CGAL::Simple_cartesian Kernel; +typedef CGAL::Bounded_kernel Bounded_kernel; +typedef CGAL::Nef_polyhedron_2 Nef_polyhedron; +typedef Nef_polyhedron::Point Point; + + +int main(int argc, char *argv[]) +{ + Point p1[] = { + Point(0,0), + Point(100,100), + Point(0,100) + }; + + Point p2[] = { + Point(100, 100), + Point(110, 100), + Point(100, 110) + }; + + + std::list > polygons1; + polygons1.push_back(std::make_pair(p1, p1 + sizeof(p1) / sizeof(Point))); + + Nef_polyhedron poly1(polygons1.begin(), polygons1.end(), Nef_polyhedron::POLYGONS); + poly1.explorer().check_integrity_and_topological_planarity(); + + Nef_polyhedron poly2(p2, p2 + sizeof(p2) / sizeof(Point)); + poly2.explorer().check_integrity_and_topological_planarity(); + + Nef_polyhedron intersect = poly1.intersection(poly2); + intersect.explorer().check_integrity_and_topological_planarity(); + + return 0; +} From 965d4fd48d27d4182625a811c3a25e455d6c5427 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 17:01:46 +0100 Subject: [PATCH 52/94] WIP: When we delete a face we have to transfer its isolated vertices --- Nef_2/include/CGAL/Nef_2/PM_const_decorator.h | 7 ++++--- Nef_2/include/CGAL/Nef_2/PM_overlayer.h | 16 +++++++++++++--- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h b/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h index de2eb257997..3078ac12e6a 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_const_decorator.h @@ -434,9 +434,10 @@ check_integrity_and_topological_planarity(bool faces) const /* check the source links of out edges and count isolated vertices */ for (vit = vertices_begin() ; vit != vend; ++vit) { if ( is_isolated(vit) ) { - if ( faces ) - CGAL_assertion_msg( vit->face() != Face_const_handle(), - VI(vit).c_str()); + if (faces) { + CGAL_assertion_msg(vit->face() != Face_const_handle(), + VI(vit).c_str()); + } ++iso_vert_num; } else { CGAL_assertion_msg( vit->halfedge() != Halfedge_const_handle(), diff --git a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h index a28160ed477..0b822458150 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h +++ b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h @@ -626,8 +626,11 @@ avoid the simplification for edge pairs referenced by |e|.}*/ for(v = this->vertices_begin(); v != vend; v=vn) { CGAL_NEF_TRACEN("at vertex "<faces_begin(); f != fend; f=fn) { fn=f; ++fn; Union_find_handle pit = Pitem[f]; - if ( unify_faces.find(pit) != pit ) delete_face(f); + if (unify_faces.find(pit) != pit) { + Union_find_handle root = unify_faces.find(pit); + for(Isolated_vertex_iterator ivi = isolated_vertices_begin(f); ivi != isolated_vertices_end(f); ++ivi){ + v->set_face(*root); + link_as_isolated_vertex(*root,v); + } + delete_face(f); + } } From 2af60e2b399ca4704db6b49e33ec0603c6f7fa88 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 22 Aug 2023 17:22:04 +0100 Subject: [PATCH 53/94] clone() also has a problem with isolated vertices --- Nef_2/test/Nef_2/issue7662.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Nef_2/test/Nef_2/issue7662.cpp b/Nef_2/test/Nef_2/issue7662.cpp index 9ae6ff6bd91..e8354283737 100644 --- a/Nef_2/test/Nef_2/issue7662.cpp +++ b/Nef_2/test/Nef_2/issue7662.cpp @@ -39,5 +39,7 @@ int main(int argc, char *argv[]) Nef_polyhedron intersect = poly1.intersection(poly2); intersect.explorer().check_integrity_and_topological_planarity(); + Nef_polyhedron comp = intersect.complement(); //leads to crash/exception since topological plane map of intersect is not correct! + comp.explorer().check_integrity_and_topological_planarity(); return 0; } From 314fa1c60410a650d425c1e759dbd84a3af551a3 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Wed, 23 Aug 2023 13:43:57 +0100 Subject: [PATCH 54/94] Fix of fix in overlayer --- Nef_2/include/CGAL/Nef_2/PM_overlayer.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h index 0b822458150..0d7fe0dd01f 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h +++ b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h @@ -649,8 +649,8 @@ avoid the simplification for edge pairs referenced by |e|.}*/ if (unify_faces.find(pit) != pit) { Union_find_handle root = unify_faces.find(pit); for(Isolated_vertex_iterator ivi = isolated_vertices_begin(f); ivi != isolated_vertices_end(f); ++ivi){ - v->set_face(*root); - link_as_isolated_vertex(*root,v); + ivi->set_face(*root); + link_as_isolated_vertex(*root,ivi); } delete_face(f); } From 295bc8cd5a22ee6da5844ea1c4c3031141361e49 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Wed, 23 Aug 2023 13:47:06 +0100 Subject: [PATCH 55/94] Iterate over the source and not the target object --- Nef_2/include/CGAL/Nef_2/PM_decorator.h | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_decorator.h b/Nef_2/include/CGAL/Nef_2/PM_decorator.h index 914a6a58d6a..9b3881c426c 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_decorator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_decorator.h @@ -799,11 +799,13 @@ void PM_decorator::clone(const HDS& H) const CGAL::Unique_hash_map Vnew; CGAL::Unique_hash_map Hnew; CGAL::Unique_hash_map Fnew; - + /* First clone all objects and store correspondence in three maps.*/ Vertex_const_iterator vit, vend = H.vertices_end(); - for (vit = H.vertices_begin(); vit!=vend; ++vit) - Vnew[vit] = this->phds->vertices_push_back(Vertex_base()); + for (vit = H.vertices_begin(); vit != vend; ++vit) { + Vnew[vit] = this->phds->vertices_push_back(Vertex_base()); + assert(Vnew[vit] != Vertex_handle()); + } Halfedge_const_iterator eit, eend = H.halfedges_end(); for (eit = H.halfedges_begin(); eit!=eend; ++(++eit)) { Hnew[eit] = this->phds->edges_push_back(Halfedge_base(),Halfedge_base()); @@ -820,8 +822,12 @@ void PM_decorator::clone(const HDS& H) const vit2!=vend2; ++vit, ++vit2) { mark(vit2) = DC.mark(vit); point(vit2) = DC.point(vit); - if ( DC.is_isolated(vit) ) vit2->set_face(Fnew[vit->face()]); - else vit2->set_halfedge(Hnew[vit->halfedge()]); + if (DC.is_isolated(vit)) { + vit2->set_face(Fnew[vit->face()]); + } + else { + vit2->set_halfedge(Hnew[vit->halfedge()]); + } } Halfedge_iterator eit2, eend2 = this->phds->halfedges_end(); for (eit = H.halfedges_begin(), eit2 = halfedges_begin(); @@ -843,9 +849,10 @@ void PM_decorator::clone(const HDS& H) const fit2->store_fc(Hnew[fcit]); } // hole face cycles Isolated_vertex_const_iterator ivit; - for (ivit = isolated_vertices_begin(fit); - ivit != isolated_vertices_end(fit); ++ivit) + for (ivit = DC.isolated_vertices_begin(fit); + ivit != DC.isolated_vertices_end(fit); ++ivit) { fit2->store_iv(Vnew[ivit]); + } // isolated vertices in the interior mark(fit2) = DC.mark(fit); } From 1dca582e6209671241a45d9f3ab65b1b89ac1cb6 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Wed, 23 Aug 2023 13:53:03 +0100 Subject: [PATCH 56/94] whitespace --- Nef_2/include/CGAL/Nef_2/PM_decorator.h | 2 +- Nef_2/test/Nef_2/issue7662.cpp | 71 +++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_decorator.h b/Nef_2/include/CGAL/Nef_2/PM_decorator.h index 9b3881c426c..2f9005c95c6 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_decorator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_decorator.h @@ -799,7 +799,7 @@ void PM_decorator::clone(const HDS& H) const CGAL::Unique_hash_map Vnew; CGAL::Unique_hash_map Hnew; CGAL::Unique_hash_map Fnew; - + /* First clone all objects and store correspondence in three maps.*/ Vertex_const_iterator vit, vend = H.vertices_end(); for (vit = H.vertices_begin(); vit != vend; ++vit) { diff --git a/Nef_2/test/Nef_2/issue7662.cpp b/Nef_2/test/Nef_2/issue7662.cpp index e8354283737..85dd1503cf6 100644 --- a/Nef_2/test/Nef_2/issue7662.cpp +++ b/Nef_2/test/Nef_2/issue7662.cpp @@ -11,6 +11,75 @@ typedef CGAL::Bounded_kernel Bounded_kernel; typedef CGAL::Nef_polyhedron_2 Nef_polyhedron; typedef Nef_polyhedron::Point Point; +typedef Nef_polyhedron::Explorer Explorer; +typedef Explorer::Face_const_iterator Face_const_iterator; +typedef Explorer::Hole_const_iterator Hole_const_iterator; +typedef Explorer::Halfedge_around_face_const_circulator Halfedge_around_face_const_circulator; +typedef Explorer::Vertex_const_handle Vertex_const_handle; +typedef Explorer::Isolated_vertex_const_iterator Isolated_vertex_const_iterator; + +void print(Explorer& explorer, Vertex_const_handle vh, bool exact) +{ + std::cout << explorer.point(vh); + if (exact) + std::cout << " [" << explorer.point(vh).x().exact() << " | " << explorer.point(vh).y().exact() << "]"; + std::cout << ", "; +} + +void print(const Nef_polyhedron& poly, bool exact = false) +{ + + + Explorer explorer = poly.explorer(); + + // The first face is the infinite one. It has no outer face cycle but only holes + Face_const_iterator fit = explorer.faces_begin(); + std::cout << "explorer.mark(explorer.faces_begin()) " << ((explorer.mark(fit)) ? "is part of polygon" : "is not part of polygon") << std::endl; + for (Hole_const_iterator hit = explorer.holes_begin(fit); hit != explorer.holes_end(fit); hit++) { + std::cout << " A hole" << std::endl; + Halfedge_around_face_const_circulator hafc(hit), done(hit); + do { + Vertex_const_handle vh = explorer.target(hafc); + print(explorer, vh, exact); + hafc++; + } while (hafc != done); + std::cout << std::endl; + } + + for (Isolated_vertex_const_iterator it = explorer.isolated_vertices_begin(fit); it != explorer.isolated_vertices_end(fit); ++it) { + std::cout << "isolated vertex A" << explorer.point(it) << std::endl; + } + + // The other faces have outer face cycles, and they may have holes + for (fit++; + fit != explorer.faces_end(); + fit++) { + for (Isolated_vertex_const_iterator it = explorer.isolated_vertices_begin(fit); it != explorer.isolated_vertices_end(fit); ++it) { + std::cout << "isolated vertex B" << std::endl; + } + Halfedge_around_face_const_circulator hafc = explorer.face_cycle(fit), done(hafc); + std::cout << "face: " << ((explorer.mark(fit)) ? "is part of polygon" : "is not part of polygon") << std::endl; + do { + Vertex_const_handle vh = explorer.target(hafc); + print(explorer, vh, exact); + hafc++; + } while (hafc != done); + std::cout << std::endl; + for (Hole_const_iterator hit = explorer.holes_begin(fit); hit != explorer.holes_end(fit); hit++) { + std::cout << " A hole" << std::endl; + Halfedge_around_face_const_circulator hafc(hit), done(hit); + do { + Vertex_const_handle vh = explorer.target(hafc); + print(explorer, vh, exact); + hafc++; + } while (hafc != done); + std::cout << std::endl; + } + } + +} + + int main(int argc, char *argv[]) { @@ -39,6 +108,8 @@ int main(int argc, char *argv[]) Nef_polyhedron intersect = poly1.intersection(poly2); intersect.explorer().check_integrity_and_topological_planarity(); + print(intersect); + Nef_polyhedron comp = intersect.complement(); //leads to crash/exception since topological plane map of intersect is not correct! comp.explorer().check_integrity_and_topological_planarity(); return 0; From 2d9186184d1e8be3450a7d8dcacb801035c3b82b Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Wed, 23 Aug 2023 14:52:00 +0100 Subject: [PATCH 57/94] make less copies of points --- Nef_2/include/CGAL/Nef_2/PM_checker.h | 6 +-- Nef_2/include/CGAL/Nef_2/PM_overlayer.h | 48 +++++++++---------- Nef_2/include/CGAL/Nef_2/PM_persistent_PL.h | 15 +++--- Nef_2/include/CGAL/Nef_2/PM_point_locator.h | 34 ++++++------- .../CGAL/Nef_2/Segment_overlay_traits.h | 18 ++++--- 5 files changed, 63 insertions(+), 58 deletions(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_checker.h b/Nef_2/include/CGAL/Nef_2/PM_checker.h index 4000d0d497e..89d60c6cd7e 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_checker.h +++ b/Nef_2/include/CGAL/Nef_2/PM_checker.h @@ -203,7 +203,7 @@ check_boundary_is_clockwise_weakly_polygon() const for (vit = v_min = this->vertices_begin() ; vit != this->vertices_end(); ++vit) if ( K.compare_xy(point(vit), point(v_min))<0 ) v_min = vit; CGAL_assertion_msg(!is_isolated(v_min),"Minimal vertex not connected."); - Point p_min = point(v_min); + const Point& p_min = point(v_min); // determine boundary edge incident to v_min: Halfedge_const_handle e_boundary_at_v_min = first_out_edge(v_min); // all out edges are forward oriented due to minimality @@ -211,8 +211,8 @@ check_boundary_is_clockwise_weakly_polygon() const hvit(e_boundary_at_v_min), hend(hvit); do { --hvit; - Point p1 = point(target(e_boundary_at_v_min)); - Point p2 = point(target(hvit)); + const Point& p1 = point(target(e_boundary_at_v_min)); + const Point& p2 = point(target(hvit)); if ( K.orientation(p_min,p1,p2) > 0 ) { // left_turn e_boundary_at_v_min = hvit; break; diff --git a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h index 0d7fe0dd01f..d32088fa0c5 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h +++ b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h @@ -605,18 +605,18 @@ avoid the simplification for edge pairs referenced by |e|.}*/ CGAL_For_all(hfc,hend) { set_face(hfc,f); if(target(hfc) == target(e_min)) { - Point p1 = point(source(hfc)), - p2 = point(target(hfc)), - p3 = point(target(next(hfc))); + const Point& p1 = point(source(hfc)); + const Point& p2 = point(target(hfc)); + const Point& p3 = point(target(next(hfc))); if (!K.left_turn(p1,p2,p3) ) e_min = hfc; } else if ( K.compare_xy(point(target(hfc)), point(target(e_min))) < 0 ) e_min = hfc; linked[hfc]=true; } - Point p1 = point(source(e_min)), - p2 = point(target(e_min)), - p3 = point(target(next(e_min))); + const Point& p1 = point(source(e_min)); + const Point& p2 = point(target(e_min)); + const Point& p3 = point(target(next(e_min))); if ( K.orientation(p1,p2,p3) > 0 ) set_halfedge(f,e_min); // outer else set_hole(f,e_min); // store as inner } @@ -633,8 +633,8 @@ avoid the simplification for edge pairs referenced by |e|.}*/ } } else { // v not isolated Halfedge_handle e2 = first_out_edge(v), e1 = previous(e2); - Point p1 = point(source(e1)), p2 = point(v), - p3 = point(target(e2)); + const Point& p1 = point(source(e1)), p2 = point(v); + const Point& p3 = point(target(e2)); if ( has_outdeg_two(v) && mark(v) == mark(e1) && mark(v) == mark(e2) && (K.orientation(p1,p2,p3) == 0) ) @@ -838,9 +838,9 @@ void create_face_objects(const Below_info& D) const CGAL_For_all(hfc,hend) { FaceCycle[hfc]=i; // assign face cycle number if(target(hfc) == target(e_min)) { - Point p1 = point(source(hfc)), - p2 = point(target(hfc)), - p3 = point(target(next(hfc))); + const Point& p1 = point(source(hfc)); + const Point&p2 = point(target(hfc)); + const Point&p3 = point(target(next(hfc))); if (!K.left_turn(p1,p2,p3) ) e_min = hfc; } else if ( K.compare_xy(point(target(hfc)), point(target(e_min))) < 0 ) @@ -854,10 +854,10 @@ void create_face_objects(const Below_info& D) const Face_handle f_outer = this->new_face(); for (int j=0; j outer face cycle CGAL_NEF_TRACEN(" creating new face object"); Face_handle f = this->new_face(); @@ -899,9 +899,9 @@ void create_face_objects_pl(const Below_info& D) const CGAL_For_all(hfc,hend) { FaceCycle[hfc]=i; // assign face cycle number if(target(hfc) == target(e_min)) { - Point p1 = point(source(hfc)), - p2 = point(target(hfc)), - p3 = point(target(next(hfc))); + const Point& p1 = point(source(hfc)); + const Point& p2 = point(target(hfc)); + const Point& p3 = point(target(next(hfc))); if (!K.left_turn(p1,p2,p3) ) e_min = hfc; } else if ( K.compare_xy(point(target(hfc)), point(target(e_min))) < 0 ) @@ -915,10 +915,10 @@ void create_face_objects_pl(const Below_info& D) const (void)/* Face_handle f_outer = */ this->new_face(); for (int j=0; j outer face cycle CGAL_NEF_TRACEN(" creating new face object"); Face_handle f = this->new_face(); @@ -963,8 +963,8 @@ Segment segment(const Const_decorator& N, bool is_forward_edge(const Const_decorator& N, Halfedge_const_iterator hit) const -{ Point p1 = N.point(N.source(hit)); - Point p2 = N.point(N.target(hit)); +{ const Point& p1 = N.point(N.source(hit)); + const Point& p2 = N.point(N.target(hit)); return (K.compare_xy(p1,p2) < 0); } void assert_type_precondition() const diff --git a/Nef_2/include/CGAL/Nef_2/PM_persistent_PL.h b/Nef_2/include/CGAL/Nef_2/PM_persistent_PL.h index 221387e096b..278ae4589db 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_persistent_PL.h +++ b/Nef_2/include/CGAL/Nef_2/PM_persistent_PL.h @@ -72,8 +72,8 @@ struct PM_persistent_PL_traits EdgeCategory ClassifyEdge(const Graph& G, const Edge& e, const Node& u) { - Point p_u = G.point(u); - Point p_v = G.point(opposite(G,e,u)); + const Point& p_u = G.point(u); + const Point& p_v = G.point(opposite(G,e,u)); int cmpX = pK->compare_x(p_u, p_v); if ( cmpX < 0 ) return StartingNonVertical; @@ -111,7 +111,8 @@ struct PM_persistent_PL_traits Curve makeCurve(const Graph& G, const Node& n) const { return makeCurve(G.point(n)); } Curve makeCurve(const Graph& G, const Edge& e) const - { Point ps = G.point(G.source(e)), pt = G.point(G.target(e)); + { const Point& ps = G.point(G.source(e)); + const Point& pt = G.point(G.target(e)); Curve res(G.point(G.source(e)),G.point(G.target(e))); if ( pK->compare_xy(ps,pt) < 0 ) res = pK->construct_segment(ps,pt); else res = pK->construct_segment(pt,ps); @@ -135,10 +136,10 @@ struct PM_persistent_PL_traits int operator()(const Curve& s1, const Curve& s2) const { - Point a = pK->source(s1); - Point b = pK->target(s1); - Point c = pK->source(s2); - Point d = pK->target(s2); + const Point& a = pK->source(s1); + const Point& b = pK->target(s1); + const Point& c = pK->source(s2); + const Point& d = pK->target(s2); if ( a==b ) if ( c==d ) return pK->compare_y(a,c); else return cmppntseg(a, s2); diff --git a/Nef_2/include/CGAL/Nef_2/PM_point_locator.h b/Nef_2/include/CGAL/Nef_2/PM_point_locator.h index ede8d2b033a..6b12933e450 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_point_locator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_point_locator.h @@ -165,7 +165,7 @@ public: { CGAL_NEF_TRACEN("out_wedge "<number_of_vertices() == 0) CGAL_error_msg("PM_naive_point_locator: plane map is empty."); - Point p = K.source(s); + const Point& p = K.source(s); Vertex_const_iterator vit; for(vit = this->vertices_begin(); vit != this->vertices_end(); ++vit) { if ( p == point(vit) ) return make_object(vit); @@ -236,7 +236,7 @@ public: Direction dso = K.construct_direction(K.target(s),p), d_res; CGAL::Unique_hash_map visited(false); for(vit = this->vertices_begin(); vit != this->vertices_end(); ++vit) { - Point p_res, vp = point(vit); + const Point& vp = point(vit); if ( K.contains(ss,vp) ) { CGAL_NEF_TRACEN(" location via vertex at "<halfedges_begin(); eit != this->halfedges_end(); ++eit) { if ( visited[eit] ) continue; - Point se = point(source(eit)), - te = point(target(eit)); + const Point& se = point(source(eit)); + const Point& te = point(target(eit)); int o1 = K.orientation(ss,se); int o2 = K.orientation(ss,te); if ( o1 == -o2 && // internal intersection @@ -298,7 +298,7 @@ public: along |s| does not hit any object |h| of |P| with |M(h)|.}*/ { CGAL_NEF_TRACEN("naive ray_shoot "<vertices_begin(); v != this->vertices_end(); ++v) { - Point pv = point(v); + const Point& pv = point(v); if ( !K.contains(ss,pv) ) continue; CGAL_NEF_TRACEN("candidate "<K.orientation(b,d,a) > 0 && // left_turn this->K.orientation(b,d,c) < 0) ) // right_turn @@ -731,7 +731,7 @@ public: Halfedge_const_handle& e, const Tag_false& ) const { CGAL_NEF_TRACEN("target on outer facet"); - Point p = this->K.source(s); + const Point& p = this->K.source(s); Vertex_const_handle v1 = CT.vertices_begin(); Halfedge_const_handle e1 = CT.twin(CT.first_out_edge(v1)); Halfedge_around_face_const_circulator circ(e1), end(circ); @@ -782,7 +782,7 @@ public: { Segment s(ss); CGAL_NEF_TRACEN("ray_shoot "<K.is_degenerate(s) ); - Point p = this->K.source(s); + const Point& p = this->K.source(s); Direction d = this->K.construct_direction(p,s.target()); Vertex_const_handle v; Halfedge_const_handle e; @@ -813,9 +813,9 @@ public: if ( M(input_face(e)) ) // face mark return make_object(input_face(e)); - Point p1 = CT.point(CT.source(e)), - p2 = CT.point(CT.target(e)), - p3 = CT.point(CT.target(next(e))); + const Point& p1 = CT.point(CT.source(e)); + const Point& p2 = CT.point(CT.target(e)); + const Point& p3 = CT.point(CT.target(next(e))); int or1 = this->K.orientation(p,s.target(),p1); int or2 = this->K.orientation(p,s.target(),p2); int or3 = this->K.orientation(p,s.target(),p3); @@ -999,7 +999,7 @@ PM_point_locator::walk_in_triangulation(const Point& q) const return Object_handle(); Halfedge_const_handle e; - Point p = CT.point(v); + const Point& p = CT.point(v); if ( p == q ) return make_object(v); // Segment s = this->K.construct_segment(p,q); Direction dir = this->K.construct_direction(p,q); diff --git a/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h b/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h index 7e4bfc619b6..6ecc25669e0 100644 --- a/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h +++ b/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h @@ -161,11 +161,13 @@ public: } - Point_2 source(ISegment is) const + Point_2 source(const ISegment& is) const { return K.source(is->first()); } - Point_2 target(ISegment is) const + + Point_2 target(const ISegment& is) const { return K.target(is->first()); } - ITERATOR original(ISegment s) const + + ITERATOR original(xonst ISegment& s) const { return s->second(); } int orientation(ST_item sit, const Point_2& p) const @@ -474,7 +476,7 @@ public: public: compare_segs_at_sweepline(const Point_2& pi, - ISegment s1, ISegment s2, + ISegment s1, ISegment s2, const GEOMETRY& k) : p(pi), s_bottom(s1), s_top(s2), K(k) {} @@ -673,6 +675,7 @@ public: Point_2 source(ISegment is) const { return K.source(is->first); } + Point_2 target(ISegment is) const { return K.target(is->first); } @@ -687,7 +690,8 @@ public: *sit1 == &sh || *sit2 == &sl || *sit2 == &sh) return false; - Point_2 ps = source(*sit2), pt = target(*sit2); + const Point_2& ps = source(*sit2); + const Point_2& pt = target(*sit2); return ( orientation(sit1,ps)==0 && orientation(sit1,pt)==0 ); } @@ -758,8 +762,8 @@ public: continue; // ignore zero-length segments regarding YS } - Point_2 p = *it1; - Point_2 q = *it2; + const Point_2& p = *it1; + const Point_2& q = *it2; Segment_2 s1; if ( K.compare_xy(p,q) < 0 ) From 0efc2cdc0380afd0969f4012d1900cf03f430329 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Thu, 24 Aug 2023 09:59:12 +0200 Subject: [PATCH 58/94] Apply suggestions from code review Co-authored-by: Sebastien Loriot --- Nef_2/include/CGAL/Nef_2/PM_overlayer.h | 3 ++- Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h index d32088fa0c5..662efd33c64 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h +++ b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h @@ -646,8 +646,9 @@ avoid the simplification for edge pairs referenced by |e|.}*/ for (f = this->faces_begin(); f != fend; f=fn) { fn=f; ++fn; Union_find_handle pit = Pitem[f]; - if (unify_faces.find(pit) != pit) { Union_find_handle root = unify_faces.find(pit); + if (root != pit) { + for(Isolated_vertex_iterator ivi = isolated_vertices_begin(f); ivi != isolated_vertices_end(f); ++ivi){ ivi->set_face(*root); link_as_isolated_vertex(*root,ivi); diff --git a/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h b/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h index 6ecc25669e0..1eecd047efd 100644 --- a/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h +++ b/Nef_2/include/CGAL/Nef_2/Segment_overlay_traits.h @@ -167,7 +167,7 @@ public: Point_2 target(const ISegment& is) const { return K.target(is->first()); } - ITERATOR original(xonst ISegment& s) const + ITERATOR original(const ISegment& s) const { return s->second(); } int orientation(ST_item sit, const Point_2& p) const From b3192c9f4d8a67dd2a96eb940b0485dd4b85b1a3 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Thu, 24 Aug 2023 13:30:44 +0100 Subject: [PATCH 59/94] Add using Base::isolated_vertices_{begin,end} --- Nef_2/include/CGAL/Nef_2/PM_overlayer.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h index 662efd33c64..217934fa185 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_overlayer.h +++ b/Nef_2/include/CGAL/Nef_2/PM_overlayer.h @@ -336,6 +336,8 @@ public: using Base::set_isolated_vertex; using Base::has_outdeg_two; using Base::merge_halfedge_pairs_at_target; + using Base::isolated_vertices_begin; + using Base::isolated_vertices_end; // C++ is really friendly: #define USECMARK(t) const Mark& mark(t h) const { return Base::mark(h); } From 608d0c81c4ee7223f2997203602dbffc18aef956 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Thu, 24 Aug 2023 14:56:48 +0200 Subject: [PATCH 60/94] use a macro --- .../PackageDescription.txt | 2 +- .../PackageDescription.txt | 2 +- .../doc/resources/1.8.13/BaseDoxyfile.in | 3 +- .../doc/resources/1.9.6/BaseDoxyfile.in | 3 +- .../PackageDescription.txt | 4 +-- Nef_3/doc/Nef_3/PackageDescription.txt | 2 +- .../PackageDescription.txt | 2 +- .../doc/Point_set_3/PackageDescription.txt | 2 +- Polygon/doc/Polygon/PackageDescription.txt | 4 +-- .../doc/Polyhedron/PackageDescription.txt | 2 +- .../doc/Surface_mesh/PackageDescription.txt | 2 +- .../PackageDescription.txt | 2 +- .../Triangulation_2/PackageDescription.txt | 2 +- .../Triangulation_3/PackageDescription.txt | 2 +- .../Voronoi_diagram_2/PackageDescription.txt | 2 +- Weights/doc/Weights/PackageDescription.txt | 36 +++++++++---------- 16 files changed, 37 insertions(+), 35 deletions(-) diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt index a23221fc04f..d74df4237fc 100644 --- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt +++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/PackageDescription.txt @@ -47,7 +47,7 @@ namespace ArrTraits {} /// \ingroup PkgArrangementOnSurface2Ref /*! - `#include ` +\cgalInclude{CGAL/draw_arrangement_2.h} */ /// \defgroup PkgArrangementOnSurface2Draw Drawing /// \ingroup PkgArrangementOnSurface2Ref diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt b/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt index 3050f0a5654..f67e57f7e1a 100644 --- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt +++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/PackageDescription.txt @@ -7,7 +7,7 @@ namespace ArrDirectionalTraits {} /*! - `#include ` +\cgalInclude{CGAL/draw_polygon_set_2.h} */ /// \defgroup PkgDrawPolygonSet2 Draw a 2D Polygon Set /// \ingroup PkgBooleanSetOperations2Ref diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index 15a863470a2..13e729df74f 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -190,7 +190,8 @@ ALIASES = "cgal=%CGAL" \ "cgalParamSectionEnd=\cgalParamNEnd" \ "cgalParamPrecondition{1}=
  • Precondition: \1
  • " \ "cgalBigO{1}=\f$O(\1)\f$" \ - "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" + "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" \ + "cgalInclude{1}=\#`include<\1>`" # Doxygen selects the parser to use depending on the extension of the files it # parses. With this tag you can assign which parser to use for a given diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 67b8fd643f3..5deea5dec05 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -199,7 +199,8 @@ ALIASES = "cgal=%CGAL" \ "cgalParamSectionEnd=\cgalParamNEnd" \ "cgalParamPrecondition{1}=
  • Precondition: \1
  • " \ "cgalBigO{1}=\f$O(\1)\f$" \ - "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" + "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" \ + "cgalInclude{1}=`#include<\1>`" # Doxygen selects the parser to use depending on the extension of the files it # parses. With this tag you can assign which parser to use for a given diff --git a/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt b/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt index 03264451c0c..ad0479d5128 100644 --- a/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt +++ b/Linear_cell_complex/doc/Linear_cell_complex/PackageDescription.txt @@ -12,13 +12,13 @@ /// \ingroup PkgLinearCellComplexRef /*! High-level operations. - `#include ` +\cgalInclude{CGAL/Linear_cell_complex_operations.h} */ /// \defgroup PkgLinearCellComplexOperations Operations for Linear Cell Complex /// \ingroup PkgLinearCellComplexRef /*! - `#include ` +\cgalInclude{CGAL/draw_linear_cell_complex.h} */ /// \defgroup PkgDrawLinearCellComplex Draw a Linear Cell Complex /// \ingroup PkgLinearCellComplexRef diff --git a/Nef_3/doc/Nef_3/PackageDescription.txt b/Nef_3/doc/Nef_3/PackageDescription.txt index db62abd9bf7..be928e299ee 100644 --- a/Nef_3/doc/Nef_3/PackageDescription.txt +++ b/Nef_3/doc/Nef_3/PackageDescription.txt @@ -4,7 +4,7 @@ /// \ingroup PkgNef3Ref /*! Draw. - `#include ` +\cgalInclude{CGAL/draw_nef_3.h} */ /// \defgroup PkgDrawNef3 Draw a Nef Polyhedron /// \ingroup PkgNef3Ref diff --git a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt index 767fc2b01e0..00c17ceec12 100644 --- a/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt +++ b/Periodic_2_triangulation_2/doc/Periodic_2_triangulation_2/PackageDescription.txt @@ -16,7 +16,7 @@ /// \ingroup PkgPeriodic2Triangulation2Ref /*! Draw. - `#include ` +\cgalInclude{CGAL/draw_periodic_2_triangulation_2.h} */ /// \defgroup PkgDrawPeriodic2Triangulation2 Draw a 2D Periodic Triangulation /// \ingroup PkgPeriodic2Triangulation2Ref diff --git a/Point_set_3/doc/Point_set_3/PackageDescription.txt b/Point_set_3/doc/Point_set_3/PackageDescription.txt index c6d433e20bf..afa3d9882f2 100644 --- a/Point_set_3/doc/Point_set_3/PackageDescription.txt +++ b/Point_set_3/doc/Point_set_3/PackageDescription.txt @@ -1,7 +1,7 @@ /// \defgroup PkgPointSet3Ref 3D Point Set Reference /*! - `#include ` +\cgalInclude{CGAL/draw_point_set_3.h} */ /// \defgroup PkgDrawPointSet3D Draw a 3D Point Set /// \ingroup PkgPointSet3Ref diff --git a/Polygon/doc/Polygon/PackageDescription.txt b/Polygon/doc/Polygon/PackageDescription.txt index fd7cd1f7e0c..49c33a81228 100644 --- a/Polygon/doc/Polygon/PackageDescription.txt +++ b/Polygon/doc/Polygon/PackageDescription.txt @@ -7,13 +7,13 @@ /// \ingroup PkgPolygon2Ref /*! - `#include ` +\cgalInclude{CGAL/draw_polygon_2.h} */ /// \defgroup PkgDrawPolygon2 Draw a 2D Polygon /// \ingroup PkgPolygon2Ref /*! - `#include ` +\cgalInclude{CGAL/draw_polygon_with_holes_2.h} */ /// \defgroup PkgDrawPolygonWithHoles2 Draw a 2D Polygon with Holes /// \ingroup PkgPolygon2Ref diff --git a/Polyhedron/doc/Polyhedron/PackageDescription.txt b/Polyhedron/doc/Polyhedron/PackageDescription.txt index 12ee7940d94..780ed734446 100644 --- a/Polyhedron/doc/Polyhedron/PackageDescription.txt +++ b/Polyhedron/doc/Polyhedron/PackageDescription.txt @@ -6,7 +6,7 @@ /// \ingroup PkgPolyhedronRef /*! - `#include ` +\cgalInclude{CGAL/draw_polyhedron.h} */ /// \defgroup PkgDrawPolyhedron Draw a Polyhedron 3 /// \ingroup PkgPolyhedronRef diff --git a/Surface_mesh/doc/Surface_mesh/PackageDescription.txt b/Surface_mesh/doc/Surface_mesh/PackageDescription.txt index 4278f42d86c..84829acb9b4 100644 --- a/Surface_mesh/doc/Surface_mesh/PackageDescription.txt +++ b/Surface_mesh/doc/Surface_mesh/PackageDescription.txt @@ -1,7 +1,7 @@ /// \defgroup PkgSurface_mesh Surface Mesh Reference /*! - `#include ` +\cgalInclude{CGAL/draw_surface_mesh.h} */ /// \defgroup PkgDrawSurfaceMesh Draw a Surface Mesh /// \ingroup PkgSurface_mesh diff --git a/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt b/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt index 7087216cd1a..b39b30e8f93 100644 --- a/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt +++ b/Surface_mesh_topology/doc/Surface_mesh_topology/PackageDescription.txt @@ -7,7 +7,7 @@ /// \ingroup PkgSurfaceMeshTopologyRef /*! - `#include ` +\cgalInclude{CGAL/draw_face_graph_with_paths.h} */ /// \defgroup PkgDrawFaceGraphWithPaths Draw a Mesh with Paths /// \ingroup PkgSurfaceMeshTopologyRef diff --git a/Triangulation_2/doc/Triangulation_2/PackageDescription.txt b/Triangulation_2/doc/Triangulation_2/PackageDescription.txt index f9e1d3a2c04..2f10c201757 100644 --- a/Triangulation_2/doc/Triangulation_2/PackageDescription.txt +++ b/Triangulation_2/doc/Triangulation_2/PackageDescription.txt @@ -14,7 +14,7 @@ /// \ingroup PkgTriangulation2Ref /*! - `#include ` +\cgalInclude{CGAL/draw_triangulation_2.h} */ /// \defgroup PkgDrawTriangulation2 Draw a Triangulation 2 /// \ingroup PkgTriangulation2Ref diff --git a/Triangulation_3/doc/Triangulation_3/PackageDescription.txt b/Triangulation_3/doc/Triangulation_3/PackageDescription.txt index b1bbaf9f3ac..df07b990016 100644 --- a/Triangulation_3/doc/Triangulation_3/PackageDescription.txt +++ b/Triangulation_3/doc/Triangulation_3/PackageDescription.txt @@ -13,7 +13,7 @@ /// \ingroup PkgTriangulation3Ref /*! - `#include ` +\cgalInclude{CGAL/draw_triangulation_3.h} */ /// \defgroup PkgDrawTriangulation3 Draw a Triangulation 3 /// \ingroup PkgTriangulation3Ref diff --git a/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt b/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt index dc6ca27d40a..b109a0213d9 100644 --- a/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt +++ b/Voronoi_diagram_2/doc/Voronoi_diagram_2/PackageDescription.txt @@ -13,7 +13,7 @@ /// \ingroup PkgVoronoiDiagram2Ref /*! - `#include ` +\cgalInclude{CGAL/draw_voronoi_diagram_2.h} */ /// \defgroup PkgDrawVoronoiDiagram2 Draw a 2D Voronoi Diagram /// \ingroup PkgVoronoiDiagram2Ref diff --git a/Weights/doc/Weights/PackageDescription.txt b/Weights/doc/Weights/PackageDescription.txt index eb5f9bf451c..038724d39ad 100644 --- a/Weights/doc/Weights/PackageDescription.txt +++ b/Weights/doc/Weights/PackageDescription.txt @@ -19,7 +19,7 @@ Models and functions that can be used to compute weights which have a simple ana \defgroup PkgWeightsRefUniformWeights Uniform Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/uniform_weights.h} This weight is always equal to 1. @@ -33,7 +33,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefShepardWeights Shepard Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/shepard_weights.h} This weight is computed as \f$w = \frac{1}{d^a}\f$ @@ -61,7 +61,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefInverseDistanceWeights Inverse Distance Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/inverse_distance_weights.h} This weight is computed as \f$w = \frac{1}{d}\f$ @@ -90,7 +90,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefThreePointFamilyWeights Three Point Family Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/three_point_family_weights.h} This weight is computed as \f$w = \frac{d_2^a A_0 - d^a B + d_0^a A_2}{A_0 A_2}\f$ @@ -129,7 +129,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefWachspressWeights Wachspress Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/wachspress_weights.h} This weight is computed as \f$w = \frac{C}{A_0 A_2}\f$ @@ -160,7 +160,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefAuthalicWeights Authalic Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/authalic_weights.h} This weight is computed as \f$w = 2 \frac{\cot\beta + \cot\gamma}{d^2}\f$ @@ -190,7 +190,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefMeanValueWeights Mean Value Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/mean_value_weights.h} This weight is computed as \f$w = \pm 2 \sqrt{\frac{2 (d_0 d_2 - D)}{(d d_0 + D_0)(d d_2 + D_2)}}\f$ @@ -227,7 +227,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefTangentWeights Tangent Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/tangent_weights.h} This weight is computed as \f$w = 2 \frac{t_1 + t_2}{d}\f$, where @@ -262,7 +262,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefDiscreteHarmonicWeights Discrete Harmonic Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/discrete_harmonic_weights.h} This weight is computed as \f$w = \frac{d_2^2 A_0 - d^2 B + d_0^2 A_2}{A_0 A_2}\f$ @@ -293,7 +293,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefCotangentWeights Cotangent Weight \ingroup PkgWeightsRefAnalytic -`#include ` +\cgalInclude{CGAL/Weights/cotangent_weights.h} This weight is computed as \f$w = 2 (\cot\beta + \cot\gamma)\f$ @@ -328,7 +328,7 @@ to polygons. These weights are then normalized in order to obtain barycentric co \defgroup PkgWeightsRefBarycentricWachspressWeights Wachspress Weights \ingroup PkgWeightsRefBarycentric -`#include ` +\cgalInclude{CGAL/Weights/wachspress_weights.h} Wachspress weights which can be computed for a query point with respect to the vertices of a strictly convex polygon. @@ -339,7 +339,7 @@ vertices of a strictly convex polygon. \defgroup PkgWeightsRefBarycentricMeanValueWeights Mean Value Weights \ingroup PkgWeightsRefBarycentric -`#include ` +\cgalInclude{CGAL/Weights/mean_value_weights.h} Mean value weights which can be computed for a query point with respect to the vertices of a simple polygon. @@ -350,7 +350,7 @@ vertices of a simple polygon. \defgroup PkgWeightsRefBarycentricDiscreteHarmonicWeights Discrete Harmonic Weights \ingroup PkgWeightsRefBarycentric -`#include ` +\cgalInclude{CGAL/Weights/discrete_harmonic_weights.h} Discrete Harmonic weights which can be computed for a query point with respect to the vertices of a strictly convex polygon. @@ -368,7 +368,7 @@ used to balance other weights. \defgroup PkgWeightsRefUniformRegionWeights Uniform Region Weight \ingroup PkgWeightsRefRegions -`#include ` +\cgalInclude{CGAL/Weights/uniform_region_weights.h} This weight is always equal to 1. @@ -382,7 +382,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefTriangularRegionWeights Triangular Region Weight \ingroup PkgWeightsRefRegions -`#include ` +\cgalInclude{CGAL/Weights/triangular_region_weights.h} This weight is the area of the shaded region in the figure below. The region is the triangle `[p, q, r]`. @@ -401,7 +401,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefBarycentricRegionWeights Barycentric Region Weight \ingroup PkgWeightsRefRegions -`#include ` +\cgalInclude{CGAL/Weights/barycentric_region_weights.h} This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the barycenter of @@ -421,7 +421,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefVoronoiRegionWeights Voronoi Region Weight \ingroup PkgWeightsRefRegions -`#include ` +\cgalInclude{CGAL/Weights/voronoi_region_weights.h} This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the circumcenter of @@ -443,7 +443,7 @@ a model of `AnalyticWeightTraits_3` for 3D points \defgroup PkgWeightsRefMixedVoronoiRegionWeights Mixed Voronoi Region Weight \ingroup PkgWeightsRefRegions -`#include ` +\cgalInclude{CGAL/Weights/mixed_voronoi_region_weights.h} This weight is the area of the shaded region in the figure below. The region is formed by the two midpoints of the edges incident to `q` and the circumcenter of From 3a98df102ad8316984049740ccd6b72d3feee96e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 28 Aug 2023 08:27:28 +0200 Subject: [PATCH 61/94] avoid calling RG on an empty range --- .../Polygon_mesh_processing/region_growing.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h index 4aa40c42e38..cb19cbc7098 100644 --- a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h +++ b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h @@ -373,15 +373,18 @@ detect_corners_of_regions( Line_region line_region(np.segment_map(pgraph.segment_map())); - Line_sorting line_sorting( - segment_range, pgraph, CGAL::parameters::segment_map(pgraph.segment_map())); - line_sorting.sort(); - - RG_lines rg_lines( - segment_range, pgraph, line_region); - std::vector< std::pair > > subregions; // TODO dump into pmap lines - rg_lines.detect(std::back_inserter(subregions)); + if (!segment_range.empty()) + { + Line_sorting line_sorting( + segment_range, pgraph, CGAL::parameters::segment_map(pgraph.segment_map())); + line_sorting.sort(); + + RG_lines rg_lines( + segment_range, pgraph, line_region); + + rg_lines.detect(std::back_inserter(subregions)); + } #ifdef CGAL_DEBUG_DETECT_CORNERS_OF_REGIONS std::ofstream debug_corners("corners.xyz"); From 6ac6cf0ff523075ef782d7cc73cd3892dadcd9b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 28 Aug 2023 08:27:57 +0200 Subject: [PATCH 62/94] fix debug --- .../Polygon_mesh_processing/region_growing.h | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h index cb19cbc7098..4f501321309 100644 --- a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h +++ b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h @@ -419,11 +419,13 @@ detect_corners_of_regions( for (vertex_descriptor v : line_vertices) if (vertex_count[v]==1) { -#ifdef CGAL_DEBUG_DETECT_CORNERS_OF_REGIONS - debug_corners << mesh.point(v) << "\n"; -#endif if (get(corner_id_map, v) == std::size_t(-1)) + { +#ifdef CGAL_DEBUG_DETECT_CORNERS_OF_REGIONS + debug_corners << mesh.point(v) << "\n"; +#endif put(corner_id_map, v, cid++); + } } } @@ -435,9 +437,19 @@ detect_corners_of_regions( #endif put(ecm, e, true); if (get(corner_id_map, source(e, mesh))==std::size_t(-1)) + { +#ifdef CGAL_DEBUG_DETECT_CORNERS_OF_REGIONS + debug_corners << mesh.point(source(e, mesh)) << "\n"; +#endif put(corner_id_map, source(e, mesh), cid++); + } if (get(corner_id_map, target(e, mesh))==std::size_t(-1)) + { +#ifdef CGAL_DEBUG_DETECT_CORNERS_OF_REGIONS + debug_corners << mesh.point(target(e, mesh)) << "\n"; +#endif put(corner_id_map, target(e, mesh), cid++); + } } return cid; From 77145855daf303023b531443f6b80cff90f0dfb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 28 Aug 2023 08:29:08 +0200 Subject: [PATCH 63/94] allow external tag function in remeshing with common interface --- .../remesh_planar_patches.h | 51 +++++++++++++++---- 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/remesh_planar_patches.h b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/remesh_planar_patches.h index fd007d5915f..03171af70bc 100644 --- a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/remesh_planar_patches.h +++ b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/remesh_planar_patches.h @@ -1019,10 +1019,11 @@ void propagate_corner_status( template + typename VertexPointMap, + typename TagFunction> bool decimate_meshes_with_common_interfaces_impl(TriangleMeshRange& meshes, MeshMap mesh_map, - double coplanar_cos_threshold, + const TagFunction& tag_function, const std::vector& vpms, bool do_not_triangulate_faces) { @@ -1033,7 +1034,6 @@ bool decimate_meshes_with_common_interfaces_impl(TriangleMeshRange& meshes, typedef typename graph_traits::vertex_descriptor vertex_descriptor; typedef typename graph_traits::edge_descriptor edge_descriptor; typedef typename graph_traits::face_descriptor face_descriptor; - CGAL_assertion(coplanar_cos_threshold<0); typedef typename graph_traits::halfedge_descriptor halfedge_descriptor; // declare and init all property maps @@ -1128,13 +1128,11 @@ bool decimate_meshes_with_common_interfaces_impl(TriangleMeshRange& meshes, put(face_cc_ids_maps[mesh_id], f, -1); if (!mesh_has_non_manifold_vertices[mesh_id]) - nb_corners_and_nb_cc_all[mesh_id] = - tag_corners_and_constrained_edges(tm, - coplanar_cos_threshold, - vertex_corner_id_maps[mesh_id], - edge_is_constrained_maps[mesh_id], - face_cc_ids_maps[mesh_id], - vpms[mesh_id]); + nb_corners_and_nb_cc_all[mesh_id] = tag_function(tm, + vertex_corner_id_maps[mesh_id], + edge_is_constrained_maps[mesh_id], + face_cc_ids_maps[mesh_id], + vpms[mesh_id]); else { nb_corners_and_nb_cc_all[mesh_id]={0,1}; @@ -1274,6 +1272,39 @@ bool decimate_meshes_with_common_interfaces_impl(TriangleMeshRange& meshes, return res; } +template +bool decimate_meshes_with_common_interfaces_impl(TriangleMeshRange& meshes, + MeshMap mesh_map, + double coplanar_cos_threshold, + const std::vector& vpms, + bool do_not_triangulate_faces) +{ + typedef typename boost::property_traits::value_type Triangle_mesh; + auto tag_function = [coplanar_cos_threshold](Triangle_mesh& tm, + typename boost::property_map >::type vertex_corner_id, + typename boost::property_map >::type edge_is_constrained, + typename boost::property_map >::type face_cc_ids, + VertexPointMap vpm) + { + return tag_corners_and_constrained_edges(tm, + coplanar_cos_threshold, + vertex_corner_id, + edge_is_constrained, + face_cc_ids, + vpm); + }; + + return decimate_meshes_with_common_interfaces_impl(meshes, + mesh_map, + tag_function, + vpms, + do_not_triangulate_faces); + +} + } //end of namespace Planar_segmentation From caa1daa98ec256ae6f8505bdaa6848e8eecc0648 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 28 Aug 2023 08:33:47 +0200 Subject: [PATCH 64/94] bug fix in neighbor query to accomodate constraints in remesh with common interface --- .../Polygon_mesh_processing/region_growing.h | 55 ++++++++++++++++++- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h index 4f501321309..df6bb67e908 100644 --- a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h +++ b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h @@ -21,6 +21,7 @@ #include #include #include +#include namespace CGAL { namespace Polygon_mesh_processing { @@ -51,6 +52,48 @@ namespace internal { fill_plane_or_vector_map(normals, region_map, typename boost::property_traits::value_type()); } + +template +class One_ring_neighbor_query_with_constraints +{ + using face_descriptor = typename boost::graph_traits::face_descriptor; + using halfedge_descriptor = typename boost::graph_traits::halfedge_descriptor; + using Face_graph = PolygonMesh; +public: + + using Item = typename boost::graph_traits::face_descriptor; + using Region = std::vector; + + One_ring_neighbor_query_with_constraints(const PolygonMesh& pmesh, ECM ecm) + : m_face_graph(pmesh) + , m_ecm(ecm) + {} + + void operator()( + const Item query, + std::vector& neighbors) const { + + neighbors.clear(); + const auto query_hedge = halfedge(query, m_face_graph); + + for (halfedge_descriptor h : halfedges_around_face(query_hedge, m_face_graph)) + { + if (get(m_ecm, edge(h, m_face_graph))) continue; + face_descriptor f=face(opposite(h,m_face_graph), m_face_graph); + if (f != boost::graph_traits::null_face()) + { + neighbors.push_back(f); + } + } + } + + /// @} + +private: + const Face_graph& m_face_graph; + ECM m_ecm; +}; + } /*! @@ -140,13 +183,21 @@ region_growing_of_planes_on_faces(const PolygonMesh& mesh, using parameters::choose_parameter; using parameters::get_parameter; + typedef typename boost::graph_traits::edge_descriptor edge_descriptor; + typedef typename internal_np::Lookup_named_param_def < + internal_np::edge_is_constrained_t, + NamedParameters, + Static_boolean_property_map // default (no constraint pmap) + > ::type ECM; + ECM ecm = choose_parameter(get_parameter(np, internal_np::edge_is_constrained), + Static_boolean_property_map()); - using Neighbor_query = RG_PM::One_ring_neighbor_query; + using Neighbor_query = internal::One_ring_neighbor_query_with_constraints; using Region_type = RG_PM::Least_squares_plane_fit_region; using Sorting = RG_PM::Least_squares_plane_fit_sorting; using Region_growing = CGAL::Shape_detection::Region_growing; - Neighbor_query neighbor_query(mesh); + Neighbor_query neighbor_query(mesh, ecm); Region_type region_type(mesh, np); Sorting sorting(mesh, neighbor_query, np); sorting.sort(); From ab023626e0f22022a142e5e7aa25894e14e0b5bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 28 Aug 2023 09:05:03 +0200 Subject: [PATCH 65/94] init the corner id map --- .../include/CGAL/Polygon_mesh_processing/region_growing.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h index df6bb67e908..9d130846e05 100644 --- a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h +++ b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h @@ -397,6 +397,12 @@ detect_corners_of_regions( put(ecm, e, true); } + //init to -1 by default + for(vertex_descriptor v : vertices(mesh)) + { + put(corner_id_map, v, std::size_t(-1)); + } + // filter trivial edges: incident to a plane with only one face // such an edge cannot be removed and its vertices are corners std::vector nb_faces_per_patch(nb_regions,0); From a358aac0b1cda36f9897d5bf39e24c9a824dcbc1 Mon Sep 17 00:00:00 2001 From: Sebastien Loriot Date: Mon, 28 Aug 2023 13:40:10 +0200 Subject: [PATCH 66/94] remove unused variable --- Nef_2/include/CGAL/Nef_2/PM_point_locator.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Nef_2/include/CGAL/Nef_2/PM_point_locator.h b/Nef_2/include/CGAL/Nef_2/PM_point_locator.h index 6b12933e450..4f05971c16b 100644 --- a/Nef_2/include/CGAL/Nef_2/PM_point_locator.h +++ b/Nef_2/include/CGAL/Nef_2/PM_point_locator.h @@ -165,7 +165,6 @@ public: { CGAL_NEF_TRACEN("out_wedge "< Date: Mon, 28 Aug 2023 15:19:27 +0200 Subject: [PATCH 67/94] fix issue Sphere_3 intersection with interval arithmetic fails on 5.6 (works on 5.2.2) #7666 There was a compilation error because the conversion from `Needs_FT>` to 'bool' requires two user-defined conversions. With an explicit conversion, that compiles and works. --- .../CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h b/Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h index 43a371937ec..c93094bd1d2 100644 --- a/Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h +++ b/Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h @@ -278,6 +278,7 @@ namespace CGAL { typedef typename SK::Point_3 Point_3; typedef typename SK::Sphere_3 Sphere_3; typedef typename SK::Algebraic_kernel Algebraic_kernel; + typedef typename SK::Boolean Bool; typedef typename SK3_Intersection_traits::type result_type; CGAL_kernel_precondition(!s1.is_degenerate()); @@ -317,7 +318,7 @@ namespace CGAL { return res; } if(const Circle_3* c = CGAL::Intersections::internal::intersect_get(v)) { - if(SK().has_on_3_object()(s3, *c)) { + if(static_cast(SK().has_on_3_object()(s3, *c))) { *res++ = result_type(*c); } return res; From ea46c6f28252ea4010b610cc883cebbe5ea1f6a1 Mon Sep 17 00:00:00 2001 From: Efi Fogel Date: Mon, 28 Aug 2023 16:24:03 +0300 Subject: [PATCH 68/94] Pacify msvc17: explicitly name the (non-const) iterator type --- .../include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h index 5aa184d4d0c..2889f219237 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h +++ b/Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_zone_2_impl.h @@ -946,7 +946,9 @@ _leftmost_intersection_with_face_boundary(Face_handle face, bool on_boundary) { // Traverse the isolated vertices inside the face (if there exist any), and // check whether an isolated vertex lies on the curve. - for (auto iv_it = face->isolated_vertices_begin(); + // MSVC17 requires an explicit (non-const) type for the iterator. + typename Arrangement_2::Isolated_vertex_iterator iv_it; + for (iv_it = face->isolated_vertices_begin(); iv_it != face->isolated_vertices_end(); ++iv_it) { // If the isolated vertex is not in the x-range of our curve, disregard it. if (! is_in_x_range(m_cv, iv_it->point())) continue; From 256c87d986a63ef81c0a0039cb1245266459ba77 Mon Sep 17 00:00:00 2001 From: Rebecca Dengate Date: Tue, 29 Aug 2023 13:34:39 +1000 Subject: [PATCH 69/94] Fixes overflow when reading in large images, see issue #7664 --- CGAL_ImageIO/include/CGAL/ImageIO_impl.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CGAL_ImageIO/include/CGAL/ImageIO_impl.h b/CGAL_ImageIO/include/CGAL/ImageIO_impl.h index 8dbef016b1c..c66ae80d75e 100644 --- a/CGAL_ImageIO/include/CGAL/ImageIO_impl.h +++ b/CGAL_ImageIO/include/CGAL/ImageIO_impl.h @@ -1242,7 +1242,7 @@ static void _swapImageData( _image *im ) Swap bytes depending on the endianness and the current architecture */ CGAL_INLINE_FUNCTION int _readImageData(_image *im) { - unsigned long size, nread; + size_t size, nread; if(im->openMode != OM_CLOSE) { size = im->xdim * im->ydim * im->zdim * im->vdim * im->wdim; @@ -1279,7 +1279,7 @@ int _readImageData(_image *im) { Swap bytes depending on the endianness and the current architecture. */ CGAL_INLINE_FUNCTION int _readNonInterlacedImageData(_image *im) { - unsigned long size, nread; + size_t size, nread; unsigned char **vp, *buf; unsigned int i, j, k, v, w; @@ -1356,7 +1356,7 @@ int _readNonInterlacedImageData(_image *im) { been read by _readImageHeader. The image buffer is interlaced. */ CGAL_INLINE_FUNCTION int _readNonInterlacedFileData(_image *im) { - unsigned long size, nread; + size_t size, nread; unsigned char *ptr1, *vp, *buf; unsigned int i, j, k, v, w; From 3527e8e8d065fcffa8140e865d4099cce2a3f14c Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Tue, 29 Aug 2023 09:37:51 +0200 Subject: [PATCH 70/94] prefer std::size_t --- CGAL_ImageIO/include/CGAL/ImageIO_impl.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CGAL_ImageIO/include/CGAL/ImageIO_impl.h b/CGAL_ImageIO/include/CGAL/ImageIO_impl.h index c66ae80d75e..fefbd0d4cc8 100644 --- a/CGAL_ImageIO/include/CGAL/ImageIO_impl.h +++ b/CGAL_ImageIO/include/CGAL/ImageIO_impl.h @@ -1242,7 +1242,7 @@ static void _swapImageData( _image *im ) Swap bytes depending on the endianness and the current architecture */ CGAL_INLINE_FUNCTION int _readImageData(_image *im) { - size_t size, nread; + std::size_t size, nread; if(im->openMode != OM_CLOSE) { size = im->xdim * im->ydim * im->zdim * im->vdim * im->wdim; @@ -1279,7 +1279,7 @@ int _readImageData(_image *im) { Swap bytes depending on the endianness and the current architecture. */ CGAL_INLINE_FUNCTION int _readNonInterlacedImageData(_image *im) { - size_t size, nread; + std::size_t size, nread; unsigned char **vp, *buf; unsigned int i, j, k, v, w; @@ -1356,7 +1356,7 @@ int _readNonInterlacedImageData(_image *im) { been read by _readImageHeader. The image buffer is interlaced. */ CGAL_INLINE_FUNCTION int _readNonInterlacedFileData(_image *im) { - size_t size, nread; + std::size_t size, nread; unsigned char *ptr1, *vp, *buf; unsigned int i, j, k, v, w; From 95e56a77e968f124975514e9eb7fccf8bdab49aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Wed, 30 Aug 2023 10:13:35 +0200 Subject: [PATCH 71/94] remove invalid end of group --- .../include/CGAL/Polygon_mesh_processing/region_growing.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h index 9d130846e05..92571c43b1d 100644 --- a/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h +++ b/Shape_detection/include/CGAL/Polygon_mesh_processing/region_growing.h @@ -87,8 +87,6 @@ public: } } - /// @} - private: const Face_graph& m_face_graph; ECM m_ecm; From a2d1b186408a43cf5ca164fc98c86fcf0ba378fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Wed, 30 Aug 2023 16:44:45 +0200 Subject: [PATCH 72/94] fix unused variables --- Nef_2/test/Nef_2/issue7662.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Nef_2/test/Nef_2/issue7662.cpp b/Nef_2/test/Nef_2/issue7662.cpp index 85dd1503cf6..41432aa3e8e 100644 --- a/Nef_2/test/Nef_2/issue7662.cpp +++ b/Nef_2/test/Nef_2/issue7662.cpp @@ -81,7 +81,7 @@ void print(const Nef_polyhedron& poly, bool exact = false) -int main(int argc, char *argv[]) +int main() { Point p1[] = { Point(0,0), From f759a6134908d9c7c0eeb138a9b3aea39ab9bbd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 4 Sep 2023 14:24:48 +0200 Subject: [PATCH 73/94] correct size() in case some points were removed --- Spatial_searching/include/CGAL/Kd_tree.h | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Spatial_searching/include/CGAL/Kd_tree.h b/Spatial_searching/include/CGAL/Kd_tree.h index 239d3a2b290..1a763507d09 100644 --- a/Spatial_searching/include/CGAL/Kd_tree.h +++ b/Spatial_searching/include/CGAL/Kd_tree.h @@ -137,7 +137,7 @@ private: mutable CGAL_MUTEX building_mutex;//mutex used to protect const calls inducing build() #endif bool built_; - bool removed_; + std::size_t removed_=0; // protected copy constructor Kd_tree(const Tree& tree) @@ -278,13 +278,13 @@ private: public: Kd_tree(Splitter s = Splitter(),const SearchTraits traits=SearchTraits()) - : traits_(traits),split(s), built_(false), removed_(false) + : traits_(traits),split(s), built_(false) {} template Kd_tree(InputIterator first, InputIterator beyond, Splitter s = Splitter(),const SearchTraits traits=SearchTraits()) - : traits_(traits), split(s), pts(first, beyond), built_(false), removed_(false) + : traits_(traits), split(s), pts(first, beyond), built_(false) { } bool empty() const { @@ -324,7 +324,7 @@ public: // must call invalidate_build() first. CGAL_assertion(!is_built()); CGAL_assertion(!pts.empty()); - CGAL_assertion(!removed_); + CGAL_assertion(removed_==0); const Point_d& p = *pts.begin(); typename SearchTraits::Construct_cartesian_const_iterator_d ccci=traits_.construct_cartesian_const_iterator_d_object(); dim_ = static_cast(std::distance(ccci(p), ccci(p,0))); @@ -432,14 +432,14 @@ public: void invalidate_build() { - if(removed_){ + if(removed_!=0){ // Walk the tree to collect the remaining points. // Writing directly to pts would likely work, but better be safe. std::vector ptstmp; //ptstmp.resize(root()->num_items()); root()->tree_items(std::back_inserter(ptstmp)); pts.swap(ptstmp); - removed_=false; + removed_=0; CGAL_assertion(is_built()); // the rest of the cleanup must happen } if(is_built()){ @@ -455,7 +455,7 @@ public: { invalidate_build(); pts.clear(); - removed_ = false; + removed_ = 0; } void @@ -512,8 +512,8 @@ public: CGAL_assertion(success); // Do not set the flag is the tree has been cleared. - if(is_built()) - removed_ |= success; + if(is_built() && success) + ++removed_; } private: template @@ -684,7 +684,7 @@ public: size_type size() const { - return pts.size(); + return pts.size()-removed_; } // Print statistics of the tree. From 586a71e66ef3fedc55bce6148837bfc4b08b739c Mon Sep 17 00:00:00 2001 From: hoskillua <47090776+hoskillua@users.noreply.github.com> Date: Wed, 6 Sep 2023 01:59:35 +0300 Subject: [PATCH 74/94] added missing reference to paper --- Documentation/doc/biblio/cgal_manual.bib | 9 +++++++++ Heat_method_3/doc/Heat_method_3/Heat_method_3.txt | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Documentation/doc/biblio/cgal_manual.bib b/Documentation/doc/biblio/cgal_manual.bib index 89d062ddddf..2abd7e1b30d 100644 --- a/Documentation/doc/biblio/cgal_manual.bib +++ b/Documentation/doc/biblio/cgal_manual.bib @@ -2049,6 +2049,15 @@ ABSTRACT = {We present the first complete, exact and efficient C++ implementatio update = "09.11 penarand" } +@article{ cgal:sc-lntm-20 + ,author = {Nicholas Sharp and Keenan Crane} + ,title = {{A Laplacian for Nonmanifold Triangle Meshes}} + ,journal = {Computer Graphics Forum (SGP)} + ,volume = {39} + ,number = {5} + ,year = {2020} +} + @inproceedings{cgal:ssgh-tmpm-01, title={Texture mapping progressive meshes}, author={Sander, Pedro V and Snyder, John and Gortler, Steven J and Hoppe, Hugues}, diff --git a/Heat_method_3/doc/Heat_method_3/Heat_method_3.txt b/Heat_method_3/doc/Heat_method_3/Heat_method_3.txt index 82ad37d2d41..2b2d3f8aab3 100644 --- a/Heat_method_3/doc/Heat_method_3/Heat_method_3.txt +++ b/Heat_method_3/doc/Heat_method_3/Heat_method_3.txt @@ -41,7 +41,7 @@ the mathematical theory of the Heat method. The last section is about the \ref s Note that this package depends on the third party \ref thirdpartyEigen library (3.3 or greater), or another model of the concept `SparseLinearAlgebraWithFactorTraits_d`. -This implementation is based on \cgalCite{cgal:cww-ghnac-13} and \cgalCite{cgal:fsbs-acidt-06} +This implementation is based on \cgalCite{cgal:cww-ghnac-13} , \cgalCite{cgal:fsbs-acidt-06} , and \cgalCite{cgal:sc-lntm-20} This package is related to the package \ref PkgSurfaceMeshShortestPath. Both deal with geodesic distances. The heat method package computes for every vertex of a mesh an approximate distance to one or several source vertices. From 88a9d86012230914bbb80e8eef81e3468ab93387 Mon Sep 17 00:00:00 2001 From: hoskillua <47090776+hoskillua@users.noreply.github.com> Date: Wed, 6 Sep 2023 02:30:05 +0300 Subject: [PATCH 75/94] added url --- Documentation/doc/biblio/cgal_manual.bib | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/doc/biblio/cgal_manual.bib b/Documentation/doc/biblio/cgal_manual.bib index 2abd7e1b30d..38b745f6780 100644 --- a/Documentation/doc/biblio/cgal_manual.bib +++ b/Documentation/doc/biblio/cgal_manual.bib @@ -2053,6 +2053,7 @@ ABSTRACT = {We present the first complete, exact and efficient C++ implementatio ,author = {Nicholas Sharp and Keenan Crane} ,title = {{A Laplacian for Nonmanifold Triangle Meshes}} ,journal = {Computer Graphics Forum (SGP)} + ,url = "https://www.cs.cmu.edu/~kmcrane/Projects/NonmanifoldLaplace/NonmanifoldLaplace.pdf" ,volume = {39} ,number = {5} ,year = {2020} From 7beae3e8beb8d400d7e997471467198d14ab8e7c Mon Sep 17 00:00:00 2001 From: ange-clement Date: Wed, 6 Sep 2023 16:19:02 +0200 Subject: [PATCH 76/94] Made images colors adapt to their base color --- .../demo/Polyhedron/Scene_image_item.cpp | 27 ++++++++++++------- Polyhedron/demo/Polyhedron/Scene_image_item.h | 2 ++ 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Scene_image_item.cpp b/Polyhedron/demo/Polyhedron/Scene_image_item.cpp index e9999831d4e..6969b172e37 100644 --- a/Polyhedron/demo/Polyhedron/Scene_image_item.cpp +++ b/Polyhedron/demo/Polyhedron/Scene_image_item.cpp @@ -24,7 +24,7 @@ template class Image_accessor { public: - Image_accessor(const Image& im, int dx=1, int dy=1, int dz=1); + Image_accessor(const Image& im, int dx=1, int dy=1, int dz=1, const QColor& default_color = QColor()); bool is_vertex_active(std::size_t i, std::size_t j, std::size_t k) const; const QColor& vertex_color(std::size_t i, std::size_t j, std::size_t k) const; @@ -64,12 +64,12 @@ private: }; template -Image_accessor::Image_accessor(const Image& im, int dx, int dy, int dz) +Image_accessor::Image_accessor(const Image& im, int dx, int dy, int dz, const QColor& default_color) : im_(&im) , dx_(dx) , dy_(dy) , dz_(dz) -, default_color_() +, default_color_(default_color) , colors_() { const std::size_t xdim = im_->xdim(); @@ -88,14 +88,15 @@ Image_accessor::Image_accessor(const Image& im, int dx, int dy, int d } } - double i=0; - const double starting_hue = 45./360.; // magenta + const double nb_Colors = colors_.size()+1; + double i=1; + const double starting_hue = default_color.hueF(); for ( auto it = colors_.begin(), end = colors_.end() ; it != end ; ++it, i += 1.) { - double hue = starting_hue + 1./double(colors_.size()) * i; + double hue = starting_hue + 1./nb_Colors * i; if ( hue > 1. ) { hue -= 1.; } - it->second = QColor::fromHsvF(hue, .75, .75); + it->second = QColor::fromHsvF(hue, default_color.saturationF(), default_color.valueF()); } } @@ -753,6 +754,11 @@ void Scene_image_item::drawEdges(Viewer_interface *viewer) const bool Scene_image_item::isGray() { return d->is_hidden;} +void Scene_image_item::setColor(QColor c) { + color_ = c; + invalidateOpenGLBuffers(); +} + void Scene_image_item::invalidateOpenGLBuffers() { setBuffersFilled(false); @@ -779,9 +785,9 @@ void Scene_image_item::initializeBuffers(Viewer_interface *v) const template internal::Vertex_buffer_helper* -init_helper(const Image &im, int dx, int dy, int dz, bool is_ogl_4_3) +init_helper(const Image &im, int dx, int dy, int dz, bool is_ogl_4_3, const QColor& default_color = QColor()) { - internal::Image_accessor image_data_accessor(im, dx, dy, dz); + internal::Image_accessor image_data_accessor(im, dx, dy, dz, default_color); return new internal::Vertex_buffer_helper_impl(std::move(image_data_accessor), is_ogl_4_3); } @@ -800,7 +806,8 @@ void Scene_image_item::computeElements() const CGAL_IMAGE_IO_CASE(m_image->image(), d->helper = init_helper(*m_image, d->m_voxel_scale, d->m_voxel_scale, d->m_voxel_scale, - d->is_ogl_4_3)); + d->is_ogl_4_3, + color_)); d->helper->fill_buffer_data(); getTriangleContainer(0)->allocate( Tc::Smooth_vertices, diff --git a/Polyhedron/demo/Polyhedron/Scene_image_item.h b/Polyhedron/demo/Polyhedron/Scene_image_item.h index fadffb352c4..d841f4b4f33 100644 --- a/Polyhedron/demo/Polyhedron/Scene_image_item.h +++ b/Polyhedron/demo/Polyhedron/Scene_image_item.h @@ -49,6 +49,8 @@ public: void set_image_weights(const Image& img, const float sigma); float sigma_weights() const; + void setColor(QColor c); + void invalidateOpenGLBuffers(); void initializeBuffers(Viewer_interface *) const; void computeElements() const; From 6f8116c4d55cb4fd691ea4e02e003f468b8afd68 Mon Sep 17 00:00:00 2001 From: ange-clement Date: Wed, 6 Sep 2023 18:24:27 +0200 Subject: [PATCH 77/94] Update mesh coloring. Visible surface patches uses the domains' colors. The mesh generated from an image has now the same color (if their base color is the same). --- .../Polyhedron/Scene_triangulation_3_item.cpp | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp b/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp index 7dc8c51f1ce..837d859aa97 100644 --- a/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp +++ b/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp @@ -442,6 +442,7 @@ struct Scene_triangulation_3_item_priv { typedef std::set Indices; Indices surface_patch_indices_; Indices subdomain_indices_; + std::unordered_map visible_surface_patch_to_subdomain; std::unordered_map id_to_compact; QSlider* tet_Slider; bool is_filterable; @@ -643,6 +644,7 @@ Scene_triangulation_3_item::triangulation_changed() // Fill indices map and get max subdomain value d->surface_patch_indices_.clear(); d->subdomain_indices_.clear(); + d->visible_surface_patch_to_subdomain.clear(); d->visible_subdomain.clear(); d->id_to_compact.clear(); @@ -664,7 +666,18 @@ Scene_triangulation_3_item::triangulation_changed() end = triangulation().finite_facets_end(); fit != end; ++fit) { max = (std::max)(max, fit->first->surface_patch_index(fit->second)); - d->surface_patch_indices_.insert(fit->first->surface_patch_index(fit->second)); + int index = fit->first->surface_patch_index(fit->second); + d->surface_patch_indices_.insert(index); + int dom0 = fit->first->subdomain_index(); + int dom1 = fit->first->neighbor(fit->second)->subdomain_index(); + if (dom0 == 0) // if cell is not in complex + { + d->visible_surface_patch_to_subdomain[index] = dom1; + } + else if (dom1 == 0) // if opposite cell is not in complex + { + d->visible_surface_patch_to_subdomain[index] = dom0; + } } d->colors.resize(max + 1); @@ -882,12 +895,23 @@ Scene_triangulation_3_item_priv::compute_color_map(const QColor& c) } const size_type nb_patch_indices = surface_patch_indices_.size(); i = 0; + double patch_hsv_value = fmod(c.valueF() + .5, 1.); for (Indices::iterator it = surface_patch_indices_.begin(), end = surface_patch_indices_.end(); it != end; ++it, i += 1.) { double hue = c.hueF() + 1. / double(nb_patch_indices) * i; if (hue > 1) { hue -= 1.; } - colors[*it] = QColor::fromHsvF(hue, c.saturationF(), c.valueF()); + colors[*it] = QColor::fromHsvF(hue, c.saturationF(), patch_hsv_value); + } + + const size_type nb_visible_patch_indices = visible_surface_patch_to_subdomain.size(); + i = 0; + for (std::unordered_map::iterator it = visible_surface_patch_to_subdomain.begin(), + end = visible_surface_patch_to_subdomain.end(); it != end; ++it, i += 1.) + { + double hue = c.hueF() + 1. / double(nb_patch_indices) * i; + if (hue > 1) { hue -= 1.; } + colors[it->first] = colors_subdomains[it->second]; } } From c059ee5be3f9014ca433d9d6437b464909f3f4e4 Mon Sep 17 00:00:00 2001 From: ange-clement Date: Thu, 7 Sep 2023 10:06:25 +0200 Subject: [PATCH 78/94] Updated scene mesh creation The color is initialized to the base item's color. --- Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin.cpp b/Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin.cpp index 59c687fb8a4..ca47e02782a 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin.cpp +++ b/Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin.cpp @@ -1037,7 +1037,7 @@ treat_result(Scene_item& source_item, float((bbox.ymin() + bbox.ymax())/2.f), float((bbox.zmin() + bbox.zmax())/2.f)); - result_item->setColor(default_mesh_color); + result_item->setColor(source_item.color()); result_item->setRenderingMode(source_item.renderingMode()); result_item->set_data_item(&source_item); From a8fae00bf112a9d3b59be6ce1d104c2b04bb68cf Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Thu, 7 Sep 2023 10:31:02 +0200 Subject: [PATCH 79/94] missing header --- STL_Extension/include/CGAL/Handle.h | 1 + 1 file changed, 1 insertion(+) diff --git a/STL_Extension/include/CGAL/Handle.h b/STL_Extension/include/CGAL/Handle.h index 55634481044..dd0d5f42576 100644 --- a/STL_Extension/include/CGAL/Handle.h +++ b/STL_Extension/include/CGAL/Handle.h @@ -18,6 +18,7 @@ #define CGAL_HANDLE_H #include +#include #include #include #include From 3d49105c91b5d7f3b7b9400f25b59118abfb5cd1 Mon Sep 17 00:00:00 2001 From: albert-github Date: Thu, 7 Sep 2023 14:57:16 +0200 Subject: [PATCH 80/94] Incorrect closing HTML comment Newer versions of doxygen are more restrictive (and following the rules) in respect to the end comment of a HTML type of comment, i.e. ``, so parts of the paragraphs were missing (Triangulation/index.html and Triangulation/group___pkg_triangulations_ref.html) See also https://www.w3.org/TR/2006/REC-xml11-20060816/#sec-comments --- Triangulation/doc/Triangulation/PackageDescription.txt | 2 +- Triangulation/doc/Triangulation/Triangulation.txt | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Triangulation/doc/Triangulation/PackageDescription.txt b/Triangulation/doc/Triangulation/PackageDescription.txt index 0b5d4c7b5ed..2ef98bf9d84 100644 --- a/Triangulation/doc/Triangulation/PackageDescription.txt +++ b/Triangulation/doc/Triangulation/PackageDescription.txt @@ -67,7 +67,7 @@ of the underlying Euclidean space \f$ \mathbb{R}^d\f$. The neighbors of a full cell are also indexed in such a way that the neighbor indexed by \f$ i\f$ is opposite to the vertex with the same index. ----> +--> \cgalClassifedRefPages diff --git a/Triangulation/doc/Triangulation/Triangulation.txt b/Triangulation/doc/Triangulation/Triangulation.txt index 452891fa415..d45c8cd1ba8 100644 --- a/Triangulation/doc/Triangulation/Triangulation.txt +++ b/Triangulation/doc/Triangulation/Triangulation.txt @@ -41,7 +41,7 @@ that is pure, connected and without boundaries nor singularities. The dimension of the triangulation is the dimension of its maximal simplices. - + In the sequel, we will call these maximal simplices full cells. A face of a simplex is a subset of this simplex. A proper face of a simplex is a strict subset of this simplex. @@ -136,12 +136,12 @@ Possible values of \f$d\f$ (the current dimension of the triangulation) i triangulation data structure.
    \f$d=-1\f$
    This corresponds to an abstract simplicial complex reduced to a single vertex. - +
    \f$d=0\f$
    This corresponds to an abstract simplicial complex including two vertices, each corresponding to a full cell; the two full cells being neighbors of each other. This is the unique triangulation of the \f$ 0\f$-sphere. - +
    \f$ 0< d \le D\f$
    This corresponds to a triangulation of the sphere \f$ \mathbb{S}^d\f$.
    @@ -260,7 +260,7 @@ Therefore, the reader will make the best use of this example by reading it slowly, together with the reference manual documentation of the methods that are called (see here: `TriangulationDataStructure`) and by trying to understand the various -`assert(...)` statements.---> +`assert(...)` statements. --> \cgalExample{triangulation_data_structure_static.cpp} From dd383da30713bd3122893bf26e61b5fa7a5de328 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Thu, 7 Sep 2023 17:33:17 +0200 Subject: [PATCH 81/94] avoid an infinite loop in the case the source of the ray in on the face --- Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h index 17e69ff984c..2b5ccccacad 100644 --- a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h +++ b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h @@ -612,7 +612,11 @@ public: return pair.second == 0 ? Subdomain() : Subdomain(Subdomain_index(pair.second)); - default: /* COPLANAR */ continue; // loop + default: /* COPLANAR */ + if (!triangle.has_on(p)) + continue; // loop + else + return Subdomain(Subdomain_index((std::max)(pair.first,pair.second))); // make a canonical choice } // end switch on the orientation } // opt } // end while(true) From a3148fb8f5d4cea082c5ea03caab9d72480b30cc Mon Sep 17 00:00:00 2001 From: albert-github Date: Thu, 7 Sep 2023 17:33:26 +0200 Subject: [PATCH 82/94] issue #7701 Appearance of "Set of Faces" in documentation. Remove gray background and get some indentation (Note this proposed pull request needs the proposed pull request #7700) --- Triangulation/doc/Triangulation/Triangulation.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Triangulation/doc/Triangulation/Triangulation.txt b/Triangulation/doc/Triangulation/Triangulation.txt index 452891fa415..0fdc6a4d6c0 100644 --- a/Triangulation/doc/Triangulation/Triangulation.txt +++ b/Triangulation/doc/Triangulation/Triangulation.txt @@ -130,7 +130,7 @@ Two full cells \f$ \sigma\f$ and \f$ \sigma'\f$ sharing a facet are called neighbors. A full cell has always exactly \f$ d+1\f$ neighbors. Possible values of \f$d\f$ (the current dimension of the triangulation) include -
    +\par
    \f$d=-2\f$
    This corresponds to an empty triangulation data structure. @@ -145,7 +145,6 @@ triangulation of the \f$ 0\f$-sphere.
    \f$ 0< d \le D\f$
    This corresponds to a triangulation of the sphere \f$ \mathbb{S}^d\f$.
    -
    ## The `Triangulation_data_structure` Class ## From ed521e03b0d3b5a8006f5828cc75d66dcfa19ecc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Thu, 7 Sep 2023 17:33:41 +0200 Subject: [PATCH 83/94] rename macro --- Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h index 2b5ccccacad..3c53b56f401 100644 --- a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h +++ b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h @@ -523,8 +523,8 @@ public: return r_domain_.bounding_aabb_tree_ptr()-> first_intersected_primitive(ray); } - -#if USE_ALL_INTERSECTIONS +#define CGAL_USE_ALL_INTERSECTIONS 0 +#if CGAL_USE_ALL_INTERSECTIONS boost::optional shoot_a_ray_2(const Ray_3 ray) const { const Point_3& p = ray.source(); typedef typename AABB_tree:: @@ -551,7 +551,7 @@ public: return it->second; } } -#endif // USE_ALL_INTERSECTIONS +#endif // CGAL_USE_ALL_INTERSECTIONS Subdomain operator()(const Point_3& p) const { if(r_domain_.bounding_aabb_tree_ptr() == 0) return Subdomain(); @@ -573,8 +573,7 @@ public: const Ray_3 ray_shot = ray(p, vector(CGAL::ORIGIN,*random_point)); -#define USE_ALL_INTERSECTIONS 0 -#if USE_ALL_INTERSECTIONS +#if CGAL_USE_ALL_INTERSECTIONS boost::optional opt = shoot_a_ray_2(ray_shot); #else // first_intersected_primitive boost::optional opt = shoot_a_ray_1(ray_shot); From 8afc4347b43414e19fdebdc5925181a102293ae6 Mon Sep 17 00:00:00 2001 From: albert-github Date: Thu, 7 Sep 2023 17:43:05 +0200 Subject: [PATCH 84/94] issue #7702 Appearance of " Hilbert Sorting" in documentation. Remove gray background and get some indentation --- Spatial_sorting/doc/Spatial_sorting/Spatial_sorting.txt | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Spatial_sorting/doc/Spatial_sorting/Spatial_sorting.txt b/Spatial_sorting/doc/Spatial_sorting/Spatial_sorting.txt index a97ef3ead18..6dd4d3cef74 100644 --- a/Spatial_sorting/doc/Spatial_sorting/Spatial_sorting.txt +++ b/Spatial_sorting/doc/Spatial_sorting/Spatial_sorting.txt @@ -42,18 +42,16 @@ to the unit square \f$ [0,1]^2\f$, such that \f$ f(0)=(0,0)\f$ and \f$ f(1)=(1,0 in the following way: the unit square is subdivided in four such that -
    +\par \f$ f([0,\frac{1}{4}])=[0,\frac{1}{2}]^2\f$, \f$ f([\frac{1}{4},\frac{1}{2}])=[0,\frac{1}{2}]\times[\frac{1}{2},1]\f$, \f$ f([\frac{1}{2},\frac{3}{4}])=[\frac{1}{2},1]^2\f$, and \f$ f([\frac{3}{4},1])=[\frac{1}{2},1]\times[0,\frac{1}{2}].\f$ - -\f$ f(\frac{1}{4})=(0,\frac{1}{2})\f$ - +
    +\f$ f(\frac{1}{4})=(0,\frac{1}{2})\f$, \f$ f(\frac{1}{2})=(\frac{1}{2},\frac{1}{2})\f$, and \f$ f(\frac{3}{4})=(1,\frac{1}{2})\f$. -
    Then each square is subdivided in the same way recursively. \cgalFigureRef{Spatial_sorting_fig_Hilbert8} illustrates this process. From 3ef293b5bd21e31567fcef8557e266091503f284 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Fri, 8 Sep 2023 11:41:14 +0200 Subject: [PATCH 85/94] Update to new cgalModels --- .../include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h index 94bcd7ab5f1..c551716d618 100644 --- a/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h +++ b/Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/Remeshing_cell_base_3.h @@ -35,7 +35,7 @@ It has to be a model of the concept `RemeshingTriangulationTraits_3`. \tparam Cb is a cell base class from which `Remeshing_cell_base_3` derives. It must be a model of the `SimplicialMeshCellBase_3` concept. -\cgalModels `RemeshingCellBase_3` +\cgalModels{RemeshingCellBase_3} */ template Date: Mon, 11 Sep 2023 05:35:00 +0000 Subject: [PATCH 86/94] Bump actions/checkout from 3 to 4 Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/build_doc.yml | 2 +- .github/workflows/checks.yml | 2 +- .github/workflows/cmake-all.yml | 4 ++-- .github/workflows/delete_doc.yml | 2 +- .github/workflows/demo.yml | 8 ++++---- .github/workflows/list_workflow_last_run.yml | 2 +- .github/workflows/reuse.yml | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build_doc.yml b/.github/workflows/build_doc.yml index 85158cfc285..b629c1870cf 100644 --- a/.github/workflows/build_doc.yml +++ b/.github/workflows/build_doc.yml @@ -60,7 +60,7 @@ jobs: content: 'rocket' }) - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 name: "checkout branch" if: steps.get_round.outputs.result != 'stop' with: diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 0af6e276e6e..78d96aa94db 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: | .github/install.sh diff --git a/.github/workflows/cmake-all.yml b/.github/workflows/cmake-all.yml index d0507b4d430..b9e7226c62d 100644 --- a/.github/workflows/cmake-all.yml +++ b/.github/workflows/cmake-all.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: sudo apt-get install -y libboost-dev libboost-program-options-dev libmpfr-dev libeigen3-dev - name: configure all @@ -25,7 +25,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: sudo bash -e .github/install.sh - name: configure all diff --git a/.github/workflows/delete_doc.yml b/.github/workflows/delete_doc.yml index 38f5ab445ac..0910e74ef3b 100644 --- a/.github/workflows/delete_doc.yml +++ b/.github/workflows/delete_doc.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: delete directory run: | set -x diff --git a/.github/workflows/demo.yml b/.github/workflows/demo.yml index 123458ebe04..a98dfba56b8 100644 --- a/.github/workflows/demo.yml +++ b/.github/workflows/demo.yml @@ -9,7 +9,7 @@ jobs: batch_1: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: .github/install.sh - name: run1 @@ -17,7 +17,7 @@ jobs: batch_2: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: .github/install.sh - name: run2 @@ -25,7 +25,7 @@ jobs: batch_3: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: .github/install.sh - name: run3 @@ -33,7 +33,7 @@ jobs: batch_4: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: install dependencies run: .github/install.sh - name: run4 diff --git a/.github/workflows/list_workflow_last_run.yml b/.github/workflows/list_workflow_last_run.yml index 79b1d2c0634..d12b758e62b 100644 --- a/.github/workflows/list_workflow_last_run.yml +++ b/.github/workflows/list_workflow_last_run.yml @@ -12,7 +12,7 @@ messages: ${{ steps.cat_output.outputs.message }} steps: - name: checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: run script run: | chmod +x ./Scripts/developer_scripts/list_cgal_workflows_last_run.sh diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml index 8b0bba4260e..c55ba6df40d 100644 --- a/.github/workflows/reuse.yml +++ b/.github/workflows/reuse.yml @@ -10,7 +10,7 @@ jobs: reuse: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: REUSE version uses: fsfe/reuse-action@v2 with: From eebc635da07492454a7ac7416f9f488c9cc166fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 11 Sep 2023 09:38:27 +0200 Subject: [PATCH 87/94] fix concept doc --- .../Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index c30553b5519..92689531537 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -69,10 +69,10 @@ public: /// \param tm_e mesh containing `h_e` void intersection_point_detected(std::size_t i_id, int sdim, - halfedge_descriptor h_f, halfedge_descriptor h_e, - const Triangle_mesh& tm_f, + halfedge_descriptor h_f, const Triangle_mesh& tm_e, + const Triangle_mesh& tm_f, bool is_target_coplanar, bool is_source_coplanar); From 2905e381177c52c3a86a0b9abe1bbb729fb92fc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 11 Sep 2023 11:28:22 +0200 Subject: [PATCH 88/94] update parameter orders --- .../Concepts/PMPCorefinementVisitor.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index 92689531537..a95d31f2e19 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -58,15 +58,15 @@ public: /// \param i_id the id of the intersection point, starting at 0. Ids are consecutive. /// \param sdim indicates the dimension of the simplex part of the face that is intersected by the edge /// (0 for a vertex, 1 for an edge, 2 for the interior of the face) + /// \param tm_e mesh containing `h_e` + /// \param tm_f mesh containing `h_f` + /// \param h_e a halfedge from `tm_e` /// \param h_f a halfedge from `tm_f` indicating the simplex intersected: /// if `sdim==0` the target of `h_f` is the intersection point, /// if `sdim==1` the edge of `h_f` contains the intersection point in its interior, /// if `sdim==2` the face of `h_f` contains the intersection point in its interior. - /// \param h_e a halfedge from `tm_e` /// \param is_target_coplanar `true` iff the target of `h_e` is the intersection point /// \param is_source_coplanar `true` iff the source of `h_e` is the intersection point - /// \param tm_f mesh containing `h_f` - /// \param tm_e mesh containing `h_e` void intersection_point_detected(std::size_t i_id, int sdim, halfedge_descriptor h_e, From 4f29b83610445a0497fcd65258ee9205be112679 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 11 Sep 2023 15:14:51 +0200 Subject: [PATCH 89/94] really fix the order --- .../Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h index a95d31f2e19..80b1e64f6ed 100644 --- a/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h +++ b/Polygon_mesh_processing/doc/Polygon_mesh_processing/Concepts/PMPCorefinementVisitor.h @@ -58,13 +58,13 @@ public: /// \param i_id the id of the intersection point, starting at 0. Ids are consecutive. /// \param sdim indicates the dimension of the simplex part of the face that is intersected by the edge /// (0 for a vertex, 1 for an edge, 2 for the interior of the face) - /// \param tm_e mesh containing `h_e` - /// \param tm_f mesh containing `h_f` /// \param h_e a halfedge from `tm_e` /// \param h_f a halfedge from `tm_f` indicating the simplex intersected: /// if `sdim==0` the target of `h_f` is the intersection point, /// if `sdim==1` the edge of `h_f` contains the intersection point in its interior, /// if `sdim==2` the face of `h_f` contains the intersection point in its interior. + /// \param tm_e mesh containing `h_e` + /// \param tm_f mesh containing `h_f` /// \param is_target_coplanar `true` iff the target of `h_e` is the intersection point /// \param is_source_coplanar `true` iff the source of `h_e` is the intersection point void intersection_point_detected(std::size_t i_id, From 7d79636f0bec6a5e703f3a9c81c9052d6e5ed0cf Mon Sep 17 00:00:00 2001 From: ange-clement Date: Mon, 11 Sep 2023 17:48:24 +0200 Subject: [PATCH 90/94] Removed unnecessary lines --- Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp b/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp index 837d859aa97..91e88fb6ae2 100644 --- a/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp +++ b/Polyhedron/demo/Polyhedron/Scene_triangulation_3_item.cpp @@ -904,13 +904,9 @@ Scene_triangulation_3_item_priv::compute_color_map(const QColor& c) colors[*it] = QColor::fromHsvF(hue, c.saturationF(), patch_hsv_value); } - const size_type nb_visible_patch_indices = visible_surface_patch_to_subdomain.size(); - i = 0; for (std::unordered_map::iterator it = visible_surface_patch_to_subdomain.begin(), - end = visible_surface_patch_to_subdomain.end(); it != end; ++it, i += 1.) + end = visible_surface_patch_to_subdomain.end(); it != end; ++it) { - double hue = c.hueF() + 1. / double(nb_patch_indices) * i; - if (hue > 1) { hue -= 1.; } colors[it->first] = colors_subdomains[it->second]; } } From b2c6cec8af7bac6f007d7a19384008bf3c49fa8a Mon Sep 17 00:00:00 2001 From: Sebastien Loriot Date: Tue, 12 Sep 2023 11:08:21 +0200 Subject: [PATCH 91/94] A missing ref Co-authored-by: Andreas Fabri --- Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h index 3c53b56f401..835940944c7 100644 --- a/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h +++ b/Mesh_3/include/CGAL/Polyhedral_complex_mesh_domain_3.h @@ -525,7 +525,7 @@ public: } #define CGAL_USE_ALL_INTERSECTIONS 0 #if CGAL_USE_ALL_INTERSECTIONS - boost::optional shoot_a_ray_2(const Ray_3 ray) const { + boost::optional shoot_a_ray_2(const Ray_3& ray) const { const Point_3& p = ray.source(); typedef typename AABB_tree:: template Intersection_and_primitive_id::Type Inter_and_prim; From cb68fdf09ecec5e2e26f3d866799ccf931dd35c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 13 Sep 2023 15:20:11 +0200 Subject: [PATCH 92/94] Add breaking changes --- Installation/CHANGES.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Installation/CHANGES.md b/Installation/CHANGES.md index 47998400268..01485063f19 100644 --- a/Installation/CHANGES.md +++ b/Installation/CHANGES.md @@ -35,6 +35,18 @@ Release date: October 2023 - Removed the class templates `Gray_image_mesh_domain_3`, `Implicit_mesh_domain_3`, and `Labeled_image_mesh_domain_3` which are deprecated since CGAL-4.13. +### [Tetrahedral Remeshing](https://doc.cgal.org/6.0/Manual/packages.html#PkgTetrahedralRemeshing) +- **Breaking change**: The template parameters of + `CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3` + have been modified, reverting changes introduced in CGAL 5.6. +- **Breaking change**: The vertex base of + `CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3` + must now be a model of the concept ` SimplicialMeshVertexBase_3` (and not only `TriangulationVertexBase_3`). + +### [3D Simplicial Mesh Data Structure](https://doc.cgal.org/6.0/Manual/packages.html#PkgSMDS3) +- **Breaking change**: The template parameters of + `CGAL::Simplicial_mesh_cell_base_3` + have been modified to enable passing a geometric traits and a custom cell base class. [Release 5.6](https://github.com/CGAL/cgal/releases/tag/v5.6) ----------- From 86e28d2c85e868b20a41ac5939673bc324e6c830 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Wed, 13 Sep 2023 15:45:15 +0200 Subject: [PATCH 93/94] Change default model --- Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp index 66e9653f1b4..113215b631a 100644 --- a/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp +++ b/Alpha_wrap_3/examples/Alpha_wrap_3/volumetric_wrap.cpp @@ -63,7 +63,7 @@ using Facet = Triangulation::Facet; int main(int argc, char** argv) { // Read the input - const std::string filename = (argc > 1) ? argv[1] : CGAL::data_file_path("meshes/armadillo.off"); + const std::string filename = (argc > 1) ? argv[1] : CGAL::data_file_path("meshes/bull.off"); std::cout << "Reading " << filename << "..." << std::endl; Points points; From 92232c9295ed2f246ff3f20221f231021c3d4aa7 Mon Sep 17 00:00:00 2001 From: CCXXXI Date: Thu, 28 Sep 2023 12:53:05 +0800 Subject: [PATCH 94/94] fix a typo in Tutorial_hello_world.txt --- .../doc/Documentation/Tutorials/Tutorial_hello_world.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/doc/Documentation/Tutorials/Tutorial_hello_world.txt b/Documentation/doc/Documentation/Tutorials/Tutorial_hello_world.txt index da30ca174cc..a006447c79a 100644 --- a/Documentation/doc/Documentation/Tutorials/Tutorial_hello_world.txt +++ b/Documentation/doc/Documentation/Tutorials/Tutorial_hello_world.txt @@ -73,7 +73,7 @@ seems that the points are collinear, or perform a right turn. If you must ensure that your numbers get interpreted at their full precision you can use a \cgal kernel that performs exact predicates and -extract constructions. +exact constructions. \cgalExample{Kernel_23/exact.cpp}