diff --git a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_2.h b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_2.h
index 5799b851709..06ef25a08d3 100644
--- a/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_2.h
+++ b/Alpha_shapes_2/doc/Alpha_shapes_2/CGAL/Alpha_shape_2.h
@@ -27,7 +27,7 @@ kernel. By default the `ExactAlphaComparisonTag` is set to \link Tag_false `Tag_
overhead. Note that since such a strategy does not make sense if used together with a traits class with exact constructions,
the tag `ExactAlphaComparisonTag` is not taken into account if `Dt::Geom_traits::FT` is not a floating point number type.
-### Inherits From ###
+\cgalHeading{Inherits From}
Inherits from `Dt`.
@@ -36,12 +36,12 @@ This class is the underlying triangulation class.
The modifying functions `Alpha_shape_2::insert()` and `Alpha_shape_2::remove()` will overwrite
the inherited functions. At the moment, only the static version is implemented.
-### I/O ###
+\cgalHeading{I/O}
The I/O operators are defined for `std::iostream`. The format for the iostream
is an internal format.
-### Implementation ###
+\cgalHeading{Implementation}
The set of intervals associated with the
\f$ k\f$-dimensional faces of the underlying triangulation are
diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_3.h
index 1702b9dfdeb..988c7a8d538 100644
--- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_3.h
+++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Alpha_shape_3.h
@@ -19,7 +19,7 @@ the tag `ExactAlphaComparisonTag` is not taken into account if `Dt::Geom_traits:
Note that this class is at the same time used for basic and
for weighted Alpha Shapes.
-### Inherits From ###
+\cgalHeading{Inherits From}
Inherits from `Dt`.
@@ -28,13 +28,13 @@ This class is the underlying triangulation class.
The modifying functions `insert` and `remove` will overwrite
the inherited functions. At the moment, only the static version is implemented.
-### I/O ###
+\cgalHeading{I/O}
The I/O operators are defined for `iostream`, and for
the window stream provided by \cgal. The format for the iostream
is an internal format.
-### Implementation ###
+\cgalHeading{Implementation}
In `GENERAL` mode, the alpha intervals of each triangulation
face is computed and stored at initialization time.
diff --git a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_3.h b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_3.h
index 69f58cb3aec..94064def1fe 100644
--- a/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_3.h
+++ b/Alpha_shapes_3/doc/Alpha_shapes_3/CGAL/Fixed_alpha_shape_3.h
@@ -15,7 +15,7 @@ a classification that specifies its status in the alpha complex, alpha being fix
Note that this class can be used at the same time to build a basic or
a weighted Alpha Shape.
-### Inherits From ###
+\cgalHeading{Inherits From}
Inherits from `Dt`.
@@ -24,7 +24,7 @@ This class is the underlying triangulation class.
The modifying functions `insert` and `remove` will overwrite
the inherited functions.
-### I/O ###
+\cgalHeading{I/O}
The I/O operators are defined for `iostream`, and for
the window stream provided by \cgal. The format for the iostream
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 7be040453aa..fbb5ce66d7a 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
@@ -13,13 +13,13 @@ The second template argument defaults to
`CGAL::Triangulation_data_structure_2< CGAL::Apollonius_graph_vertex_base_2, CGAL::Triangulation_face_base_2 >`.
\cgalModels `DelaunayGraph_2`
-### Traversal of the Apollonius Graph ###
+\cgalHeading{Traversal of the Apollonius Graph}
An Apollonius graph can be seen as a container of faces and vertices.
Therefore the Apollonius graph provides several iterators and
circulators that allow to traverse it (completely or partially).
-### Traversal of the Convex Hull ###
+\cgalHeading{Traversal of the Convex Hull}
Applied on the `infinite_vertex` the `incident_*` functions allow to
visit the vertices on the convex hull and the infinite edges and
diff --git a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_2.h b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_2.h
index 08bf0081638..d8579d50d7a 100644
--- a/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_2.h
+++ b/Apollonius_graph_2/doc/Apollonius_graph_2/CGAL/Apollonius_graph_hierarchy_2.h
@@ -35,7 +35,7 @@ The `Apollonius_graph_hierarchy_2` class derives publicly from the
the same with its base class. In the sequel only the methods
overridden are documented.
-### Types ###
+\cgalHeading{Types}
`Apollonius_graph_hierarchy_2` does not introduce other types than those introduced by
its base class `Apollonius_graph_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 9e5db366d54..02eb50f5829 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
@@ -10,12 +10,12 @@ The class `Apollonius_site_2` is a model for the concept
\cgalModels `ApolloniusSite_2`
-### Types ###
+\cgalHeading{Types}
The class `Apollonius_site_2` does not introduce any types in addition to the
concept `ApolloniusSite_2`.
-### I/O ###
+\cgalHeading{I/O}
The I/O operators are defined for `iostream`.
diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_batched_point_location.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_batched_point_location.h
index d116028598b..fb52bd5c7de 100644
--- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_batched_point_location.h
+++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_batched_point_location.h
@@ -14,7 +14,7 @@ pairs in the output sequence are sorted in increasing \f$ xy\f$-lexicographical
order of the query points. The function returns a past-the-end iterator of
the output sequence.
-### Requirements ###
+\cgalHeading{Requirements}
- `InputIterator::value_type` must be `Traits::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 d64161eaedf..8c5f684023b 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
@@ -77,7 +77,7 @@ supports the merging of curves of opposite directions.
\cgalModels `ArrangementLandmarkTraits_2`
\cgalModels `ArrangementDirectionalXMonotoneTraits_2`
-### Types ###
+\cgalHeading{Types}
*/
diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_iostream.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_iostream.h
index 0630ac7a2ca..415fa3946e1 100644
--- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_iostream.h
+++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_iostream.h
@@ -6,7 +6,7 @@ namespace CGAL {
The function `read` reads a given arrangement from a given input stream
using a specific input format.
-### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Formatter` class must model the
@@ -43,7 +43,7 @@ std::istream& read (Arrangement_2& arr,
The function `write` writes a given arrangement into a given output stream
using a specific output format.
-### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Formatter` class must model the
diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertical_decomposition_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertical_decomposition_2.h
index 67d0b902e6a..24779df284f 100644
--- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertical_decomposition_2.h
+++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arr_vertical_decomposition_2.h
@@ -42,7 +42,7 @@ is no feature above it.
The function returns a past-the-end iterator for its output sequence.
-### Requirements ###
+\cgalHeading{Requirements}
`OutputIterator::value_type` must be
`pair >`.
diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arrangement_2.h b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arrangement_2.h
index 5147a577a7d..372674b0544 100644
--- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arrangement_2.h
+++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/CGAL/Arrangement_2.h
@@ -979,7 +979,7 @@ namespace CGAL {
into \f$ x\f$-monotone subcurves (and perhaps isolated points), which are
inserted into the arrangement.
- ### Requirements ###
+\cgalHeading{Requirements}
- If the curve is \f$ x\f$-monotone curve then The instantiated
@@ -1067,7 +1067,7 @@ void insert (Arrangement_2& arr,
edges or vertices of the existing arrangement `arr`.
\pre If provided, `pl` must be attached to the given arrangement `arr`.
- ### Requirements ###
+\cgalHeading{Requirements}
- If `c` is \f$ x\f$-monotone then the instantiated `GeomTraits`
@@ -1108,7 +1108,7 @@ bool do_intersect (
\pre If provided, `pl` must be attached to the given arrangement `arr`.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Traits` class must model the restricted
@@ -1135,7 +1135,7 @@ insert_non_intersecting_curve (Arrangement_2& arr,
disjoint in their interior and pairwise interior-disjoint from all existing
arrangement vertices and edges.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Traits` class must model the
@@ -1166,7 +1166,7 @@ void insert_non_intersecting_curves(Arrangement_2& arr,
\pre If provided, `pl` must be attached to the given arrangement `arr`.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Traits` class must model the
@@ -1201,7 +1201,7 @@ insert_point (Arrangement_2& arr,
function may take a considerable amount of time; it is recommended to be
used only for debugging purposes.
- ### Requirements ###
+\cgalHeading{Requirements}
The instantiated traits class must model the concept
`ArranagmentXMonotoneTraits_2`.
@@ -1229,7 +1229,7 @@ bool is_valid (const Arrangement_2& arr);
is returned. Otherwise, the face to which the edge was incident before the
removal is returned.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated traits class must model the concept
@@ -1254,7 +1254,7 @@ remove_edge (Arrangement_2& arr,
The function returns a boolean value that indicates whether it succeeded
removing the vertex from the arrangement.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `Traits` class must model the
@@ -1286,7 +1286,7 @@ bool remove_vertex (Arrangement_2& arr,
arrangement `arr`.
\pre If provided, `pl` must be attached to the given arrangement `arr`.
- ### Requirements ###
+\cgalHeading{Requirements}
- The instantiated `GeomTraits` class must model the
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 879e044230b..710955ad5c0 100644
--- a/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h
+++ b/BGL/doc/BGL/CGAL/Polyhedron_items_with_id_3.h
@@ -15,11 +15,11 @@ halfedge.
\cgalModels `PolyhedronItems_3`
-### Operations ###
+\cgalHeading{Operations}
Supported as required by the `PolyhedronItems_3` concept.
-### Additional Methods in All Three Items ###
+\cgalHeading{Additional Methods in All Three Items}
\code
int id() const; // Returns the index.
diff --git a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2.h b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2.h
index 0c8c7460a1e..8b412b347b5 100644
--- a/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2.h
+++ b/Boolean_set_operations_2/doc/Boolean_set_operations_2/CGAL/Boolean_set_operations_2.h
@@ -73,7 +73,7 @@ The signature of the function is
OutputIterator difference(const Type1 & p1, const Type2 & p2, OutputIterator oi);
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `difference()` function are any of the following combinations.
@@ -192,7 +192,7 @@ The signature of the function is
bool do_intersect(const Type1 & p1, const Type2 & p2);
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `do_intersect()` function are any of the following combinations.
@@ -322,7 +322,7 @@ The signature of the function is
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `intersection()` function are any of the following combinations.
@@ -481,7 +481,7 @@ The signature of the function is
bool join(const Type1 & p1, const Type2 & p2, General_polygon_with_holes_2 & res);
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `join()` function are any of the following combinations.
@@ -635,7 +635,7 @@ The signature of the function is
Oriented_side oriented_side(const Type1 & p1, const Type2 & p2);
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `oriented_side()` function are any of the following combinations.
@@ -721,7 +721,7 @@ The signature of the function is
OutputIterator symmetric_difference(const Type1 & p1, const Type2 & p2, OutputIterator oi);
\endcode
-###Parameters###
+\cgalHeading{Parameters}
The types of the paramters of the `symmetric_difference()` function are any of the following combinations.
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 993e50c016e..1cb7e3e5703 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
@@ -113,7 +113,7 @@ using the \f$ d\f$-dimensional \cgal kernel; the models
\sa `CGAL::Min_ellipse_2`
-### Implementation ###
+\cgalHeading{Implementation}
We implement Khachyian's algorithm for rounding
polytopes \cite cgal:k-rprnm-96. Internally, we use
@@ -122,7 +122,7 @@ Cholesky-decomposition. The algorithm's running time is
\f$ {\cal O}(nd^2(\epsilon^{-1}+\ln d + \ln\ln(n)))\f$, where \f$ n=|P|\f$ and
\f$ 1+\epsilon\f$ is the desired approximation ratio.
-## Example ###
+\cgalHeading{Example}
To illustrate the usage of `Approximate_min_ellipsoid_d` we give two examples in 2D. The
first program generates a random set \f$ P\subset\E^2\f$ and outputs the
diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_annulus_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_annulus_d.h
index 60c53837369..95beb9fee7b 100644
--- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_annulus_d.h
+++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_annulus_d.h
@@ -36,7 +36,7 @@ two-, three-, and \f$ d\f$-dimensional \cgal kernel, respectively.
\sa `CGAL::Optimisation_d_traits_d`
\sa `OptimisationDTraits`
-### Implementation ###
+\cgalHeading{Implementation}
The problem of finding the smallest enclosing annulus of a finite point set
can be formulated as an optimization problem with linear constraints and a
@@ -268,7 +268,7 @@ FT squared_outer_radius( ) const;
returns an iterator referring to the first coordinate
of the center of `min_annulus`.
-### Note ###
+\cgalHeading{Note}
The coordinates have a rational
representation, i.e. the first \f$ d\f$ elements of the iterator
diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2.h
index 085086c684d..d138d9f5dab 100644
--- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2.h
+++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_circle_2.h
@@ -50,7 +50,7 @@ two-dimensional \cgal kernel.
\sa `CGAL::Min_circle_2_traits_2`
\sa `MinCircle2Traits`
-### Implementation ###
+\cgalHeading{Implementation}
We implement the incremental algorithm of Welzl, with move-to-front
heuristic \cite w-sedbe-91a. The whole implementation is described
@@ -63,7 +63,7 @@ take up to linear time, but substantially less than computing the new
smallest enclosing circle from scratch. The clear operation and the check
for validity each takes linear time.
-### Example ###
+\cgalHeading{Example}
To illustrate the creation of `Min_circle_2` and to show that
randomization can be useful in certain cases, we give an example.
diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2.h
index ee387fc0f1d..a5a9d197140 100644
--- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2.h
+++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_ellipse_2.h
@@ -32,7 +32,7 @@ two-dimensional \cgal kernel.
\sa `CGAL::Min_ellipse_2_traits_2`
\sa `MinEllipse2Traits`
-### Implementation ###
+\cgalHeading{Implementation}
We implement the incremental algorithm of Welzl, with move-to-front
heuristic \cite w-sedbe-91a, using the primitives as described
@@ -46,7 +46,7 @@ take up to linear time, but substantially less than computing the new
smallest enclosing ellipse from scratch. The clear operation and the check
for validity each takes linear time.
-### Example ###
+\cgalHeading{Example}
To illustrate the usage of `Min_ellipse_2` and to show that randomization
can be useful in certain cases, we give an example. The example also
diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_d.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_d.h
index 3030df578af..c74d5e10c06 100644
--- a/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_d.h
+++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/Min_sphere_d.h
@@ -53,7 +53,7 @@ for two-, three-, and \f$ d\f$-dimensional points respectively.
\sa `CGAL::Min_sphere_of_spheres_d`
\sa `CGAL::Min_annulus_d`
-### Implementation ###
+\cgalHeading{Implementation}
We implement the algorithm of Welzl with move-to-front
heuristic \cite w-sedbe-91a for small point sets, combined with a new
@@ -66,7 +66,7 @@ but substantially less than computing the new smallest enclosing
sphere from scratch. The clear operation and the check for validity
each take linear time.
-### Example ###
+\cgalHeading{Example}
\cgalExample{Min_sphere_d/min_sphere_d.cpp}
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 aa05d86a49e..df886794372 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
@@ -70,7 +70,7 @@ might still be an option in case your input number type cannot
\sa `CGAL::Min_sphere_d`
\sa `CGAL::Min_circle_2`
-### Implementation ###
+\cgalHeading{Implementation}
We implement two algorithms, the LP-algorithm and a
heuristic \cite msw-sblp-92. As described in the documentation of
@@ -93,7 +93,7 @@ not supported at this time. Also, the current implementation only
handles spheres with Cartesian coordinates; homogenous representation
is not supported yet.
-### Example ###
+\cgalHeading{Example}
\cgalExample{Min_sphere_of_spheres_d/min_sphere_of_spheres_d_d.cpp}
diff --git a/Bounding_volumes/doc/Bounding_volumes/CGAL/min_quadrilateral_2.h b/Bounding_volumes/doc/Bounding_volumes/CGAL/min_quadrilateral_2.h
index 4d78c59bf99..08c80d79abd 100644
--- a/Bounding_volumes/doc/Bounding_volumes/CGAL/min_quadrilateral_2.h
+++ b/Bounding_volumes/doc/Bounding_volumes/CGAL/min_quadrilateral_2.h
@@ -42,14 +42,14 @@ type from one the \cgal kernels. In this case, a default traits class
\sa `MinQuadrilateralTraits_2`
\sa `CGAL::Min_quadrilateral_default_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
We use a rotating caliper
algorithm
\cite stvwe-mepa-95, \cite v-fmep-90 with worst case running time linear
in the number of input points.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`P` with 20 vertices and computes the minimum enclosing
@@ -112,13 +112,13 @@ is `CGAL::Point_2` for some kernel `K`.
\sa `MinQuadrilateralTraits_2`
\sa `CGAL::Min_quadrilateral_default_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
We use a rotating caliper
algorithm \cite t-sgprc-83
with worst case running time linear in the number of input points.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`P` with 20 vertices and computes the minimum enclosing
@@ -180,13 +180,13 @@ is `CGAL::Point_2` for some kernel `K`.
\sa `MinQuadrilateralTraits_2`
\sa `CGAL::Min_quadrilateral_default_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
We use a rotating caliper
algorithm \cite t-sgprc-83
with worst case running time linear in the number of input points.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`P` with 20 vertices and computes the minimum enclosing
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 2a1585605a6..bfe28588339 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
@@ -242,7 +242,7 @@ is a model for `RectangularPCenterTraits_2`.
\sa `CGAL::Rectangular_p_center_default_traits_2`
\sa `CGAL::sorted_matrix_search`
-### Implementation ###
+\cgalHeading{Implementation}
The runtime is linear for \f$ p \in \{2,\,3\}\f$ and
\f$ \mathcal{O}(n \cdot \log n)\f$ for \f$ p = 4\f$ where \f$ n\f$ is the number of
@@ -252,7 +252,7 @@ algorithm uses a prune-and-search technique described in
search \cite fj-fkppc-83, \cite fj-gsrsm-84 and fast algorithms for
piercing rectangles \cite sw-rpppp-96.
-### Example ###
+\cgalHeading{Example}
The following code generates a random set of ten points
and computes its two-centers.
diff --git a/Box_intersection_d/doc/Box_intersection_d/CGAL/box_intersection_d.h b/Box_intersection_d/doc/Box_intersection_d/CGAL/box_intersection_d.h
index 8acdd944af2..74bdc7e8d47 100644
--- a/Box_intersection_d/doc/Box_intersection_d/CGAL/box_intersection_d.h
+++ b/Box_intersection_d/doc/Box_intersection_d/CGAL/box_intersection_d.h
@@ -56,7 +56,7 @@ namespace CGAL {
\sa `BoxIntersectionBox_d`
\sa `BoxIntersectionTraits_d`
-### Implementation ###
+\cgalHeading{Implementation}
The algorithm is trivially testing all pairs and runs therefore in time
\f$ O(nm)\f$ where \f$ n\f$ is the size of the first sequence and \f$ m\f$ is the
@@ -130,7 +130,7 @@ namespace CGAL {
values `Box_intersection_d::COMPLETE` and
`Box_intersection_d::BIPARTITE`.
- ### Requirements ###
+\cgalHeading{Requirements}
- `RandomAccessIterator1`, and \f$ \ldots\f$ `2`, must be
@@ -154,7 +154,7 @@ namespace CGAL {
\sa `BoxIntersectionBox_d`
\sa `BoxIntersectionTraits_d`
- ### Implementation ###
+\cgalHeading{Implementation}
The implemented algorithm is described in \cite cgal:ze-fsbi-02 as
version two. Its performance depends on a `cutoff` parameter.
@@ -186,7 +186,7 @@ namespace CGAL {
cutoff parameters are recommended. See also
Section \ref secboxintersperformance .
- ### Example ###
+\cgalHeading{Example}
The box implementation provided with
`Box_intersection_d::Box_d` has a special
@@ -327,7 +327,7 @@ namespace CGAL {
concept and that the box handle, i.e., the iterators value type, is
identical to the box type or a pointer to the box type.
- ### Requirements ###
+\cgalHeading{Requirements}
- `ForwardIterator` must be a forward iterator. We call its
@@ -351,7 +351,7 @@ namespace CGAL {
\sa `BoxIntersectionBox_d`
\sa `BoxIntersectionTraits_d`
- ### Implementation ###
+\cgalHeading{Implementation}
The algorithm is trivially testing all pairs and runs therefore in time
\f$ O(n^2)\f$ where \f$ n\f$ is the size of the input sequence. This algorithm
@@ -447,7 +447,7 @@ namespace CGAL {
concept and that the box handle, i.e., the iterators value type, is
identical to the box type or a pointer to the box type.
- ### Requirements ###
+\cgalHeading{Requirements}
- `RandomAccessIterator` must be a mutable random-access
@@ -470,12 +470,12 @@ namespace CGAL {
\sa `BoxIntersectionBox_d`
\sa `BoxIntersectionTraits_d`
- ### Implementation ###
+\cgalHeading{Implementation}
See the implementation section of the `box_intersection_d()`
function.
- ### Example ###
+\cgalHeading{Example}
The box implementation provided with
`Box_intersection_d::Box_d` has a special
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 42636eb8573..e2ebfac236a 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
@@ -6,7 +6,7 @@ namespace CGAL {
\cgalModels `CircularKernel`
-### Parameters ###
+\cgalHeading{Parameters}
The first parameter of the circular kernel must be instantiated with a
model of the `Kernel` concept. The `Circular_kernel_2` class
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 55af8e3af88..00799f807a6 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
@@ -6,7 +6,7 @@ namespace CGAL {
\cgalModels `CircularKernel::LineArc_2`
-### I/O ###
+\cgalHeading{I/O}
The format for input/output is, for each line arc: a `Line_2`
(the supporting line) and two `Circular_arc_point_2` (the two endpoints),
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 149e20d236e..023e0c82d99 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
@@ -6,7 +6,7 @@ namespace CGAL {
\cgalModels `SphericalKernel::CircularArc_3`
-### I/O ###
+\cgalHeading{I/O}
The input/output format of a circular arc consists of the supporting circle
represented as a `Circle_3` object followed by the source and target
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 2cfac646eb7..717f4f5150c 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
@@ -6,7 +6,7 @@ namespace CGAL {
\cgalModels `SphericalKernel`
-### Parameters ###
+\cgalHeading{Parameters}
The first parameter of the spherical kernel must be instantiated with
a model of the `Kernel` concept. The `Spherical_kernel_3`
diff --git a/Circulator/doc/Circulator/CGAL/circulator.h b/Circulator/doc/Circulator/CGAL/circulator.h
index 53357436f95..efed1f96c95 100644
--- a/Circulator/doc/Circulator/CGAL/circulator.h
+++ b/Circulator/doc/Circulator/CGAL/circulator.h
@@ -121,11 +121,11 @@ requirements for container (i.e.\ to have a `begin()` and an
`reference`, `const_reference`, `value_type`,
`size_type`, and `difference_type`).
-### Types ###
+\cgalHeading{Types}
All types required for circulators are provided.
-### Operations ###
+\cgalHeading{Operations}
The adaptor conforms to the requirements of the corresponding
circulator category. An additional member function
@@ -136,7 +136,7 @@ the same position as the circulator does.
\sa `Circulator_from_iterator`
\sa `Circulator`
-### Example ###
+\cgalHeading{Example}
The following program composes two adaptors - from a container to a
circulator and back to an iterator. It applies an \stl sort algorithm
@@ -192,7 +192,7 @@ category. The circulator will be mutable or non-mutable according to
the iterator. Iterators provide no `size_type`. This adapter
assumes `std::size_t` instead.
-### Operations ###
+\cgalHeading{Operations}
The adaptor conforms to the requirements of the respective circulator
category. An additional member function `current_iterator()`
@@ -203,7 +203,7 @@ circulator does.
\sa `Circulator_from_container`
\sa `Circulator`
-### Example ###
+\cgalHeading{Example}
The following program composes two adaptors - from an iterator to a
circulator and back to an iterator. It applies an \stl sort algorithm
@@ -313,7 +313,7 @@ circulator category for iterators, i.e.\ one of
`Forward_circulator_tag`, `Bidirectional_circulator_tag`, or
`Random_access_circulator_tag`.
-### Example ###
+\cgalHeading{Example}
A generic function `bar` that distinguishes between a call with a
circulator range and a call with an iterator range:
@@ -386,7 +386,7 @@ otherwise.
\sa `Circulator_from_container`
\sa `Circulator`
-### Example ###
+\cgalHeading{Example}
The generic reverse() algorithm from the \stl can be used with an
adaptor if at least a bidirectional circulator c is given.
@@ -399,7 +399,7 @@ reverse( container.begin(), container.end());
\endcode
-### Implementation ###
+\cgalHeading{Implementation}
The iterator adaptor keeps track of the number of rounds a circulator
has done around the ring-like data structure (a kind of winding
@@ -552,7 +552,7 @@ the range is empty or not.
\pre `IC` is either a circulator or an iterator type. The range `[i, j)` is valid.
-### Example ###
+\cgalHeading{Example}
The following function `process_all` accepts a range `[i, j)` of an iterator or circulator `IC` and processes each
element in this range:
diff --git a/Circulator/doc/Circulator/CGAL/circulator_bases.h b/Circulator/doc/Circulator/CGAL/circulator_bases.h
index d70d3ee0e8c..5c1e7634057 100644
--- a/Circulator/doc/Circulator/CGAL/circulator_bases.h
+++ b/Circulator/doc/Circulator/CGAL/circulator_bases.h
@@ -18,7 +18,7 @@ To use the tags or base classes only it is sufficient to include:
\sa `is_empty_range`
\sa `Circulator`
-### Example ###
+\cgalHeading{Example}
The above declarations can be used to distinguish between iterators
and circulators and between different circulator categories. The
@@ -34,7 +34,7 @@ example program illustrates both.
/*!
\addtogroup PkgHandlesAndCirculatorsBaseClasses
-### Implementation ###
+\cgalHeading{Implementation}
Since not all current compilers can eliminate the space needed for the
compile time tags even when deriving from them, we implement a variant
diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h
index beedb7b598d..e9a09e3b44c 100644
--- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h
+++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map.h
@@ -22,7 +22,7 @@ There are two default template arguments:
`Combinatorial_map_min_items` for `Items` and
`CGAL_ALLOCATOR(int)` from the `` header file for `Alloc`.
-##Complexity##
+\cgalHeading{Complexity}
The complexity of `sew` and `unsew` is in O(\f$ |\f$S\f$ |\f$\f$ \times\f$\f$ |\f$c\f$ |\f$), S
diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map_min_items.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map_min_items.h
index 380e5cf3b1b..e5dbd23e4b4 100644
--- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map_min_items.h
+++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Combinatorial_map_min_items.h
@@ -12,7 +12,7 @@ In this class, no attribute is enabled.
\cgalModels `CombinatorialMapItems`
-### Example ###
+\cgalHeading{Example}
The following example shows the implementation of the
`Combinatorial_map_min_items` class.
diff --git a/Combinatorial_map/doc/Combinatorial_map/CGAL/Dart.h b/Combinatorial_map/doc/Combinatorial_map/CGAL/Dart.h
index 9bb0eeee14d..03214d5e379 100644
--- a/Combinatorial_map/doc/Combinatorial_map/CGAL/Dart.h
+++ b/Combinatorial_map/doc/Combinatorial_map/CGAL/Dart.h
@@ -17,7 +17,7 @@ non void i-attribute.
\tparam CMap must be a model of the `CombinatorialMap` concept.
-###Complexity ###
+\cgalHeading{Complexity }
Each \f$ \beta_i\f$ link is initialized to `CMap::null_dart_handle`, and each
attribute handle of non void i-attribute is initialized to `NULL`
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_akl_toussaint.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_akl_toussaint.h
index 3ab9a85ed32..d4d7991bc0b 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_akl_toussaint.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_akl_toussaint.h
@@ -13,7 +13,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `ForwardIterator` and
@@ -37,7 +37,7 @@ functions that return instances of these types:
\sa `CGAL::ch_melkman`
\sa `CGAL::convex_hull_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses the algorithm of Akl and
Toussaint \cite at-fcha-78 that requires \f$ O(n \log n)\f$ time for \f$ n\f$ input
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_bykat.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_bykat.h
index bf5e3f50dfc..e95f66044fe 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_bykat.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_bykat.h
@@ -14,7 +14,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and
@@ -38,7 +38,7 @@ functions that return instances of these types:
\sa `CGAL::ch_melkman`
\sa `CGAL::convex_hull_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the non-recursive variation of
Eddy's algorithm \cite e-nchap-77 described in \cite b-chfsp-78.
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_eddy.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_eddy.h
index f2f114bc225..f2e75b80524 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_eddy.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_eddy.h
@@ -14,7 +14,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
The default traits class `Default_traits` is the kernel in which the
type value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and
@@ -38,7 +38,7 @@ functions that return instances of these types:
\sa `CGAL::ch_melkman`
\sa `CGAL::convex_hull_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements Eddy's algorithm
\cite e-nchap-77, which is the two-dimensional version of the quickhull
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_graham_andrew.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_graham_andrew.h
index d3d63110804..102ea88525d 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_graham_andrew.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_graham_andrew.h
@@ -15,7 +15,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
The default traits class `Default_traits` is the kernel in which the
value type of `InputIteratore` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and
@@ -41,7 +41,7 @@ functions that return instances of these types:
\sa `CGAL::lower_hull_points_2`
\sa `CGAL::upper_hull_points_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements Andrew's variant of the Graham
scan algorithm \cite a-aeach-79 and follows the presentation of Mehlhorn
@@ -71,7 +71,7 @@ by the first and last points in this sequence.
The default traits class `Default_traits` is the kernel in which the
type `BidirectionalIterator::value_type` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- `BidirectionalIterator::value_type` and
@@ -90,13 +90,13 @@ functions that return instances of these types:
\sa `CGAL::lower_hull_points_2`
\sa `CGAL::upper_hull_points_2`
-### Implementation ###
+\cgalHeading{Implementation}
The function uses Andrew's
variant of the Graham scan algorithm \cite a-aeach-79. This algorithm
requires \f$ O(n \log n)\f$ time in the worst case for \f$ n\f$ input points.
-### Example ###
+\cgalHeading{Example}
In the following example `ch_graham_andrew_scan()` is used to
realize Anderson's variant \cite a-readc-78 of the Graham Scan
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_jarvis.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_jarvis.h
index 7e88f0d6b00..8449b3af3c3 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_jarvis.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_jarvis.h
@@ -14,7 +14,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
The default traits class `Default_traits` is the kernel in which the
value type of `InputIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and
@@ -38,7 +38,7 @@ functions that return instances of these types:
\sa `CGAL::ch_melkman`
\sa `CGAL::convex_hull_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses the Jarvis march (gift-wrapping)
algorithm \cite j-ichfs-73. This algorithm requires \f$ O(n h)\f$ time
@@ -66,7 +66,7 @@ points from a given set of input points that line between two input points.
The default traits class `Default_traits` is the kernel in which the
type `ForwardIterator::value_type` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- `ForwardIterator::value_type` and
@@ -86,7 +86,7 @@ functions that return instances of these types:
\sa `CGAL::lower_hull_points_2`
\sa `CGAL::upper_hull_points_2`
-### Implementation ###
+\cgalHeading{Implementation}
The function uses the Jarvis march (gift-wrapping) algorithm \cite j-ichfs-73.
This algorithm requires \f$ O(n h)\f$ time in the worst
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_melkman.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_melkman.h
index 0f6294c11a5..2807838d7d0 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_melkman.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_melkman.h
@@ -13,7 +13,7 @@ the resulting sequence is returned.
The default traits class `Default_traits` is the kernel in which the
value type of `InputIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and `OutputIterator`
@@ -37,7 +37,7 @@ functions that return instances of these types:
\sa `CGAL::ch_melkman`
\sa `CGAL::convex_hull_2`
-### Implementation ###
+\cgalHeading{Implementation}
It uses an implementation of Melkman's algorithm \cite m-olcch-87.
Running time of this is linear.
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_selected_extreme_points_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_selected_extreme_points_2.h
index 35ba41bbfa8..b766dd64451 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_selected_extreme_points_2.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/ch_selected_extreme_points_2.h
@@ -14,7 +14,7 @@ After execution, the value of
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines a type `Traits::Less_xy_2` as described in
the concept `ConvexHullTraits_2` and the corresponding member
@@ -53,7 +53,7 @@ After execution, the value of
The default traits class `Default_traits` is the kernel in which the type
`ForwardIterator::value_type` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines the type `Traits::Less_yx_2` as specified in
the concept `ConvexHullTraits_2` and the corresponding member
@@ -94,7 +94,7 @@ holds for all iterators in the range.
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines the type `Traits::Less_yx_2` as specified in
the concept `ConvexHullTraits_2` and the corresponding member
@@ -137,7 +137,7 @@ After execution, the value of
\f$ \ge_{xy}\f$ `*it` hold for all iterators
`it` in the range.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` contains the following subset of types from
the concept `ConvexHullTraits_2` and their corresponding member
@@ -186,7 +186,7 @@ After execution, the value of
The default traits class `Default_traits` is the kernel in which the
type `ForwardIterator::value_type` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines the type `Traits::Less_yx_2` as specified in
the concept `ConvexHullTraits_2` and the corresponding member
@@ -227,7 +227,7 @@ holds for all iterators in the range.
The default traits class `Default_traits` is the kernel in which the
type `ForwardIterator::value_type` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines the type `Traits::Less_xy_2` as specified in
the concept `ConvexHullTraits_2` and the corresponding member
@@ -264,7 +264,7 @@ After execution, the value of
`w` is an iterator in the range such that `*w` \f$ \le_{xy}\f$
`*it` for all iterators `it` in the range.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` defines the type `Traits::Less_xy_2` as specified in
the concept `ConvexHullTraits_2` and the corresponding member
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_2.h
index 7f308ec7713..99148d7e7a9 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_2.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/convex_hull_2.h
@@ -17,7 +17,7 @@ cyclic sequence of extreme points is cut into a linear sequence.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and `OutputIterator`
@@ -42,7 +42,7 @@ functions that return instances of these types:
\sa `CGAL::ch_jarvis`
\sa `CGAL::ch_melkman`
-### Implementation ###
+\cgalHeading{Implementation}
One of two algorithms is used,
depending on the type of iterator used to specify the input points. For
@@ -103,7 +103,7 @@ The different treatment by `upper_hull_points_2()` of the case that
all points are equal ensures that concatenation of lower and upper hull
points gives the sequence of extreme points.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and `OutputIterator`
@@ -124,7 +124,7 @@ functions that return instances of these types:
\sa `CGAL::ch_graham_andrew_scan`
\sa `CGAL::upper_hull_points_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses Andrew's variant of Graham's scan algorithm
\cite a-aeach-79, \cite m-mdscg-84. The algorithm has worst-case running time
@@ -167,7 +167,7 @@ The different treatment by `lower_hull_points_2()` of the case that
all points are equal ensures that concatenation of lower and upper hull
points gives the sequence of extreme points.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `InputIterator` and `OutputIterator`
@@ -188,7 +188,7 @@ functions that return instances of these types:
\sa `CGAL::ch_graham_andrew_scan`
\sa `CGAL::lower_hull_points_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses Andrew's
variant of Graham's scan algorithm \cite a-aeach-79, \cite m-mdscg-84. The algorithm
diff --git a/Convex_hull_2/doc/Convex_hull_2/CGAL/convexity_check_2.h b/Convex_hull_2/doc/Convex_hull_2/CGAL/convexity_check_2.h
index 17701016877..b660c802309 100644
--- a/Convex_hull_2/doc/Convex_hull_2/CGAL/convexity_check_2.h
+++ b/Convex_hull_2/doc/Convex_hull_2/CGAL/convexity_check_2.h
@@ -16,7 +16,7 @@ if it consists of only extreme points
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` contains the following subset of types from
the concept `ConvexHullTraits_2` and their corresponding member
@@ -30,7 +30,7 @@ functions that return instances of these types:
\sa `CGAL::is_cw_strongly_convex_2`
\sa `CGAL::is_strongly_convex_3`
-### Implementation ###
+\cgalHeading{Implementation}
The algorithm requires \f$ O(n)\f$ time for a set of \f$ n\f$ input points.
@@ -65,7 +65,7 @@ if it consists of only extreme points
The default traits class `Default_traits` is the kernel in which the
value type of `ForwardIterator` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
`Traits` contains the following subset of types from
the concept `ConvexHullTraits_2` and their corresponding member
@@ -79,7 +79,7 @@ functions that return instances of these types:
\sa `CGAL::is_ccw_strongly_convex_2`
\sa `CGAL::is_strongly_convex_3`
-### Implementation ###
+\cgalHeading{Implementation}
The algorithm requires \f$ O(n)\f$ time for a set of \f$ n\f$ input points.
diff --git a/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_3.h b/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_3.h
index 9b58e482f72..c47e752b87c 100644
--- a/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_3.h
+++ b/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_3.h
@@ -28,7 +28,7 @@ then the default traits class of `::convex_hull_3()` is `Convex_hull_traits_3
\sa `convex_hull_incremental_3()`
-### Implementation ###
+\cgalHeading{Implementation}
The algorithm implemented by these functions is the quickhull algorithm of
Barnard et al. \cite bdh-qach-96.
diff --git a/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_incremental_3.h b/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_incremental_3.h
index f627a3626c7..9c7ef487ed4 100644
--- a/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_incremental_3.h
+++ b/Convex_hull_3/doc/Convex_hull_3/CGAL/convex_hull_incremental_3.h
@@ -29,7 +29,7 @@ the representation class `R` required by
\sa `convex_hull_3()`
\sa `Convex_hull_d`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses the `d`-dimensional convex hull incremental construction
algorithm \cite cms-frric-93
diff --git a/Convex_hull_3/doc/Convex_hull_3/CGAL/convexity_check_3.h b/Convex_hull_3/doc/Convex_hull_3/CGAL/convexity_check_3.h
index 13278422041..dea22442de3 100644
--- a/Convex_hull_3/doc/Convex_hull_3/CGAL/convexity_check_3.h
+++ b/Convex_hull_3/doc/Convex_hull_3/CGAL/convexity_check_3.h
@@ -11,7 +11,7 @@ vertices of the convex hull).
The default traits class is the kernel in which the type
`Polyhedron::Point_3` is defined.
-### Requirements ###
+\cgalHeading{Requirements}
- `Polyhedron::Point_3` is equivalent to `Traits::Point_3`.
@@ -34,7 +34,7 @@ the facet type must be `ConvexHullPolyhedronFacet_3`.
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the tests described in \cite mnssssu-cgpvg-96 to
determine convexity and requires \f$ O(e + f)\f$ time for a polyhedron with
diff --git a/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d.h b/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d.h
index 3a7cc920634..e04e2c848d6 100644
--- a/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d.h
+++ b/Convex_hull_d/doc/Convex_hull_d/CGAL/Convex_hull_d.h
@@ -44,7 +44,7 @@ C.index_of_vertex_in_opposite_facet(f,i)`. Then
\tparam R must be a model of the concept `ConvexHullTraits_d`.
-### Iteration Statements ###
+\cgalHeading{Iteration Statements}
forall_ch_vertices(\f$ v,C\f$) \f$ \{\f$ the vertices of \f$ C\f$ are
successively assigned to \f$ v\f$ \f$ \}\f$
@@ -55,7 +55,7 @@ successively assigned to \f$ s\f$ \f$ \}\f$
forall_ch_facets(\f$ f,C\f$) \f$ \{\f$ the facets of \f$ C\f$ are
successively assigned to \f$ f\f$ \f$ \}\f$
-### Implementation ###
+\cgalHeading{Implementation}
The implementation of type `Convex_hull_d` is based on
\cite cms-frric-93 and \cite bms-dgc-94. The details
diff --git a/Convex_hull_d/doc/Convex_hull_d/CGAL/Delaunay_d.h b/Convex_hull_d/doc/Convex_hull_d/CGAL/Delaunay_d.h
index cac9acb5cba..d1261db927c 100644
--- a/Convex_hull_d/doc/Convex_hull_d/CGAL/Delaunay_d.h
+++ b/Convex_hull_d/doc/Convex_hull_d/CGAL/Delaunay_d.h
@@ -57,7 +57,7 @@ belongs to the furthest site triangulation.
\tparam R must be a model of the concept `DelaunayTraits_d`.
\tparam Lifted_R must be a model of the concept `DelaunayLiftedTraits_d`.
-### Implementation ###
+\cgalHeading{Implementation}
The data type is derived from `Convex_hull_d` via
the lifting map. For a point `x` in `d`-dimensional space let
@@ -73,7 +73,7 @@ The space requirement is the same as for convex hulls. The time
requirement for an insert is the time to insert the lifted point
into the convex hull of the lifted points.
-### Example ###
+\cgalHeading{Example}
The abstract data type `Delaunay_d` has a default instantiation by
means of the `d`-dimensional geometric kernel.
@@ -98,7 +98,7 @@ Vertex_handle v1 = T.insert(Point_d(2,11));
}
\endcode
-### Traits Requirements ###
+\cgalHeading{Traits Requirements}
`Delaunay_d< R, Lifted_R >` requires the following types from the kernel traits `Lifted_R`:
diff --git a/Generator/doc/Generator/CGAL/Random.h b/Generator/doc/Generator/CGAL/Random.h
index 5b7810bca29..ee053d43aef 100644
--- a/Generator/doc/Generator/CGAL/Random.h
+++ b/Generator/doc/Generator/CGAL/Random.h
@@ -17,7 +17,7 @@ It can be very useful, e.g. for debugging, to reproduce a sequence of
random numbers. This can be done by either initialising with a fixed
seed, or by using the state functions as described below.
-### Implementation ###
+\cgalHeading{Implementation}
We use the boost random library function `boost::rand48` to generate the random
numbers.
diff --git a/Generator/doc/Generator/CGAL/point_generators_2.h b/Generator/doc/Generator/CGAL/point_generators_2.h
index 021c462008b..3729bde1e4c 100644
--- a/Generator/doc/Generator/CGAL/point_generators_2.h
+++ b/Generator/doc/Generator/CGAL/point_generators_2.h
@@ -11,7 +11,7 @@ replacing each point with a random point from the `xeps` \f$ \times\f$
`yeps` rectangle centered at the original point. Two random numbers
are needed from `rnd` for each point.
-### Requires ###
+\cgalHeading{Requires}
- `Creator` must be a function object accepting two
`double` values \f$ x\f$ and \f$ y\f$ and returning an initialized point
@@ -72,7 +72,7 @@ The function creates the first \f$ n\f$ points on the regular \f$ \lceil\sqrt{n}
the \f$ n\f$ points.
-### Requires ###
+\cgalHeading{Requires}
- `Creator` must be a function object accepting two
`double` values \f$ x\f$ and \f$ y\f$ and returning an initialized point
@@ -108,7 +108,7 @@ in the range `[first,last)`.
Three random numbers are needed from `rnd` for each point.
Returns the value of `first2` after inserting the \f$ n\f$ points.
-### Requires ###
+\cgalHeading{Requires}
- `Creator` must be a function object accepting two
`double` values \f$ x\f$ and \f$ y\f$ and returning an initialized point
diff --git a/Generator/doc/Generator/CGAL/point_generators_3.h b/Generator/doc/Generator/CGAL/point_generators_3.h
index 1b1cae93b48..ebdb98509e5 100644
--- a/Generator/doc/Generator/CGAL/point_generators_3.h
+++ b/Generator/doc/Generator/CGAL/point_generators_3.h
@@ -11,7 +11,7 @@ grid within the cube
inserting the \f$ n\f$ points.
-###Requires###
+\cgalHeading{Requires}
- `Creator` must be a function object accepting three
`double` values \f$ x\f$, \f$ y\f$, and \f$ z\f$ and returning an initialized
point `(x,y,z)` of type `P`. Predefined implementations for
diff --git a/Generator/doc/Generator/CGAL/point_generators_d.h b/Generator/doc/Generator/CGAL/point_generators_d.h
index ee6f6f9532f..4399da5a420 100644
--- a/Generator/doc/Generator/CGAL/point_generators_d.h
+++ b/Generator/doc/Generator/CGAL/point_generators_d.h
@@ -13,7 +13,7 @@ within the hypercube \f$ [-a,a]^{dim}\f$.
\returns the value of \f$ o\f$ after inserting the \f$ n\f$ points.
-### Requirements ###
+\cgalHeading{Requirements}
- `Creator` must be a functor accepting an integer (the dimension)
diff --git a/Generator/doc/Generator/CGAL/random_convex_set_2.h b/Generator/doc/Generator/CGAL/random_convex_set_2.h
index b2abf40fdd8..a474f5ceaf6 100644
--- a/Generator/doc/Generator/CGAL/random_convex_set_2.h
+++ b/Generator/doc/Generator/CGAL/random_convex_set_2.h
@@ -14,7 +14,7 @@ we cannot easily describe the resulting distribution.
-### Requirements ###
+\cgalHeading{Requirements}
- `PointGenerator` is a model of the concept PointGenerator
- `Traits` is a model of the concept RandomConvexSetTraits_2
@@ -28,14 +28,14 @@ R >` for some representation class `R`,
\sa `CGAL::Random_points_in_square_2`
\sa `CGAL::Random_points_in_disc_2`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses the centroid method
described in \cite cgal:s-zkm-96 and has a worst case running time of \f$ O(r
\cdot n + n \cdot \log n)\f$, where \f$ r\f$ is the time needed by `pg`
to generate a random point.
-### Example ###
+\cgalHeading{Example}
The following program displays a random convex 500-gon where the
points are drawn uniformly from the unit square centered at the
diff --git a/Generator/doc/Generator/CGAL/random_polygon_2.h b/Generator/doc/Generator/CGAL/random_polygon_2.h
index 7bc0464186e..fc9aed019f1 100644
--- a/Generator/doc/Generator/CGAL/random_polygon_2.h
+++ b/Generator/doc/Generator/CGAL/random_polygon_2.h
@@ -15,7 +15,7 @@ points has a non-zero probability of being constructed, some polygons may
have higher probabilities than others. The overall distribution of the
generated polygons is not known since it depends on the generated points.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concept RandomPolygonTraits_2
- `PointGenerator::value_type` is equivalent to
@@ -28,7 +28,7 @@ The default traits class `Default_traits` is the kernel in which
\sa `CGAL::Random_points_in_disc_2`
\sa `CGAL::Random_points_in_square_2`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation is based on the method of eliminating self-intersections in
a polygon by using so-called "2-opt" moves. Such a move eliminates an
@@ -39,7 +39,7 @@ Intersecting edges are detected using a simple sweep through the vertices
and then one intersection is chosen at random to eliminate after each sweep.
The worse-case running time is therefore \f$ O(n^4 \log n)\f$.
-### Example ###
+\cgalHeading{Example}
The following program displays a random simple polygon with up to 100
vertices, where the vertex coordinates are drawn uniformly from the
diff --git a/Geomview/doc/Geomview/CGAL/IO/Geomview_stream.h b/Geomview/doc/Geomview/CGAL/IO/Geomview_stream.h
index 25fdea2e9b6..3b6cc552736 100644
--- a/Geomview/doc/Geomview/CGAL/IO/Geomview_stream.h
+++ b/Geomview/doc/Geomview/CGAL/IO/Geomview_stream.h
@@ -8,7 +8,7 @@ namespace CGAL {
from. The constructor starts Geomview either on the local either on
a remote machine.
- ### Implementation ###
+\cgalHeading{Implementation}
The constructor forks a process and establishes two pipes between the
processes. The forked process is then overlaid with Geomview. The
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_const_decorator.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_const_decorator.h
index 2e6aab94ce5..f0b523102a8 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_const_decorator.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_const_decorator.h
@@ -24,7 +24,7 @@ all halfedge data structures and will not appear here again.
\tparam HDS must be a model of `HalfedgeDS`
-### Example ###
+\cgalHeading{Example}
The following program fragment illustrates the implementation of a
`is_valid()` member function for a simplified polyhedron class.
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_decorator.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_decorator.h
index 782e473f8e2..3bb07154dc3 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_decorator.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_decorator.h
@@ -23,7 +23,7 @@ all halfedge data structures and will not appear here again.
\sa `CGAL::HalfedgeDS_items_decorator`
\sa `CGAL::HalfedgeDS_const_decorator`
-### Example ###
+\cgalHeading{Example}
The following program fragment illustrates the implementation of the
Euler operator `split_vertex()` for a simplified polyhedron class.
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h
index 8668c2c7ee7..facfc5c279f 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_default.h
@@ -21,7 +21,7 @@ removal.
\sa `CGAL::HalfedgeDS_decorator`
\sa `CGAL::HalfedgeDS_const_decorator`
-### Implementation ###
+\cgalHeading{Implementation}
Currently, `HalfedgeDS_default` is derived from `CGAL::HalfedgeDS_list`.
The copy constructor and the assignment operator need \f$ O(n)\f$ time with
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h
index 0c7f0d50581..74762abd8ee 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_2.h
@@ -19,7 +19,7 @@ is the template argument of the corresponding `HalfedgeDS`.
\sa `CGAL::HalfedgeDS_halfedge_base`
\sa `CGAL::HalfedgeDS_face_base`
-### Example ###
+\cgalHeading{Example}
The following example shows the canonical implementation of the
`HalfedgeDS_items_2` class. It uses the base classes for the item types that
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_decorator.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_decorator.h
index e7947e559a5..0f1a6a74203 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_decorator.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_items_decorator.h
@@ -23,7 +23,7 @@ all halfedge data structures and will not appear here again.
\sa `CGAL::HalfedgeDS_decorator`
\sa `CGAL::HalfedgeDS_const_decorator`
-### Example ###
+\cgalHeading{Example}
The following program fragment illustrates how a refined halfedge
class for a polyhedron can make use of the `find_prev()` member
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h
index 26642f92b30..ac0b30b6a3b 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_list.h
@@ -17,7 +17,7 @@ iterators that supports removal.
\sa `CGAL::HalfedgeDS_decorator`
\sa `CGAL::HalfedgeDS_const_decorator`
-### Implementation ###
+\cgalHeading{Implementation}
`HalfedgeDS_list` uses internally the `CGAL::In_place_list` container class.
The copy constructor and the assignment operator need \f$ O(n)\f$ time with
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h
index 00a98d9e047..7036bb036b4 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_min_items.h
@@ -19,7 +19,7 @@ halfedges.
\sa `CGAL::HalfedgeDS_halfedge_min_base`
\sa `CGAL::HalfedgeDS_face_min_base`
-### Example ###
+\cgalHeading{Example}
The following example shows the canonical implementation of the
`CGAL::HalfedgeDS_min_items` class. It uses the base classes for the
diff --git a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h
index 087d42c3170..437b7e4cd02 100644
--- a/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h
+++ b/HalfedgeDS/doc/HalfedgeDS/CGAL/HalfedgeDS_vector.h
@@ -17,7 +17,7 @@ access iterators that does not support removal.
\sa `CGAL::HalfedgeDS_decorator`
\sa `CGAL::HalfedgeDS_const_decorator`
-### Implementation ###
+\cgalHeading{Implementation}
`HalfedgeDS_vector` uses internally the \stl `std::vector` container
class. We require that we can create a `std::vector::iterator`
diff --git a/Inscribed_areas/doc/Inscribed_areas/CGAL/Largest_empty_iso_rectangle_2.h b/Inscribed_areas/doc/Inscribed_areas/CGAL/Largest_empty_iso_rectangle_2.h
index 0e1bbc6c93e..d010ed1276e 100644
--- a/Inscribed_areas/doc/Inscribed_areas/CGAL/Largest_empty_iso_rectangle_2.h
+++ b/Inscribed_areas/doc/Inscribed_areas/CGAL/Largest_empty_iso_rectangle_2.h
@@ -11,7 +11,7 @@ that do not contain any point of the point set.
\tparam T must be a model of the concept `LargestEmptyIsoRectangleTraits_2`.
-### Implementation ###
+\cgalHeading{Implementation}
The algorithm is an implementation of \cite o-naler-90. The runtime of an
insertion or a removal is \f$ O(\log n)\f$. A query takes \f$ O(n^2)\f$ worst
diff --git a/Inscribed_areas/doc/Inscribed_areas/CGAL/extremal_polygon_2.h b/Inscribed_areas/doc/Inscribed_areas/CGAL/extremal_polygon_2.h
index d13b08078d6..9d300723e94 100644
--- a/Inscribed_areas/doc/Inscribed_areas/CGAL/extremal_polygon_2.h
+++ b/Inscribed_areas/doc/Inscribed_areas/CGAL/extremal_polygon_2.h
@@ -29,7 +29,7 @@ convex polygon (oriented clock- or counterclockwise).
\sa `CGAL::maximum_perimeter_inscribed_k_gon_2()`
\sa `ExtremalPolygonTraits_2`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses monotone matrix search
\cite akmsw-gamsa-87 and has a worst case running time of \f$ O(k
@@ -86,14 +86,14 @@ where `K` is a model of `Kernel`.
\sa `CGAL::Extremal_polygon_perimeter_traits_2`
\sa `CGAL::extremal_polygon_2()`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses monotone matrix search
\cite akmsw-gamsa-87 and has a worst case running time of \f$ O(k
\cdot n + n \cdot \log n)\f$, where \f$ n\f$ is the number of vertices in
\f$ P\f$.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`p` with ten vertices and computes the maximum area inscribed
@@ -155,14 +155,14 @@ defined that computes the squareroot of a number.
\sa `CGAL::Extremal_polygon_perimeter_traits_2`
\sa `CGAL::extremal_polygon_2()`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses monotone matrix search
\cite akmsw-gamsa-87 and has a worst case running time of \f$ O(k
\cdot n + n \cdot \log n)\f$, where \f$ n\f$ is the number of vertices in
\f$ P\f$.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`p` with ten vertices and computes the maximum perimeter inscribed
diff --git a/Interpolation/doc/Interpolation/CGAL/interpolation_functions.h b/Interpolation/doc/Interpolation/CGAL/interpolation_functions.h
index 985040e04d7..aa3cd8701f8 100644
--- a/Interpolation/doc/Interpolation/CGAL/interpolation_functions.h
+++ b/Interpolation/doc/Interpolation/CGAL/interpolation_functions.h
@@ -13,7 +13,7 @@ whether the retrieval was successful.
This class can be used to provide the values and gradients of the
interpolation functions.
-### Parameters ###
+\cgalHeading{Parameters}
The class
`Data_access` has the container type `Map` as template parameter.
@@ -68,13 +68,13 @@ generates the interpolated function value computed by Farin's interpolant.
The function `farin_c1_interpolation()` interpolates the function values and the
gradients that are provided by functors using the method described in \cite f-sodt-90.
-### Parameters ###
+\cgalHeading{Parameters}
The value type of `RandomAccessIterator` is a pair
associating a point to a (non-normalized) barycentric coordinate. See
`sibson_c1_interpolation()` for the other parameters.
-### Requirements ###
+\cgalHeading{Requirements}
Same requirements as for `sibson_c1_interpolation()` only the
iterator must provide random access and `Traits::FT` does not need
@@ -118,7 +118,7 @@ corresponding to each point of the point/coordinate pairs in the
range \f$ \left[\right.\f$`first`, `beyond`\f$ \left.\right)\f$.
\pre `norm` \f$ \neq0\f$. `function_value(p).second == true` for all points `p` of the point/coordinate pairs in the range \f$ \left[\right.\f$`first`, `beyond`\f$ \left.\right)\f$.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `ForwardIterator` is a pair of
@@ -166,11 +166,11 @@ pairs in the range \f$ \left[\right.\f$ `first`,
`beyond`\f$ \left.\right)\f$. See also
`sibson_c1_interpolation`. \pre `norm` \f$ \neq0\f$ `function_value(p).second == true` for all points `p` of the point/coordinate pairs in the range \f$ \left[\right.\f$`first`, `beyond`\f$ \left.\right)\f$.
-### Parameters ###
+\cgalHeading{Parameters}
See `sibson_c1_interpolation`.
-### Requirements ###
+\cgalHeading{Requirements}
Same requirements as for
`sibson_c1_interpolation()` only that `Traits::FT` does not need
@@ -215,7 +215,7 @@ interpolated function value as first and `true` as second value. \pre
`p` of the point/coordinate pairs in the range \f$\left[\right.\f$`first`, `beyond`\f$ \left.\right)\f$.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter `Traits` is to be
instantiated with a model of `InterpolationTraits`.
@@ -228,7 +228,7 @@ coordinates for the query point `p`. The functor
function given a point. `function_gradient` allows to access the
function gradient given a point.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concept
diff --git a/Interpolation/doc/Interpolation/CGAL/natural_neighbor_coordinates_2.h b/Interpolation/doc/Interpolation/CGAL/natural_neighbor_coordinates_2.h
index 5c309f01397..3a5cd48a8af 100644
--- a/Interpolation/doc/Interpolation/CGAL/natural_neighbor_coordinates_2.h
+++ b/Interpolation/doc/Interpolation/CGAL/natural_neighbor_coordinates_2.h
@@ -9,7 +9,7 @@ called Sibson's coordinates, for `2D` points provided a two-dimensional
triangulation and a query point in the convex hull of the vertices
of the triangulation.
-### Requirements ###
+\cgalHeading{Requirements}
- `Dt` are equivalent to the class
@@ -30,7 +30,7 @@ the traits class of the `polygon_area_2` function.
associating a point and its natural neighbor coordinate.
-### Implementation ###
+\cgalHeading{Implementation}
This function computes the area of the sub-cells
stolen from the Voronoi cells of the points in `dt` when inserting
diff --git a/Interpolation/doc/Interpolation/CGAL/regular_neighbor_coordinates_2.h b/Interpolation/doc/Interpolation/CGAL/regular_neighbor_coordinates_2.h
index b85898ecd47..782d19e66e7 100644
--- a/Interpolation/doc/Interpolation/CGAL/regular_neighbor_coordinates_2.h
+++ b/Interpolation/doc/Interpolation/CGAL/regular_neighbor_coordinates_2.h
@@ -10,7 +10,7 @@ two-dimensional regular triangulation and a (weighted) query point
inside the convex hull of the vertices of the triangulation. We call these
coordinates regular neighbor coordinates.
-### Requirements ###
+\cgalHeading{Requirements}
- `Rt` are equivalent to the class
@@ -26,7 +26,7 @@ meet the requirements for the traits class of the
associating a point and its regular neighbor coordinate.
-### Implementation ###
+\cgalHeading{Implementation}
This function computes the areas stolen from the
Voronoi cells of points in `rt` by the insertion of `p`. The
diff --git a/Interpolation/doc/Interpolation/CGAL/sibson_gradient_fitting.h b/Interpolation/doc/Interpolation/CGAL/sibson_gradient_fitting.h
index e25d3bc1962..1e0e0638533 100644
--- a/Interpolation/doc/Interpolation/CGAL/sibson_gradient_fitting.h
+++ b/Interpolation/doc/Interpolation/CGAL/sibson_gradient_fitting.h
@@ -12,7 +12,7 @@ gradient for all data points that lie inside the convex hull of the
data points. One function exists for each type of natural neighbor
coordinates.
-### Requirements ###
+\cgalHeading{Requirements}
- The value type of `ForwardIterator` is a pair of point/coordinate
@@ -38,7 +38,7 @@ provide a multiplication and addition operation with the type
\sa `CGAL::regular_neighbor_coordinates_2()`
\sa `CGAL::surface_neighbor_coordinates_3()`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements Sibson's gradient
estimation method based on natural neighbor coordinates
diff --git a/Interpolation/doc/Interpolation/CGAL/surface_neighbor_coordinates_3.h b/Interpolation/doc/Interpolation/CGAL/surface_neighbor_coordinates_3.h
index d7ff094fce6..640d0e7cf21 100644
--- a/Interpolation/doc/Interpolation/CGAL/surface_neighbor_coordinates_3.h
+++ b/Interpolation/doc/Interpolation/CGAL/surface_neighbor_coordinates_3.h
@@ -23,7 +23,7 @@ the range `[first, beyond)`. If the sample points are collected by a
`k`-nearest neighbor or a range search query, this permits to check
whether the neighborhood which has been considered is large enough.
-### Requirements ###
+\cgalHeading{Requirements}
- `Dt` is equivalent to the class
@@ -40,7 +40,7 @@ associating a point and its natural neighbor coordinate.
\sa `CGAL::Voronoi_intersection_2_traits_3`
\sa `CGAL::surface_neighbors_3()`
-### Implementation ###
+\cgalHeading{Implementation}
This functions construct the regular triangulation of the input points
instantiated with `Voronoi_intersection_2_traits_3` or `ITraits` if provided.
diff --git a/Interpolation/doc/Interpolation/CGAL/surface_neighbors_3.h b/Interpolation/doc/Interpolation/CGAL/surface_neighbors_3.h
index 3113cbecb6c..05eb9fffd5b 100644
--- a/Interpolation/doc/Interpolation/CGAL/surface_neighbors_3.h
+++ b/Interpolation/doc/Interpolation/CGAL/surface_neighbors_3.h
@@ -25,7 +25,7 @@ points are collected by a \f$ k\f$-nearest neighbor or a range search
query, this permits to verify that a large enough neighborhood has
been considered.
-### Requirements ###
+\cgalHeading{Requirements}
- `Dt` is equivalent to the class
@@ -38,7 +38,7 @@ been considered.
\sa CGAL::Voronoi_intersection_2_traits_3
\sa CGAL::surface_neighbor_coordinates_3
-### Implementation ###
+\cgalHeading{Implementation}
These functions compute the regular triangulation of
the sample points and the point `p` using a traits class
diff --git a/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list.h b/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list.h
index 7e9f1f778cf..a1c2f23e3c5 100644
--- a/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list.h
+++ b/Interval_skip_list/doc/Interval_skip_list/CGAL/Interval_skip_list.h
@@ -6,7 +6,7 @@ namespace CGAL {
The class `Interval_skip_list` is a dynamic data structure that
allows to find all members of a set of intervals that overlap a point.
-### Implementation ###
+\cgalHeading{Implementation}
The insertion and deletion of a segment in the interval skip list
takes expected time \f$ O(\log^2 n)\f$, if the segment endpoints are
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 d87eeb907c3..1f131a48e1e 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
@@ -7,7 +7,7 @@ The class `Interval_skip_list_interval` represents intervals with lower and uppe
bound of type `Value`. These intervals
can be open or closed at each endpoint.
-### I/O ###
+\cgalHeading{I/O}
The output operator is defined for `std::ostream`.
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 c901b137ef8..accd879b96e 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Aff_transformation_2.h
@@ -40,7 +40,7 @@ therefore do not appear in the constructors.
\sa `Translation`
\sa `rational_rotation_approximation`
-### Example ###
+\cgalHeading{Example}
\code
typedef Cartesian K;
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h b/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h
index f69b15a7252..1f63400da37 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Cartesian.h
@@ -16,7 +16,7 @@ the kernel is only an approximation of Euclidean geometry.
\cgalModels `Kernel`
-### Implementation ###
+\cgalHeading{Implementation}
All geometric objects in `Cartesian` are reference counted.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Cartesian_converter.h b/Kernel_23/doc/Kernel_23/CGAL/Cartesian_converter.h
index 55e9cbabff7..fb3212105fa 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Cartesian_converter.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Cartesian_converter.h
@@ -17,7 +17,7 @@ provide `K2::FT operator()(K1::FT n)` that converts `n` to an
The default value of this parameter is `CGAL::NT_converter`.
-### Example ###
+\cgalHeading{Example}
In the following example, we compute exactly
the intersection point between a line and a triangle,
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Dimension.h b/Kernel_23/doc/Kernel_23/CGAL/Dimension.h
index 6692d115a80..eabcd7a90cf 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Dimension.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Dimension.h
@@ -9,11 +9,11 @@ namespace CGAL {
The class `Ambient_dimension` allows to retrieve the dimension of the ambient space of
a type `T` in a kernel `K`.
-### Parameters ###
+\cgalHeading{Parameters}
The parameter `K` has the default value `Kernel_traits::Kernel>`.
-### Example ###
+\cgalHeading{Example}
The following retrieves the dimension of a point type.
@@ -66,7 +66,7 @@ for dispatching functions based on the dimension of an object, as provided
by the `dim` parameter. It is useful in cases where it is not more
practical to pass the dimension as a template parameter directly.
-### Example ###
+\cgalHeading{Example}
The following code declares two functions constructing two points at the origin,
either in 2D or in 3D.
@@ -107,7 +107,7 @@ for dispatching functions based on the dimension of an object.
`Dynamic_dimension_tag` indicates that the dimension is not known at compile-time.
`Dimension_tag` is the tag class dealing with compile-time dimensions.
-### Example ###
+\cgalHeading{Example}
The following code declares two functions constructing two points at the origin,
either in 2D or in 3D.
@@ -138,11 +138,11 @@ public:
The class `Feature_dimension` allows to retrieve the geometric dimension of a type `T`
in a kernel `K`.
-### Parameters ###
+\cgalHeading{Parameters}
The parameter `K` has the default value `Kernel_traits::Kernel`.
-### Example ###
+\cgalHeading{Example}
The following retrieves the dimension of a point type.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h b/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h
index 3f0f0d76f93..ae21b832e24 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Filtered_kernel.h
@@ -15,7 +15,7 @@ the global functions are those of `CK`.
\cgalModels `Kernel`
-### Example ###
+\cgalHeading{Example}
The following example shows how to produce a kernel whose geometric
objects and constructions are those of `Simple_cartesian`
@@ -61,7 +61,7 @@ techniques from \cite cgal:mp-fcafg-05.
The geometric constructions are exactly those
of the kernel `CK`, which means that they are not necessarily exact.
-### Parameters ###
+\cgalHeading{Parameters}
The first parameter, `CK`, is the "Construction Kernel", namely the kernel
from which are taken the types of the geometric objects as well as the
@@ -75,7 +75,7 @@ production use for deactivating static filters.
\cgalModels `Kernel`
-### Example ###
+\cgalHeading{Example}
The following example shows how to produce a kernel whose geometric
objects and constructions are those of `Simple_cartesian`
@@ -89,7 +89,7 @@ typedef CGAL::Simple_cartesian CK;
typedef CGAL::Filtered_kernel K;
\endcode
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses `CGAL::Filtered_predicate` over
each predicate of the kernel traits interface. Additionally, faster static
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h b/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h
index 79835b1738b..058c1630c68 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Filtered_predicate.h
@@ -18,7 +18,7 @@ To convert the geometric objects that are the arguments of the predicate,
we use the function objects `C2E` and `C2F`, which must be of the form
`Cartesian_converter` or `Homogeneous_converter`.
-### Example ###
+\cgalHeading{Example}
The following example defines an efficient and exact version of the
orientation predicate over three points using the Cartesian representation
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h b/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h
index e0129a2bfe8..e78a023a1f8 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Homogeneous.h
@@ -16,7 +16,7 @@ the kernel is only an approximation of Euclidean geometry.
\cgalModels `Kernel`
-### Implementation ###
+\cgalHeading{Implementation}
This model of a kernel uses reference counting.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h
index 7786f366ba7..f77a8641622 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h
@@ -17,7 +17,7 @@ on the negative side of `l`, iff
\f$ a\, px + b\, py +c < 0\f$.
The positive side is to the left of `l`.
-### Example ###
+\cgalHeading{Example}
Let us first define two %Cartesian two-dimensional points in the Euclidean
plane \f$ \E^2\f$. Their
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Origin.h b/Kernel_23/doc/Kernel_23/CGAL/Origin.h
index 3df69da1f75..dff284cca59 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Origin.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Origin.h
@@ -47,7 +47,7 @@ public:
A symbolic constant which denotes the point at the origin. This
constant is used in the conversion between points and vectors.
-### Example ###
+\cgalHeading{Example}
\code
Point_2< Cartesian > p(1.0, 1.0), q;
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h
index 017916fb64c..38cf0e8497e 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h
@@ -13,11 +13,11 @@ kernel model `Homogeneous`, `Kernel::RT` is equal
to `T`, and `Kernel::FT` is equal to
`Quotient`.
-### Operators ###
+\cgalHeading{Operators}
The following operations can be applied on points:
-### Example ###
+\cgalHeading{Example}
The following declaration creates two points with
%Cartesian double coordinates.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h
index 1ef62b7f4b4..913f4452a11 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h
@@ -13,7 +13,7 @@ kernel model `Homogeneous`, `Kernel::RT` is equal
to `T`, and `Kernel::FT` is equal to
`Quotient`.
-### Operators ###
+\cgalHeading{Operators}
The following operations can be applied on points:
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 e0f1a63ec22..7d411cdf5e6 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
@@ -13,7 +13,7 @@ deal with projections on the
`zx`- and the `zy`-plane,
respectively.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter `K` has to
be instantiated by a model of the `Kernel` concept.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h b/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h
index c33a33d44b3..530ce323e5a 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Simple_cartesian.h
@@ -16,7 +16,7 @@ the kernel is only an approximation of Euclidean geometry.
\cgalModels `Kernel`
-### Implementation ###
+\cgalHeading{Implementation}
In contrast to `Cartesian`, no reference counting
is used internally. This eases debugging, but may slow down algorithms
diff --git a/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h b/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h
index d0b273548ba..a50d4efab9d 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/Simple_homogeneous.h
@@ -16,7 +16,7 @@ the kernel is only an approximation of Euclidean geometry.
\cgalModels `Kernel`
-### Implementation ###
+\cgalHeading{Implementation}
In contrast to `Homogeneous`, no reference counting
is used internally. This eases debugging, but may slow down algorithms
diff --git a/Kernel_23/doc/Kernel_23/CGAL/enum.h b/Kernel_23/doc/Kernel_23/CGAL/enum.h
index dcb083da532..5dd901d12c2 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/enum.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/enum.h
@@ -139,7 +139,7 @@ const CGAL::Null_vector NULL_VECTOR;
A symbolic constant which denotes the point at the origin.
This constant is used in the conversion between points and vectors.
-### Example ###
+\cgalHeading{Example}
\code
Point_2< Cartesian > p(1.0, 1.0), q;
diff --git a/Kernel_23/doc/Kernel_23/CGAL/intersections.h b/Kernel_23/doc/Kernel_23/CGAL/intersections.h
index b48721658f1..6e53e58d306 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/intersections.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/intersections.h
@@ -385,7 +385,7 @@ p
| Point_3, or Segment_3 |
-### Example ###
+\cgalHeading{Example}
The following example demonstrates the most common use of
`intersection` routines with the 2D and 3D Linear %Kernel.
diff --git a/Kernel_23/doc/Kernel_23/CGAL/rational_rotation.h b/Kernel_23/doc/Kernel_23/CGAL/rational_rotation.h
index 1dfd7a98b6d..a83073ba48b 100644
--- a/Kernel_23/doc/Kernel_23/CGAL/rational_rotation.h
+++ b/Kernel_23/doc/Kernel_23/CGAL/rational_rotation.h
@@ -14,7 +14,7 @@ that `sin_num`/`denom` approximates the sine of direction
the approximating rational is bounded by `eps_num`/`eps_den`.
\pre `eps_num` \f$ \neq0\f$.
-### Implementation ###
+\cgalHeading{Implementation}
The approximation is based on Farey sequences as described in
the rational rotation method presented by Canny and Ressler at the
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Aff_transformation_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Aff_transformation_d.h
index 16a32220244..54300e91abb 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Aff_transformation_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Aff_transformation_d.h
@@ -12,7 +12,7 @@ must be non-zero. A point \f$ p\f$ with homogeneous coordinates \f$ (p[0],
= \f$ Mp\f$, where `A` is an affine transformation created from `M`
by the constructors below.
-### Implementation ###
+\cgalHeading{Implementation}
Affine Transformations are implemented by matrices of number type
`RT` as a handle type. All operations like creation,
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Direction_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Direction_d.h
index 37d718a8a60..3f2fe533351 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Direction_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Direction_d.h
@@ -13,12 +13,12 @@ which are of type `FT`. Two directions are equal if their
%Cartesian coordinates are positive multiples of each other. Directions
are in one-to-one correspondence to points on the unit sphere.
-### Downward compatibility ###
+\cgalHeading{Downward compatibility}
We provide the operations of the lower dimensional interface `dx()`,
`dy()`, `dz()`.
-### Implementation ###
+\cgalHeading{Implementation}
Directions are implemented by arrays of integers as an item type. All
operations like creation, initialization, tests, inversion, input and
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Hyperplane_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Hyperplane_d.h
index 4f44e4393cb..09aadfd3fb3 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Hyperplane_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Hyperplane_d.h
@@ -22,7 +22,7 @@ coefficient vectors are positive multiples of each other and they are
(weakly) equal if their coefficient vectors are multiples of each
other.
-### Implementation ###
+\cgalHeading{Implementation}
Hyperplanes are implemented by arrays of integers as an item type.
All operations like creation, initialization, tests, vector
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Line_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Line_d.h
index ac51e6d0afc..3ff713020d7 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Line_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Line_d.h
@@ -6,7 +6,7 @@ namespace CGAL {
An instance of data type `Line_d` is an oriented line in
\f$ d\f$-dimensional Euclidean space.
-### Implementation ###
+\cgalHeading{Implementation}
Lines are implemented by a pair of points as an item type. All
operations like creation, initialization, tests, direction
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Point_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Point_d.h
index e404fbf24ab..c332b756811 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Point_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Point_d.h
@@ -14,13 +14,13 @@ We call \f$ p_i\f$, \f$ 0 \leq i < d\f$ the \f$ i\f$-th %Cartesian coordinate an
\f$ h_i\f$, \f$ 0 \le i \le d\f$, the \f$ i\f$-th homogeneous coordinate. We call \f$ d\f$
the dimension of the point.
-### Downward compatibility ###
+\cgalHeading{Downward compatibility}
We provide operations of the lower
dimensional interface `x()`, `y()`, `z()`, `hx()`,
`hy()`, `hz()`, `hw()`.
-### Implementation ###
+\cgalHeading{Implementation}
Points are implemented by arrays of `RT` items. All operations
like creation, initialization, tests, point - vector arithmetic, input
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Ray_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Ray_d.h
index d1a3bb7fbb5..d0f63bd7be3 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Ray_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Ray_d.h
@@ -7,7 +7,7 @@ An instance of data type `Ray_d` is a ray in \f$ d\f$-dimensional
Euclidean space. It starts in a point called the source of `r` and
it goes to infinity.
-### Implementation ###
+\cgalHeading{Implementation}
Rays are implemented by a pair of points as an item type. All
operations like creation, initialization, tests, direction
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Segment_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Segment_d.h
index de13794aef9..dbee50989b6 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Segment_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Segment_d.h
@@ -9,7 +9,7 @@ two points \f$ p\f$ and \f$ q\f$. \f$ p\f$ is called the source point and \f$ q\
called the target point of \f$ s\f$, both points are called endpoints of
\f$ s\f$. A segment whose endpoints are equal is called degenerate.
-### Implementation ###
+\cgalHeading{Implementation}
Segments are implemented by a pair of points as an item type. All
operations like creation, initialization, tests, the calculation of
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Sphere_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Sphere_d.h
index fd5b3db8252..dfa07a98b81 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Sphere_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Sphere_d.h
@@ -13,7 +13,7 @@ sense and hence many operations on spheres require the set of defining
points to be legal. The orientation of \f$ S\f$ is equal to the
orientation of the defining points, i.e., `orientation(A)`.
-### Implementation ###
+\cgalHeading{Implementation}
Spheres are implemented by a vector of points as a handle type. All
operations like creation, initialization, tests, input and output of a
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Vector_d.h b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Vector_d.h
index 558f968f920..0f73e1a41dd 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Vector_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Kernel_d/Vector_d.h
@@ -16,13 +16,13 @@ main difference between position vectors and free vectors is their
behavior under affine transformations, e.g., free vectors are
invariant under translations.
-### Downward compatibility ###
+\cgalHeading{Downward compatibility}
We provide all operations of the
lower dimensional interface `x()`, `y()`, `z()`,
`hx()`, `hy()`, `hz()`, `hw()`.
-### Implementation ###
+\cgalHeading{Implementation}
Vectors are implemented by arrays of variables of type `RT`. All
operations like creation, initialization, tests, vector arithmetic,
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h
index 46e0657b301..c1bb4ba12d4 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraCd.h
@@ -12,7 +12,7 @@ algebra for field number types `FT`.
\tparam FT must be a field number type.
-### Operations ###
+\cgalHeading{Operations}
Fits all operation requirements of the concept.
diff --git a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h
index 3eb5acd7c28..28d54cfc28b 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/Linear_algebraHd.h
@@ -13,7 +13,7 @@ algebra for Euclidean ring number types `RT`.
\cgalRequires To make a ring number type `RT` work with this class it has to
provide a division `operator/` with remainder.
-### Operations ###
+\cgalHeading{Operations}
Fits all operation requirements of the concept.
diff --git a/Kernel_d/doc/Kernel_d/CGAL/intersections_d.h b/Kernel_d/doc/Kernel_d/CGAL/intersections_d.h
index bbbb547f8ab..560c66bb31f 100644
--- a/Kernel_d/doc/Kernel_d/CGAL/intersections_d.h
+++ b/Kernel_d/doc/Kernel_d/CGAL/intersections_d.h
@@ -118,7 +118,7 @@ the possible return values wrapped in `Object` are the following:
-### Example ###
+\cgalHeading{Example}
The following example demonstrates the most common use of
`intersection` routines.
diff --git a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Erase_event.h b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Erase_event.h
index aa80fc0567d..119b8ff16a9 100644
--- a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Erase_event.h
+++ b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Erase_event.h
@@ -13,7 +13,7 @@ is processed.
\sa `Kinetic::ActiveObjectsTable`
\sa `Kinetic::Active_objects_vector`
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
diff --git a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Insert_event.h b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Insert_event.h
index 1e5fa345343..27a5a9b8b0a 100644
--- a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Insert_event.h
+++ b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Insert_event.h
@@ -13,7 +13,7 @@ is processed.
\sa `Kinetic::ActiveObjectsTable`
\sa `Kinetic::Active_objects_vector`
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
diff --git a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Regular_triangulation_3.h b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Regular_triangulation_3.h
index 3d092b11dbb..58ae1a3bfe9 100644
--- a/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Regular_triangulation_3.h
+++ b/Kinetic_data_structures/doc/Kinetic_data_structures/CGAL/Kinetic/Regular_triangulation_3.h
@@ -21,7 +21,7 @@ vertex base.
\sa `Kinetic::Delaunay_triangulation_3`
\sa `Kinetic::RegularTriangulationVisitor_3`
-### Example ###
+\cgalHeading{Example}
\cgalExample{Kinetic_data_structures/Kinetic_regular_triangulation_3.cpp}
diff --git a/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Listener.h b/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Listener.h
index b63edd3ba4c..321946b2a65 100644
--- a/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Listener.h
+++ b/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Listener.h
@@ -59,7 +59,7 @@ writing my own.
\sa `Multi_listener`
-### Example ###
+\cgalHeading{Example}
Here is a simplier class that provides notifications:
diff --git a/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Ref_counted.h b/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Ref_counted.h
index 2a48c6c9429..b7814e971d5 100644
--- a/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Ref_counted.h
+++ b/Kinetic_data_structures/doc/Kinetic_framework/CGAL/Kinetic/Ref_counted.h
@@ -10,7 +10,7 @@ the type to be reference counted as the template argument) and then
access the object through `Handle` objects rather than bare C++
pointers.
-### Operations ###
+\cgalHeading{Operations}
There are no methods which should be called by users of this class.
diff --git a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_constructors.h b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_constructors.h
index 689eb6bdc08..0e7c393fe15 100644
--- a/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_constructors.h
+++ b/Linear_cell_complex/doc/Linear_cell_complex/CGAL/Linear_cell_complex_constructors.h
@@ -8,7 +8,7 @@ Objects are added in `lcc`, existing darts are not modified.
Returns a dart created during the import.
\pre `LCC::dimension`\f$ \geq\f$2 and `LCC::ambient_dimension`==2.
-### File format ###
+\cgalHeading{File format}
The file format must be the following. First
the number of vertices and the number of edges of the planar graph.
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 5a94a07cc86..905d9391a07 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
@@ -13,7 +13,7 @@ this class, 0-attributes are enabled and associated with
\tparam d the dimension of the combinatorial map.
-### Example ###
+\cgalHeading{Example}
The following example shows one implementation of the
`Linear_cell_complex_min_items` class.
diff --git a/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h b/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h
index 373f28ba22a..50dda164f9c 100644
--- a/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h
+++ b/Matrix_search/doc/Matrix_search/CGAL/Dynamic_matrix.h
@@ -17,7 +17,7 @@ matrix search.
\sa `MonotoneMatrixSearchTraits`
\sa `BasicMatrix`
-### Implementation ###
+\cgalHeading{Implementation}
All operations take constant time except for
`extract_all_even_rows()` which needs time linear in the number
diff --git a/Matrix_search/doc/Matrix_search/CGAL/monotone_matrix_search.h b/Matrix_search/doc/Matrix_search/CGAL/monotone_matrix_search.h
index dd171ebf94b..cf47c09db4d 100644
--- a/Matrix_search/doc/Matrix_search/CGAL/monotone_matrix_search.h
+++ b/Matrix_search/doc/Matrix_search/CGAL/monotone_matrix_search.h
@@ -49,7 +49,7 @@ binary function: `Matrix::Value` \f$ \times\f$
\sa `maximum_perimeter_inscribed_k_gon_2()`
\sa `extremal_polygon_2()`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses an algorithm by Aggarwal
et al.\cite akmsw-gamsa-87. The runtime is linear in the number
diff --git a/Matrix_search/doc/Matrix_search/CGAL/sorted_matrix_search.h b/Matrix_search/doc/Matrix_search/CGAL/sorted_matrix_search.h
index b1d2ed166c3..f598625c875 100644
--- a/Matrix_search/doc/Matrix_search/CGAL/sorted_matrix_search.h
+++ b/Matrix_search/doc/Matrix_search/CGAL/sorted_matrix_search.h
@@ -48,7 +48,7 @@ true.
\cgalRequires `Traits` is a model for `SortedMatrixSearchTraits`.
\cgalRequires Value type of `RandomAccessIterator` is `Traits::Matrix`.
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses an algorithm by
Frederickson and Johnson\cite fj-fkppc-83, \cite fj-gsrsm-84 and runs in
diff --git a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesher_2.h b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesher_2.h
index 42e3fcbdd3d..ffd3a8dfca8 100644
--- a/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesher_2.h
+++ b/Mesh_2/doc/Mesh_2/CGAL/Delaunay_mesher_2.h
@@ -18,7 +18,7 @@ a model of the concept `DelaunayMeshTraits_2`.
criteria for the triangles of the mesh. `Criteria::Face_handle` has to
be the same as `CDT::Face_handle`.
-### Using This Class ###
+\cgalHeading{Using This Class}
The constructor of the class `Delaunay_mesher_2` takes a reference to a `CDT`
as an argument. A call to the refinement method `refine_mesh()` will
@@ -29,7 +29,7 @@ modified, any further call to its member methods may crash. Consider
constructing a new `Delaunay_mesher_2` object if the triangulation has been
modified.
-### Meshing Domain ###
+\cgalHeading{Meshing Domain}
The domain to be mesh is defined by the constrained edges and a set of seed
points. The constrained edges divides the plane into several connected
diff --git a/Mesh_2/doc/Mesh_2/CGAL/Triangulation_conformer_2.h b/Mesh_2/doc/Mesh_2/CGAL/Triangulation_conformer_2.h
index 85c8cf8e4e6..7eaca9cb9aa 100644
--- a/Mesh_2/doc/Mesh_2/CGAL/Triangulation_conformer_2.h
+++ b/Mesh_2/doc/Mesh_2/CGAL/Triangulation_conformer_2.h
@@ -55,7 +55,7 @@ functions `make_conforming_Gabriel_2()` and
and its geometric traits class must be
a model of the concept `ConformingDelaunayTriangulationTraits_2`.
-### Using This Class ###
+\cgalHeading{Using This Class}
The constructor of the class `Triangulation_conformer_2` takes a reference to a `CDT`
as an argument. A call to the method `make_conforming_Delaunay()` or
diff --git a/Mesh_3/doc/Mesh_3/CGAL/Mesh_criteria_3.h b/Mesh_3/doc/Mesh_3/CGAL/Mesh_criteria_3.h
index 0011cea89a5..c8d8d15d095 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/Mesh_criteria_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/Mesh_criteria_3.h
@@ -21,7 +21,7 @@ and `C3T3::Triangulation` its nested triangulation type.
\cgalModels `MeshCriteria_3`
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
diff --git a/Mesh_3/doc/Mesh_3/CGAL/exude_mesh_3.h b/Mesh_3/doc/Mesh_3/CGAL/exude_mesh_3.h
index df271679976..64319aeed75 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/exude_mesh_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/exude_mesh_3.h
@@ -54,7 +54,7 @@ which is:
the smallest dihedral angle of the set of cells incident to some vertex in the mesh.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Exude without sliver_bound, using at most 10s CPU time
diff --git a/Mesh_3/doc/Mesh_3/CGAL/lloyd_optimize_mesh_3.h b/Mesh_3/doc/Mesh_3/CGAL/lloyd_optimize_mesh_3.h
index 296465b66ed..d1c7a829e13 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/lloyd_optimize_mesh_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/lloyd_optimize_mesh_3.h
@@ -72,7 +72,7 @@ which is:
is achieved.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
diff --git a/Mesh_3/doc/Mesh_3/CGAL/odt_optimize_mesh_3.h b/Mesh_3/doc/Mesh_3/CGAL/odt_optimize_mesh_3.h
index 1f27d156044..ac4fc1d84cb 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/odt_optimize_mesh_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/odt_optimize_mesh_3.h
@@ -73,7 +73,7 @@ which is:
is achieved.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// 100 iterations of Odt-smoothing
diff --git a/Mesh_3/doc/Mesh_3/CGAL/perturb_mesh_3.h b/Mesh_3/doc/Mesh_3/CGAL/perturb_mesh_3.h
index ca0867071b5..7acb593d4ac 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/perturb_mesh_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/perturb_mesh_3.h
@@ -60,7 +60,7 @@ which is:
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Perturb until every dihedral angle of the mesh is >= 10 degrees
diff --git a/Mesh_3/doc/Mesh_3/CGAL/refine_mesh_3.h b/Mesh_3/doc/Mesh_3/CGAL/refine_mesh_3.h
index 42dc569bceb..201f7aca589 100644
--- a/Mesh_3/doc/Mesh_3/CGAL/refine_mesh_3.h
+++ b/Mesh_3/doc/Mesh_3/CGAL/refine_mesh_3.h
@@ -162,13 +162,13 @@ The function `parameters::exude()` allows the user to trigger a call to `exude_m
It also allows the user to pass parameters
to the optimization function `exude_mesh_3()` through these mesh generation functions.
-### Parameters ###
+\cgalHeading{Parameters}
The parameters are named parameters. They are the same (i.e. they have the same
name and the same default values) as the parameters of `exude_mesh_3()`
function. See its manual page for further details.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation with an exudation step
@@ -221,13 +221,13 @@ The function `parameters::lloyd()` allows the user to trigger a call of
parameters to the optimization function
`lloyd_optimize_mesh_3()` through these mesh generation functions.
-### Parameters ###
+\cgalHeading{Parameters}
The parameters are named parameters. They are the same (i.e. they have the same
name and the same default values) as the parameters of the `lloyd_optimize_mesh_3()`
function. See its manual page for further details.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation with lloyd optimization step
@@ -260,7 +260,7 @@ double parameters::freeze_bound = 0.01);
The function `parameters::no_exude()` allows the user to tell the mesh generation functions
`make_mesh_3()` and `refine_mesh_3()` that no exudation must be done.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation without exudation
@@ -303,7 +303,7 @@ parameters::internal::Features_options no_features();
The function `parameters::no_lloyd()` allows the user to tell the mesh generation functions
`make_mesh_3()` and `refine_mesh_3()` that no lloyd optimization must be done.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation without lloyd optimization
@@ -326,7 +326,7 @@ parameters::internal::Lloyd_options no_lloyd();
The function `parameters::no_odt()` allows the user to tell the mesh generation functions
`make_mesh_3()` and `refine_mesh_3()` that no odt optimization must be done.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation without odt optimization
@@ -349,7 +349,7 @@ parameters::internal::Odt_options no_odt();
The function `parameters::no_perturb()` allows the user to tell mesh generation global functions
`make_mesh_3()` and `refine_mesh_3()` that no perturbation must be done.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation without perturbation
@@ -375,13 +375,13 @@ The function `parameters::odt()` allows the user to trigger a call to
allows the user to pass parameters to the optimization function
`odt_optimize_mesh_3()` through these mesh generation functions.
-### Parameters ###
+\cgalHeading{Parameters}
The parameters are named parameters. They are the same (i.e. they have the same
name and the same default values) as the parameters of `odt_optimize_mesh_3()`
function. See its manual page for further details.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation with odt optimization step
@@ -416,13 +416,13 @@ The function `parameters::perturb()` allows the user to trigger a call to
allows the user to pass parameters
to the optimization function `perturb_mesh_3()` through these mesh generation functions.
-### Parameters ###
+\cgalHeading{Parameters}
The parameters are named parameters. They are the same (i.e. they have the same
name and the same default values) as the parameters of `perturb_mesh_3()`
function. See its manual page for further details.
-### Example ###
+\cgalHeading{Example}
\code{.cpp}
// Mesh generation with a perturbation step
diff --git a/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h b/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h
index b44ea682f57..b88d1c90efe 100644
--- a/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h
+++ b/Miscellany/doc/Miscellany/CGAL/Handle_hash_function.h
@@ -14,7 +14,7 @@ return a unique address.
\sa `CGAL::Unique_hash_map`
-### Implementation ###
+\cgalHeading{Implementation}
Plain type cast of `&*key` to `std::size_t` and devided
by the size of the `std::iterator_traits::value_type` to
diff --git a/Miscellany/doc/Miscellany/CGAL/Memory_sizer.h b/Miscellany/doc/Miscellany/CGAL/Memory_sizer.h
index 08b431bb438..44da820fdf6 100644
--- a/Miscellany/doc/Miscellany/CGAL/Memory_sizer.h
+++ b/Miscellany/doc/Miscellany/CGAL/Memory_sizer.h
@@ -9,7 +9,7 @@ Both the virtual memory size and the resident size are available (the resident
size does not account for swapped out memory nor for the memory which is not
yet paged-in).
-### Implementation ###
+\cgalHeading{Implementation}
Accessing this information requires the use of non-portable code.
Currently, there is support for Linux platforms, the Microsoft and Intel
diff --git a/Miscellany/doc/Miscellany/CGAL/Modifier_base.h b/Miscellany/doc/Miscellany/CGAL/Modifier_base.h
index ef0bed7a649..42d67a6b96b 100644
--- a/Miscellany/doc/Miscellany/CGAL/Modifier_base.h
+++ b/Miscellany/doc/Miscellany/CGAL/Modifier_base.h
@@ -11,7 +11,7 @@ function `operator()`, which accepts a single reference parameter
`R&` on which the modifier is allowed to work. `R` is the
type of the internal representation that is to be modified.
-### Example ###
+\cgalHeading{Example}
The following fragment defines a class A with an internal
representation i of type int. It provides a member
diff --git a/Miscellany/doc/Miscellany/CGAL/Profile_counter.h b/Miscellany/doc/Miscellany/CGAL/Profile_counter.h
index 1fb4b11abaf..6f11666dd3a 100644
--- a/Miscellany/doc/Miscellany/CGAL/Profile_counter.h
+++ b/Miscellany/doc/Miscellany/CGAL/Profile_counter.h
@@ -13,7 +13,7 @@ string passed to the constructor. The macro ::CGAL_PROFILER can be
used to conveniently place these counters anywhere. They are disabled by
default and activated by the global macro ::CGAL_PROFILE.
-### Operations ###
+\cgalHeading{Operations}
If `::CGAL_PROFILE` is not defined, then `::CGAL_PROFILER` is defined
to an empty statement. Otherwise, it is defined to
diff --git a/Miscellany/doc/Miscellany/CGAL/Real_timer.h b/Miscellany/doc/Miscellany/CGAL/Real_timer.h
index 47fe678728e..ef9ad622c37 100644
--- a/Miscellany/doc/Miscellany/CGAL/Real_timer.h
+++ b/Miscellany/doc/Miscellany/CGAL/Real_timer.h
@@ -15,7 +15,7 @@ counts the number of calls of the `Real_timer::start()` member function since th
last reset. If the reset occures while the timer is running it counts as the
first interval.
-### Implementation ###
+\cgalHeading{Implementation}
The timer class is based on the C function `gettimeofday()` on
POSIX systems and the C function `_ftime()` on MS Visual C++.
diff --git a/Miscellany/doc/Miscellany/CGAL/Timer.h b/Miscellany/doc/Miscellany/CGAL/Timer.h
index 148f3c83362..e5ef2b23ea4 100644
--- a/Miscellany/doc/Miscellany/CGAL/Timer.h
+++ b/Miscellany/doc/Miscellany/CGAL/Timer.h
@@ -15,7 +15,7 @@ counts the number of calls of the `Timer::start()` member function since the
last reset. If the reset occures while the timer is running it counts as the
first interval.
-### Implementation ###
+\cgalHeading{Implementation}
The timer class is based on the C function `std::clock()` on
PC systems and the C function `getrusage()` on standard
diff --git a/Miscellany/doc/Miscellany/CGAL/Union_find.h b/Miscellany/doc/Miscellany/CGAL/Union_find.h
index bdadfeb4b85..c30a641d20f 100644
--- a/Miscellany/doc/Miscellany/CGAL/Union_find.h
+++ b/Miscellany/doc/Miscellany/CGAL/Union_find.h
@@ -9,7 +9,7 @@ partition of values of type `T` into disjoint sets. The template
parameter `A` has to be a model of the allocator concept as defined
in the C++ standard. It has a default argument `CGAL_ALLOCATOR(T)`.
-### Implementation ###
+\cgalHeading{Implementation}
`Union_find` is implemented with union by rank and path
compression. The running time for \f$ m\f$ set operations on \f$ n\f$ elements
diff --git a/Miscellany/doc/Miscellany/CGAL/Unique_hash_map.h b/Miscellany/doc/Miscellany/CGAL/Unique_hash_map.h
index aff2aff9b69..f0be8d67995 100644
--- a/Miscellany/doc/Miscellany/CGAL/Unique_hash_map.h
+++ b/Miscellany/doc/Miscellany/CGAL/Unique_hash_map.h
@@ -21,7 +21,7 @@ of type `Data` specified in the definition of `map`.
\sa `UniqueHashFunction`
\sa `CGAL::Handle_hash_function`
-### Implementation ###
+\cgalHeading{Implementation}
`Unique_hash_map` is implemented via a chained hashing scheme. Access
operations `map``[i]` take expected time \f$ O(1)\f$. The `table_size`
diff --git a/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h b/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h
index 5897486d352..86620193e9d 100644
--- a/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h
+++ b/Nef_2/doc/Nef_2/CGAL/Extended_cartesian.h
@@ -10,7 +10,7 @@ representation based on a field number type `FT`.
\cgalModels `ExtendedKernelTraits_2`
-### Requirements ###
+\cgalHeading{Requirements}
To make a field number type `FT_model` work with this class, you
must provide a specialization of the traits class
diff --git a/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h b/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h
index 73675d4b60d..0e719c275f3 100644
--- a/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h
+++ b/Nef_2/doc/Nef_2/CGAL/Extended_homogeneous.h
@@ -10,7 +10,7 @@ representation based on a Euclidean ring number type `RT`.
\cgalModels `ExtendedKernelTraits_2`
-### Requirements ###
+\cgalHeading{Requirements}
To make an Euclidean ring number type
`RT_model` work with this class the number type must support
diff --git a/Nef_2/doc/Nef_2/CGAL/Nef_polyhedron_2.h b/Nef_2/doc/Nef_2/CGAL/Nef_polyhedron_2.h
index 0978e0ea4e4..7b27ad4319d 100644
--- a/Nef_2/doc/Nef_2/CGAL/Nef_polyhedron_2.h
+++ b/Nef_2/doc/Nef_2/CGAL/Nef_polyhedron_2.h
@@ -16,7 +16,7 @@ The template parameter `T` is specified via an extended kernel
concept. `T` must be a model of the concept
`ExtendedKernelTraits_2`.
-### Exploration - Point location - Ray shooting ###
+\cgalHeading{Exploration - Point location - Ray shooting}
As Nef polyhedra are the result of forming complements
and intersections starting from a set `H` of halfspaces that are
@@ -25,7 +25,7 @@ an attributed plane map \f$ M = (V,E,F)\f$. For topological queries
within `M` the following types and operations allow exploration
access to this structure.
-### Implementation ###
+\cgalHeading{Implementation}
Nef polyhedra are implemented on top of a halfedge data structure and
use linear space in the number of vertices, edges and facets.
@@ -56,7 +56,7 @@ the minimum weight triangulation is conjectured to be NP hard). Thus
we have no runtime guarantee but a strong experimental motivation for
its approximation.
-### Example ###
+\cgalHeading{Example}
Nef polyhedra are parameterized by a so-called extended geometric
kernel. There are three kernels, one based on a homogeneous
@@ -693,7 +693,7 @@ topologically closed by the frame edges. No standard point can be
placed outside the frame.
-### Creation ###
+\cgalHeading{Creation}
`Explorer` is copy constructable and assignable. An object can be
obtained via the `Nef_polyhedron_2::explorer()` method of
diff --git a/Nef_3/doc/Nef_3/CGAL/IO/Qt_widget_Nef_3.h b/Nef_3/doc/Nef_3/CGAL/IO/Qt_widget_Nef_3.h
index 3d59b367816..ead11560bcb 100644
--- a/Nef_3/doc/Nef_3/CGAL/IO/Qt_widget_Nef_3.h
+++ b/Nef_3/doc/Nef_3/CGAL/IO/Qt_widget_Nef_3.h
@@ -14,13 +14,13 @@ In addition to the functions inherited from the Qt class `OGLWidget` via,
constructor. For the usage of `Qt_widget_Nef_3` see the example
below.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter expects an instantiation of `Nef_polyhedron_3`.
\sa `CGAL::Nef_polyhedron_3`
-### Example ###
+\cgalHeading{Example}
This example reads a 3D Nef polyhedron from standard input and displays it
in a Qt widget.
diff --git a/Nef_3/doc/Nef_3/CGAL/Nef_polyhedron_3.h b/Nef_3/doc/Nef_3/CGAL/Nef_polyhedron_3.h
index 0027892e4bb..b59f262bbe8 100644
--- a/Nef_3/doc/Nef_3/CGAL/Nef_polyhedron_3.h
+++ b/Nef_3/doc/Nef_3/CGAL/Nef_polyhedron_3.h
@@ -24,7 +24,7 @@ namespace CGAL {
for every item, and an incidence relation on them. Each edge and each facet
is represented by two halfedges or two halffacets, respectively.
- ### Template Parameters ###
+\cgalHeading{Template Parameters}
The first parameter requires one of the following exact kernels:
`Homogeneous`, `Simple_homogeneous`, `Extended_homogeneous`
@@ -82,7 +82,7 @@ public:
`out_sedge` returns the first outgoing shalfedge, and `incident_sface`
returns the incident sface.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `Halfedge` explicitly. The
class `Nef_polyhedron_3` manages the needed halfedges internally.
@@ -272,7 +272,7 @@ public:
iterator range (`halffacet_cycles_begin()`/`halffacet_cycles_end()`)
provides an entry element for each halffacet cycle of a halffacet.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `Halffacet` explicitly. The
class `Nef_polyhedron_3` manages the needed halffacets internally.
@@ -459,7 +459,7 @@ public:
`SFace_cycle_const_iterator` and represent either a shalfedge, a shalfloop,
or a svertex.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SFace` explicitly. The
class `Nef_polyhedron_3` manages the needed sfaces internally.
@@ -577,7 +577,7 @@ public:
A const circulators is provided for each of the three circular orders.
The circulators are bidirectional and assignable to `SHalfedge_const_handle`.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SHalfedge` explicitly. The
class `Nef_polyhedron_3` manages the needed shalfedges internally.
@@ -744,7 +744,7 @@ public:
isolated on a facet. That facet is returned by the member function
`facet`.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SHalfloop` explicitly. The
class `Nef_polyhedron_3` manages the needed shalfloops internally.
@@ -828,7 +828,7 @@ public:
structure can be accessed creating a sphere map of the vertex.
This is done by the member function `Nef_polyhedron_3::get_sphere_map()`.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `Vertex` explicitly. The
class `Nef_polyhedron_3` manages the needed vertices internally.
@@ -882,7 +882,7 @@ public:
iterator range (`shells_begin()`/`shells_end()`). A
`Shell_entry_iterator` is assignable to `SFace_handle`.
- ### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `Volume` explicitly. The
class `Nef_polyhedron_3` manages the needed volumes internally.
diff --git a/Nef_S2/doc/Nef_S2/CGAL/IO/Qt_widget_Nef_S2.h b/Nef_S2/doc/Nef_S2/CGAL/IO/Qt_widget_Nef_S2.h
index 4b16132a903..ae880aee5ce 100644
--- a/Nef_S2/doc/Nef_S2/CGAL/IO/Qt_widget_Nef_S2.h
+++ b/Nef_S2/doc/Nef_S2/CGAL/IO/Qt_widget_Nef_S2.h
@@ -15,13 +15,13 @@ In addition to the functions inherited from the Qt class `QGLWidget`,
constructor. For the usage of `Qt_widget_Nef_S2` see the example
below.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter expects an instantiation of `Nef_polyhedron_S2`.
\sa `CGAL::Nef_polyhedron_S2`
-### Example ###
+\cgalHeading{Example}
This example creates some random `Sphere_segments` and distributes them on
two `Nef_polyhedron_2`. The two Nef polyhedra are combined by a symmetric
diff --git a/Nef_S2/doc/Nef_S2/CGAL/Nef_polyhedron_S2.h b/Nef_S2/doc/Nef_S2/CGAL/Nef_polyhedron_S2.h
index 2c47d78bebf..35d2bc9f30d 100644
--- a/Nef_S2/doc/Nef_S2/CGAL/Nef_polyhedron_S2.h
+++ b/Nef_S2/doc/Nef_S2/CGAL/Nef_polyhedron_S2.h
@@ -13,7 +13,7 @@ operations `intersection`, `union`, `difference`, `complement` and
under the topological operations `boundary`, `closure`, and
`interior`.
-### Parameters ###
+\cgalHeading{Parameters}
\code
template< class Nef_polyhedronTraits_S2,
@@ -34,7 +34,7 @@ Neither `Nef_polyhedronItems_S2` nor `Nef_polyhedronMarks` is
specifed, yet. Do not use other than the default types for these two
template parameters.
-### Exploration - Point location - Ray shooting ###
+\cgalHeading{Exploration - Point location - Ray shooting}
As Nef
polyhedra are the result of forming complements and intersections
@@ -44,13 +44,13 @@ plane map \f$ M = (V,E,F)\f$. For topological queries within `M` the
following types and operations allow exploration access to this
structure.
-### Input and Output ###
+\cgalHeading{Input and Output}
A Nef polyhedron `N` can be visualized in an open GL window. The
output operator is defined in the file
`CGAL/IO/Nef_polyhedron_2_Window-stream.h`.
-### Implementation ###
+\cgalHeading{Implementation}
Nef polyhedra are implemented on top of a halfedge data structure and
use linear space in the number of vertices, edges and facets.
@@ -179,7 +179,7 @@ surface of a unit sphere. Such points correspond to the nontrivial
directions in space and similarly to the equivalence classes of all
nontrivial vectors under normalization.
-### Operations ###
+\cgalHeading{Operations}
Access to the coordinates is provided by the following operations.
Note that the vector \f$ (x,y,z)\f$ is not normalized.
@@ -479,7 +479,7 @@ Additionally, `Nef_polyhedron_S2` provides the macro
`SFace_cycle_const_iterator` and represent either a shalfedge, a shalfloop,
or a svertex.
-### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SFace` explicitly. The
class `Nef_polyhedron_S2` manages the needed sfaces internally.
@@ -580,7 +580,7 @@ used as a shortcut.
A const circulator is provided for each of the two circular orders.
The circulators are bidirectional and assignable to `SHalfedge_const_handle`.
-### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SHalfedge` explicitly. The
class `Nef_polyhedron_S2` manages the needed shalfedges internally.
@@ -709,7 +709,7 @@ depicts the relationship between a shalfloop and sfaces on a sphere map.
\anchor figureNefS2SHalfloopIncidences
\image html shalfloopB.gif "Incidences of an SHalfloop "
-### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SHalfloop` explicitly. The
class `Nef_polyhedron_S2` manages the needed shalfloops internally.
@@ -784,7 +784,7 @@ The member function
`out_sedge()` returns the first outgoing shalfedge, and `incident_sface()`
returns the incident sface.
-### Creation ###
+\cgalHeading{Creation}
There is no need for a user to create a `SVertex` explicitly. The
class `Nef_polyhedron_S2` manages the needed svertices internally.
diff --git a/Number_types/doc/Number_types/CGAL/FPU.h b/Number_types/doc/Number_types/CGAL/FPU.h
index a1fd06e7621..d22ec890fe4 100644
--- a/Number_types/doc/Number_types/CGAL/FPU.h
+++ b/Number_types/doc/Number_types/CGAL/FPU.h
@@ -48,7 +48,7 @@ rounding mode restoration when the `Protect_FPU_rounding` object is
destroyed. Therefore, for this configuration, some explicit code has to be
added.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter `Protected` is a Boolean parameter, which defaults
to `true`. It follows the same parameter of the `Interval_nt` class.
diff --git a/Number_types/doc/Number_types/CGAL/Gmpfi.h b/Number_types/doc/Number_types/CGAL/Gmpfi.h
index fbe7f4c08db..4a413499d1f 100644
--- a/Number_types/doc/Number_types/CGAL/Gmpfi.h
+++ b/Number_types/doc/Number_types/CGAL/Gmpfi.h
@@ -21,7 +21,7 @@ and long double.
\cgalModels `FieldWithKthRoot`
\cgalModels `RealEmbeddable`
-### Implementation ###
+\cgalHeading{Implementation}
All interval operations are performed by the Mpfi library. The class
`Gmpfi` is not reference counted, but its members are.
diff --git a/Number_types/doc/Number_types/CGAL/Gmpfr.h b/Number_types/doc/Number_types/CGAL/Gmpfr.h
index c8f0a75a611..0fcf4a998b2 100644
--- a/Number_types/doc/Number_types/CGAL/Gmpfr.h
+++ b/Number_types/doc/Number_types/CGAL/Gmpfr.h
@@ -26,7 +26,7 @@ This type is `ImplicitInteroperable` with `Gmpz`, long,
\cgalModels `FieldWithKthRoot`
\cgalModels `RealEmbeddable`
-### Comparisons ###
+\cgalHeading{Comparisons}
Comparison operators `==`, `!=`, `>`, `<`,
`>=` and `<=` are also overloaded. A `Gmpfr` can
@@ -36,7 +36,7 @@ be compared with other `Gmpfr`, as well as with a `Gmpz`,
converted nor rounded before comparison. In the case where one of
the compared numbers is `NaN`, the `erange` flag is set.
-### Implementation ###
+\cgalHeading{Implementation}
Since the Mpfr library can be compiled to be thread-safe, this interface
is designed to keep the thread-safety.
diff --git a/Number_types/doc/Number_types/CGAL/Gmpq.h b/Number_types/doc/Number_types/CGAL/Gmpq.h
index 7dff0070afd..618af3aed3a 100644
--- a/Number_types/doc/Number_types/CGAL/Gmpq.h
+++ b/Number_types/doc/Number_types/CGAL/Gmpq.h
@@ -11,7 +11,7 @@ number based on the Gmp library.
\cgalModels `RealEmbeddable`
\cgalModels `Fraction`
-### Implementation ###
+\cgalHeading{Implementation}
`Gmpq`s are reference counted.
diff --git a/Number_types/doc/Number_types/CGAL/Gmpz.h b/Number_types/doc/Number_types/CGAL/Gmpz.h
index 4e49a4504c3..abfa2d0456d 100644
--- a/Number_types/doc/Number_types/CGAL/Gmpz.h
+++ b/Number_types/doc/Number_types/CGAL/Gmpz.h
@@ -10,7 +10,7 @@ based on the Gmp Library.
\cgalModels `EuclideanRing`
\cgalModels `RealEmbeddable`
-### Implementation ###
+\cgalHeading{Implementation}
`Gmpz`s are reference counted.
diff --git a/Number_types/doc/Number_types/CGAL/Gmpzf.h b/Number_types/doc/Number_types/CGAL/Gmpzf.h
index 59885609d63..f363b0b2e63 100644
--- a/Number_types/doc/Number_types/CGAL/Gmpzf.h
+++ b/Number_types/doc/Number_types/CGAL/Gmpzf.h
@@ -14,7 +14,7 @@ functionality very similar to `MP_Float` but is generally faster.
\cgalModels `EuclideanRing`
\cgalModels `RealEmbeddable`
-### Implementation ###
+\cgalHeading{Implementation}
The significand \f$ m\f$ of a `Gmpzf` is a `Gmpz` and is reference
counted. The exponent \f$ e\f$ of a `Gmpzf` is a `long`.
diff --git a/Number_types/doc/Number_types/CGAL/Interval_nt.h b/Number_types/doc/Number_types/CGAL/Interval_nt.h
index 73cfbd3151e..bd0d271cdff 100644
--- a/Number_types/doc/Number_types/CGAL/Interval_nt.h
+++ b/Number_types/doc/Number_types/CGAL/Interval_nt.h
@@ -35,7 +35,7 @@ real, \f$ X\f$ and \f$ Y\f$ are intervals, \f$ \mathcal{OP}\f$ is an arithmetic
For example, if the final result of a sequence of arithmetic operations is
an interval that does not contain zero, then you can safely determine its sign.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter `Protected` is a Boolean parameter, which defaults
to `true`. It provides a way to select faster computations by avoiding
@@ -49,7 +49,7 @@ doing any computations with the interval class. He can do so using the
\cgalModels `FieldWithSqrt`
\cgalModels `RealEmbeddable`
-### Example ###
+\cgalHeading{Example}
Protecting an area of code that uses operations on the class
`Interval_nt_advanced` can be done in the following way:
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 85360cfdf19..ec6748accd3 100644
--- a/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h
+++ b/Number_types/doc/Number_types/CGAL/Lazy_exact_nt.h
@@ -22,7 +22,7 @@ using `Filtered_predicate` and `Filtered_kernel`.
\cgalModels `RealEmbeddable`
\cgalModels `Fraction`, if `NT` is a `Fraction`
-### Example ###
+\cgalHeading{Example}
\code
#include
diff --git a/Number_types/doc/Number_types/CGAL/MP_Float.h b/Number_types/doc/Number_types/CGAL/MP_Float.h
index 366bcc3b40a..5d9617a4d51 100644
--- a/Number_types/doc/Number_types/CGAL/MP_Float.h
+++ b/Number_types/doc/Number_types/CGAL/MP_Float.h
@@ -21,7 +21,7 @@ plan to also have a multiprecision exponent to fix this issue.
\cgalModels `EuclideanRing`
\cgalModels `RealEmbeddable`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation of `MP_Float` is simple but provides a quadratic
complexity for multiplications. This can be a problem for large operands.
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 1ab68f2f91f..b99c3a9f583 100644
--- a/Number_types/doc/Number_types/CGAL/Number_type_checker.h
+++ b/Number_types/doc/Number_types/CGAL/Number_type_checker.h
@@ -22,7 +22,7 @@ the two arguments.
\cgalModels `IntegralDomainWithoutDivision` (same as `NT1`)
\cgalModels `RealEmbeddable`
-### Operations ###
+\cgalHeading{Operations}
Some operations have a particular behavior documented here.
diff --git a/Number_types/doc/Number_types/CGAL/Quotient.h b/Number_types/doc/Number_types/CGAL/Quotient.h
index 71038f3a1e7..cbba1f8f334 100644
--- a/Number_types/doc/Number_types/CGAL/Quotient.h
+++ b/Number_types/doc/Number_types/CGAL/Quotient.h
@@ -20,7 +20,7 @@ and a model of concept `RealEmbeddable`.
\cgalModels `RealEmbeddable`
\cgalModels `Fraction`
-### Operations ###
+\cgalHeading{Operations}
There are two access functions, namely to the
numerator and the denominator of a quotient.
diff --git a/Number_types/doc/Number_types/CGAL/simplest_rational_in_interval.h b/Number_types/doc/Number_types/CGAL/simplest_rational_in_interval.h
index 077a4b8355c..e83c799d132 100644
--- a/Number_types/doc/Number_types/CGAL/simplest_rational_in_interval.h
+++ b/Number_types/doc/Number_types/CGAL/simplest_rational_in_interval.h
@@ -9,7 +9,7 @@ interval `[d1,d2]`.
The function `simplest_rational_in_interval` computes the simplest rational number in an
interval of two `double` values.
-### Implementation ###
+\cgalHeading{Implementation}
See Knuth, "Seminumerical algorithms", page 654, answer to exercise
4.53-39.
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 1421c55def7..9b716bd7578 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
@@ -14,7 +14,7 @@ in terms of a supplied template parameter.
\sa `CGAL::Is_y_monotone_2`
\sa `CGAL::Partition_traits_2`
-### Example ###
+\cgalHeading{Example}
See the example presented with the function `optimal_convex_partition_2()`
for an illustration of the use of this traits class.
diff --git a/Partition_2/doc/Partition_2/CGAL/is_y_monotone_2.h b/Partition_2/doc/Partition_2/CGAL/is_y_monotone_2.h
index 5430633d71a..20045eca4cd 100644
--- a/Partition_2/doc/Partition_2/CGAL/is_y_monotone_2.h
+++ b/Partition_2/doc/Partition_2/CGAL/is_y_monotone_2.h
@@ -8,7 +8,7 @@ determines if the sequence of points in the range
polygon or not. If so, the function returns `true`, otherwise it
returns `false`.
-###Requires ###
+\cgalHeading{Requires }
- `Traits` is a model of the concept `IsYMonotoneTraits_2`.
- `std::iterator_traits::%value_type` should be `Traits::Point_2`.
@@ -20,11 +20,11 @@ type `std::iterator_traits::%value_type` is defined.
\sa `CGAL::y_monotone_partition_2`
\sa `CGAL::y_monotone_partition_is_valid_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function requires \f$ O(n)\f$ time for a polygon with \f$ n\f$ vertices.
-### Example ###
+\cgalHeading{Example}
The following program computes a \f$ y\f$-monotone partitioning
of a polygon using the default
diff --git a/Partition_2/doc/Partition_2/CGAL/partition_2.h b/Partition_2/doc/Partition_2/CGAL/partition_2.h
index 219e0b4969d..ddf40349c4d 100644
--- a/Partition_2/doc/Partition_2/CGAL/partition_2.h
+++ b/Partition_2/doc/Partition_2/CGAL/partition_2.h
@@ -15,7 +15,7 @@ no more than four times the minimal number.
\pre The points in the range [`first`, `beyond`) define a simple
counterclockwise-oriented polygon.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concept
@@ -41,7 +41,7 @@ with the representation type determined by `std::iterator_traits
\sa `CGAL::Partition_is_valid_traits_2`
\sa `CGAL::y_monotone_partition_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the algorithm of Hertel and Mehlhorn
\cite hm-ftsp-83 and is based on the class
@@ -49,7 +49,7 @@ This function implements the algorithm of Hertel and Mehlhorn
the polygon, the function requires \f$ O(n)\f$ time and
space for a polygon with \f$ n\f$ vertices.
-### Example ###
+\cgalHeading{Example}
The following program computes an approximately optimal
convex partitioning of a polygon using the default
@@ -85,7 +85,7 @@ the resulting sequence of polygons is returned.
\pre The points in the range [`first`, `beyond`) define a simple, counterclockwise-oriented polygon.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concepts `PartitionTraits_2`
@@ -114,7 +114,7 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::y_monotone_partition_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the approximation algorithm of
Greene \cite g-dpcp-83 and requires \f$ O(n \log n)\f$ time and \f$ O(n)\f$ space
@@ -122,7 +122,7 @@ to produce a convex partitioning given a \f$ y\f$-monotone partitioning of a
polygon with \f$ n\f$ vertices. The function `y_monotone_partition_2()`
is used to produce the monotone partition.
-### Example ###
+\cgalHeading{Example}
The following program computes an approximately optimal
convex partitioning of a polygon using the default
@@ -158,7 +158,7 @@ the resulting sequence of polygons is returned.
\pre The points in the range [`first`, `beyond`) define a simple, counterclockwise-oriented polygon.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concept `OptimalConvexPartitionTraits_2`.
@@ -182,13 +182,13 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::Partition_is_valid_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the dynamic programming algorithm of Greene
\cite g-dpcp-83, which requires \f$ O(n^4)\f$ time and \f$ O(n^3)\f$ space to
produce a partitioning of a polygon with \f$ n\f$ vertices.
-### Example ###
+\cgalHeading{Example}
The following program computes an optimal
convex partitioning of a polygon using the default
@@ -229,7 +229,7 @@ the resulting sequence of polygons is returned.
\pre The points in the range [`first`, `beyond`) define a simple, counterclockwise-oriented polygon.
-### Requirements ###
+\cgalHeading{Requirements}
- `Traits` is a model of the concept
@@ -253,13 +253,13 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::y_monotone_partition_is_valid_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function implements the algorithm presented by de Berg et al.
\cite bkos-cgaa-97 which requires \f$ O(n \log n)\f$ time
and \f$ O(n)\f$ space for a polygon with \f$ n\f$ vertices.
-### Example ###
+\cgalHeading{Example}
The following program computes a \f$ y\f$-monotone partitioning
of a polygon using the default
diff --git a/Partition_2/doc/Partition_2/CGAL/partition_is_valid_2.h b/Partition_2/doc/Partition_2/CGAL/partition_is_valid_2.h
index 58845155717..9afa2a93aab 100644
--- a/Partition_2/doc/Partition_2/CGAL/partition_is_valid_2.h
+++ b/Partition_2/doc/Partition_2/CGAL/partition_is_valid_2.h
@@ -18,7 +18,7 @@ returns `false`.
-###Requires ###
+\cgalHeading{Requires }
- `Traits` is a model of the concept
`ConvexPartitionIsValidTraits_2`.
@@ -37,7 +37,7 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::is_convex_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function calls `partition_is_valid_2()` using the function object
`Is_convex_2` to determine the convexity of each partition polygon.
@@ -45,7 +45,7 @@ Thus the time required by this function is \f$ O(n \log n + e \log e)\f$ where
\f$ n\f$ is the total number of vertices in the partition polygons and \f$ e\f$ the
total number of edges.
-### Example ###
+\cgalHeading{Example}
See the example presented with the function `approx_convex_partition_2()`
for an illustration of the use of this function.
@@ -78,7 +78,7 @@ tested by `Traits::Is_valid()`.
\pre Points in the range [`point_first`, `point_beyond`) define a simple, counterclockwise-oriented polygon.
-###Requires###
+\cgalHeading{Requires}
- `Traits` is a model of the concept
`PartitionIsValidTraits_2` and the
@@ -101,14 +101,14 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::y_monotone_partition_2`
\sa `CGAL::is_convex_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function requires \f$ O(n \log n + e \log e + \Sigma_{i=1}^p m_i)\f$ where \f$ n\f$
is the total number of vertices of the \f$ p\f$ partition polygons, \f$ e\f$ is the
total number of edges of the partition polygons and \f$ m_i\f$ is the time required
by `Traits::Is_valid()` to test if partition polygon \f$ p_i\f$ is valid.
-### Example ###
+\cgalHeading{Example}
See the example presented with the function `optimal_convex_partition_2()`
for an illustration of the use of this function.
@@ -140,7 +140,7 @@ returns false.
-###Requires###
+\cgalHeading{Requires}
- `Traits` is a model of the concept
`YMonotonePartitionIsValidTraits_2`.
@@ -158,7 +158,7 @@ with the representation type determined by `std::iterator_traits:
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::Partition_is_valid_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
This function uses the function `partition_is_valid_2()` together with
the function object `Is_y_monotone_2` to determine if each polygon
@@ -166,7 +166,7 @@ is \f$ y\f$-monotone or not. Thus the time required is \f$ O(n \log n + e \log e
where \f$ n\f$ is the total number of vertices of the partition polygons and
\f$ e\f$ is the total number of edges.
-### Example ###
+\cgalHeading{Example}
See the example presented with the function `y_monotone_partition_2()`
for an illustration of the use of this function.
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 69afe8b7fa0..5fbf1aca5f3 100644
--- a/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h
+++ b/Partition_2/doc/Partition_2/CGAL/polygon_function_objects.h
@@ -11,7 +11,7 @@ a convex polygon or not.
\sa `CGAL::convex_partition_is_valid_2`
\sa `CGAL::Partition_is_valid_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
This test requires \f$ O(n)\f$ time for a polygon with \f$ n\f$ vertices.
@@ -60,7 +60,7 @@ Function object class that indicates all sequences of points are valid.
\sa `CGAL::partition_is_valid_2`
\sa `CGAL::Partition_is_valid_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
This test requires \f$ O(1)\f$ time.
@@ -108,7 +108,7 @@ a \f$ y\f$-monotone polygon or not.
\sa `CGAL::convex_partition_is_valid_2`
\sa `CGAL::Partition_is_valid_traits_2`
-### Implementation ###
+\cgalHeading{Implementation}
This test requires \f$ O(n)\f$ time for a polygon with \f$ n\f$ vertices.
diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_3.h
index e802284a751..214415fb271 100644
--- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_3.h
+++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_Delaunay_triangulation_3.h
@@ -7,7 +7,7 @@ namespace CGAL {
The class `Periodic_3_Delaunay_triangulation_3` represents a
Delaunay triangulation in three-dimensional periodic space.
-### Template Parameters ###
+\cgalHeading{Template Parameters}
The first template argument `PT` must be a model of the
`Periodic_3DelaunayTriangulationTraits_3` concept.
diff --git a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_hierarchy_3.h b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_hierarchy_3.h
index de483267d76..dfbffede3b3 100644
--- a/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_hierarchy_3.h
+++ b/Periodic_3_triangulation_3/doc/Periodic_3_triangulation_3/CGAL/Periodic_3_triangulation_hierarchy_3.h
@@ -8,7 +8,7 @@ The class `Periodic_3_triangulation_hierarchy_3` implements a
triangulation augmented with a data structure which allows fast point
location queries.
-### Template Parameters ###
+\cgalHeading{Template Parameters}
It is templated by a parameter which must be instantiated by one of the \cgal periodic triangulation classes. In the current
implementation, only `Periodic_3_Delaunay_triangulation_3` is
@@ -33,7 +33,7 @@ hierarchy into a file will lose the hierarchic structure and reading
it from the file will result in an ordinary triangulation whose
efficiency will be the same as `PTr`.
-### Implementation ###
+\cgalHeading{Implementation}
The data structure is a hierarchy of triangulations. The triangulation
at the lowest level is the original triangulation where operations and
diff --git a/Point_set_2/doc/Point_set_2/CGAL/nearest_neighbor_delaunay_2.h b/Point_set_2/doc/Point_set_2/CGAL/nearest_neighbor_delaunay_2.h
index 6b352fe557f..a453d178c28 100644
--- a/Point_set_2/doc/Point_set_2/CGAL/nearest_neighbor_delaunay_2.h
+++ b/Point_set_2/doc/Point_set_2/CGAL/nearest_neighbor_delaunay_2.h
@@ -6,7 +6,7 @@ namespace CGAL {
computes a handle to a vertex `w` of `delau` that is closest to `v`.
If `v` is the only vertex in `delau`, `NULL` is returned.
-### Requirements ###
+\cgalHeading{Requirements}
`Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
the Delaunay triangulation data type:
@@ -41,7 +41,7 @@ neighbors search on Delaunay triangulations. There are two versions of
this function, one taking a point of the Delaunay triangulation and the
other taking a vertex handle.
-### Requirements ###
+\cgalHeading{Requirements}
`Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
the Delaunay triangulation data type:
@@ -77,7 +77,7 @@ neighbors search on Delaunay triangulations. There are two versions of
this function, one taking a point of the Delaunay triangulation and the
other taking a vertex handle.
-### Requirements ###
+\cgalHeading{Requirements}
`Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
the Delaunay triangulation data type:
diff --git a/Point_set_2/doc/Point_set_2/CGAL/range_search_delaunay_2.h b/Point_set_2/doc/Point_set_2/CGAL/range_search_delaunay_2.h
index e638fe1cf45..f2fa6587135 100644
--- a/Point_set_2/doc/Point_set_2/CGAL/range_search_delaunay_2.h
+++ b/Point_set_2/doc/Point_set_2/CGAL/range_search_delaunay_2.h
@@ -26,7 +26,7 @@ returns an output iterator pointing to the position beyond the end
of the sequence.
`delau`$ is the \cgal Delaunay triangulation on which we perform the range search operation.
-### Requirements ###
+\cgalHeading{Requirements}
- `Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
@@ -61,7 +61,7 @@ returns an output iterator pointing to the position beyond the end
of the sequence.
`delau` is the \cgal Delaunay triangulation on which we perform the range search operation.
-### Requirements ###
+\cgalHeading{Requirements}
`Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
the Delaunay triangulation data type:
@@ -96,7 +96,7 @@ which points to the first object in the sequence. The function
returns an output iterator pointing to the position beyond the end
of the sequence. `delau` is the \cgal Delaunay triangulation on which we perform the range search operation.
-### Requirements ###
+\cgalHeading{Requirements}
`Dt` is a \cgal Delaunay triangulation and contains the following subset of types from the concept `PointSetTraits` and from
the Delaunay triangulation data type:
@@ -131,7 +131,7 @@ of the sequence.
` pred` controls the search operation. If `return_if_succeded` is `true`, we will end the search
after the first success of the predicate, otherwise we will continue till the search is finished.
-### Requirements ###
+\cgalHeading{Requirements}
For the requirements of `Dt` see the description for the non-predicate version.
@@ -166,7 +166,7 @@ of the sequence.
`pred` controls the search operation. If `return_if_succeded` is `true`, we will end the search
after the first success of the predicate, otherwise we will continue till the search is finished.
-### Requirements ###
+\cgalHeading{Requirements}
For the requirements of `Dt` see the description for the non-predicate version.
@@ -191,7 +191,7 @@ of the sequence. `delau` is the \cgal Delaunay triangulation on which we perform
`pred` controls the search operation. If `return_if_succeded` is `true`, we will end the search
after the first success of the predicate, otherwise we will continue till the search is finished.
-### Requirements ###
+\cgalHeading{Requirements}
For the requirements of `Dt` see the description for the non-predicate version.
diff --git a/Polyhedron/doc/Polyhedron/CGAL/IO/Polyhedron_iostream.h b/Polyhedron/doc/Polyhedron/CGAL/IO/Polyhedron_iostream.h
index 0d96f011c1c..66ade41a424 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/IO/Polyhedron_iostream.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/IO/Polyhedron_iostream.h
@@ -21,7 +21,7 @@ format automatically and can read both.
\sa operator<<(std::ostream&, CGAL::Polyhedron_3&)
-### Implementation ###
+\cgalHeading{Implementation}
This operator is implemented using the modifier mechanism for
polyhedral surfaces and the `CGAL::Polyhedron_incremental_builder_3`
diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
index e91046d8d79..441896b1906 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
@@ -60,7 +60,7 @@ namespace CGAL {
modifications. There is no automatic caching done for auxiliary
information.
-### Parameters ###
+\cgalHeading{Parameters}
The full template declaration of `Polyhedron_3` states four
template parameters:
@@ -100,7 +100,7 @@ class Polyhedron_3;
\sa `CGAL::Polyhedron_incremental_builder_3`
\sa `CGAL::Modifier_base`.
-### Example ###
+\cgalHeading{Example}
This example program instantiates a polyhedron using the default
traits class and creates a tetrahedron.
@@ -155,7 +155,7 @@ public:
\sa `CGAL::Polyhedron_3::Facet`
\sa `CGAL::Polyhedron_3`
- ### Implementation ###
+\cgalHeading{Implementation}
The member functions `Halfedge::prev()` and `Halfedge::prev_on_vertex()` work in
constant time if `Supports_halfedge_prev` \f$ \equiv\f$
@@ -1252,7 +1252,7 @@ n */
\image html euler_vertex.gif
- ### Note ###
+\cgalHeading{Note}
A special application of the split is
`split_vertex(h,h->%next()->%opposite())` which is equivalent to an
diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_incremental_builder_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_incremental_builder_3.h
index 2f0f659638a..eb9bafef35d 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_incremental_builder_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_incremental_builder_3.h
@@ -50,7 +50,7 @@ vertices when creating new facets.
\sa `HalfedgeDS`
\sa `CGAL::Modifier_base`
-### Example ###
+\cgalHeading{Example}
A modifier class creates a new triangle in the halfedge data structure
using the incremental builder.
diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_items_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_items_3.h
index d0489c5f562..4065834d746 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_items_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_items_3.h
@@ -18,7 +18,7 @@ halfedge.
\sa `CGAL::HalfedgeDS_min_items`
\sa `CGAL::HalfedgeDS_items_2`
-### Example ###
+\cgalHeading{Example}
The following example program defines a new face class based on the
`CGAL::HalfedgeDS_face_base` and adds a new color member variable.
diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h
index cc2b987306e..8f3a23f9b23 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_3.h
@@ -14,14 +14,14 @@ it suitable for kernels with local state.
\sa `CGAL::Polyhedron_traits_with_normals_3`
-### Implementation ###
+\cgalHeading{Implementation}
Since the `PolyhedronTraits_3` concept is a subset of the
concept Kernel, this class just forwards the relevant types and access
member functions from its template argument. However, it is useful
for testing sufficiency of requirements.
-### Example ###
+\cgalHeading{Example}
Instantiation of a polyhedral surface with the
%Cartesian kernel based on double coordinates.
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 5d248aca7d4..3e96440ec88 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_traits_with_normals_3.h
@@ -16,7 +16,7 @@ with local state.
\sa `CGAL::Polyhedron_traits_3`
-### Example ###
+\cgalHeading{Example}
We use this traits class to instantiate a polyhedral surface with a
normal vector and no plane equation for each facet. We compute the
diff --git a/Polynomial/doc/Polynomial/CGAL/Polynomial.h b/Polynomial/doc/Polynomial/CGAL/Polynomial.h
index d41bf1f17ff..f68e4645e30 100644
--- a/Polynomial/doc/Polynomial/CGAL/Polynomial.h
+++ b/Polynomial/doc/Polynomial/CGAL/Polynomial.h
@@ -39,7 +39,7 @@ model of `Modularizable`, where the homomorphic map on the polynomials
is simply defined as the canonical extension of the homomorphic map which is
defined on the coefficient type.
-### Implementation ###
+\cgalHeading{Implementation}
Inexact and limited-precision types can be used as coefficients,
but at the user's risk. The algorithms implemented were written with
diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d.h
index 77ff98ab962..964ebffbf7f 100644
--- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d.h
+++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Polytope_distance_d.h
@@ -40,7 +40,7 @@ two-, three-, and \f$ d\f$-dimensional \cgal kernel, respectively.
\sa `CGAL::Polytope_distance_d_traits_d`
\sa `PolytopeDistanceDTraits`
-### Implementation ###
+\cgalHeading{Implementation}
The problem of finding the distance between two convex polytopes given as
the convex hulls of two finite point sets can be formulated as an
@@ -296,7 +296,7 @@ FT squared_distance( ) const;
returns an iterator referring to the first coordinate of the
realizing point of \f$ P\f$.
-### Note ###
+\cgalHeading{Note}
The coordinates have a rational
representation, i.e.\ the first \f$ d\f$ elements of the iterator
@@ -318,7 +318,7 @@ realizing_point_p_coordinates_end() const;
returns an iterator referring to the first coordinate of the
realizing point of \f$ Q\f$.
-### Note ###
+\cgalHeading{Note}
The coordinates have a rational
representation, i.e.\ the first \f$ d\f$ elements of the iterator
diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_3.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_3.h
index 446bbf77416..2f6ad368950 100644
--- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_3.h
+++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/Width_3.h
@@ -37,7 +37,7 @@ three-dimensional \cgal kernel.
\sa `CGAL::Width_default_traits_3`
\sa `WidthTraits_3`
-### Implementation ###
+\cgalHeading{Implementation}
Since the width of the point set \f$ \mathcal{S}\f$ and the width of the convex
hull of \f$ \mathcal{S}\f$ (\f$ \mathit{conv(\mathcal{S})}\f$) is the same, the
@@ -72,7 +72,7 @@ from 0 (no output) to 1 (output available). But then it is required
that the `operator<<()` has to been overloaded for `Point_3`,
`Plane_3`, `Vector_3` and `RT`.
-### Example ###
+\cgalHeading{Example}
\cgalExample{Polytope_distance_d/width_simplex.cpp}
diff --git a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/all_furthest_neighbors_2.h b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/all_furthest_neighbors_2.h
index 0f0b8cd87f3..454447bbe8e 100644
--- a/Polytope_distance_d/doc/Polytope_distance_d/CGAL/all_furthest_neighbors_2.h
+++ b/Polytope_distance_d/doc/Polytope_distance_d/CGAL/all_furthest_neighbors_2.h
@@ -23,7 +23,7 @@ can be omitted if `RandomAccessIterator` refers to a point type
from a `Kernel`. In this case, the kernel is used as default
traits class.
-###Requires###
+\cgalHeading{Requires}
- If `t` is specified explicitly, `Traits` is a model
@@ -37,13 +37,13 @@ for `AllFurthestNeighborsTraits_2`.
\sa `AllFurthestNeighborsTraits_2`
\sa `CGAL::monotone_matrix_search`
-### Implementation ###
+\cgalHeading{Implementation}
The implementation uses monotone matrix search \cite akmsw-gamsa-87.
Its runtime complexity is linear in the number of
vertices of \f$ P\f$.
-### Example ###
+\cgalHeading{Example}
The following code generates a random convex polygon
`p` with ten vertices, computes all furthest neighbors and
diff --git a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/centroid.h b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/centroid.h
index 20a735528f5..97ffe2ba8c1 100644
--- a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/centroid.h
+++ b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/centroid.h
@@ -38,7 +38,7 @@ depending on the dimension of the input objects, where `K` is
CGAL::Kernel_traits::value_type>::Kernel
\endcode
-#### Two Dimensional Input ####
+\cgalHeading{Two Dimensional Input}
The value type must be either `K::Point_2`, `K::Segment_2`,
`K::Triangle_2`, `K::Rectangle_2` or `K::Circle_2`. To fit a set of
@@ -46,7 +46,7 @@ disks the user must call the function with value type `K::Circle_2`
and with dimension tag of 2. The tag must range between
`Dimension_tag<0>` and `Dimension_tag<2>`.
-#### Three Dimensional Input ####
+\cgalHeading{Three Dimensional Input}
The value type must be either `K::Point_3`, `K::Segment_3`,
`K::Triangle_3`, `K::Cuboid_3`, `K::Sphere_3` or `K::Tetrahedron_3`. To fit a set
@@ -67,7 +67,7 @@ objects.
\returns The return type is either `K::Point_2` or `K::Point_3`,
depending on the dimension of the input objects.
-#### Two Dimensional Input ####
+\cgalHeading{Two Dimensional Input}
The value type must be either `K::Point_2`, `K::Segment_2`,
`K::Triangle_2`, `K::Rectangle_2` or `K::Circle_2`. To fit a set of
@@ -75,7 +75,7 @@ disks the user must call the function with value type `K::Circle_2`
and with dimension tag of 2. The tag must range between
`Dimension_tag<0>` and `Dimension_tag<2>`.
-#### Three Dimensional Input ####
+\cgalHeading{Three Dimensional Input}
The value type must be either `K::Point_3`, `K::Segment_3`,
`K::Triangle_3`, `K::Cuboid_3`, `K::Sphere_3` or `K::Tetrahedron_3`. To fit a set
diff --git a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_2.h b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_2.h
index 6eeaa0b5786..057f3921417 100644
--- a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_2.h
+++ b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_2.h
@@ -13,7 +13,7 @@ The tag `tag` identifies the dimension to be considered from the objects. For po
The class `K` is the kernel in which the value type of the `InputIterator` is defined. It can be omitted and deduced automatically from the value type.
-### Requirements ###
+\cgalHeading{Requirements}
- `InputIterator` must have a value type equivalent to `K::Point_2` or
diff --git a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_3.h b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_3.h
index 0deaed0bdfb..6d4fc8f1d3a 100644
--- a/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_3.h
+++ b/Principal_component_analysis/doc/Principal_component_analysis/CGAL/linear_least_squares_fitting_3.h
@@ -64,7 +64,7 @@ The class `K` is the kernel in which the
value type of `InputIterator` is defined. It can be omitted and deduced
automatically from the value type.
-### Requirements ###
+\cgalHeading{Requirements}
- `InputIterator` must have a value type equivalent to `K::Point_3`,
@@ -100,7 +100,7 @@ of `InputIterator` is defined. It can be omitted and deduced
automatically from the value type. The tag `tag` identifies the
dimension to be considered from the objects (see above).
-### Requirements ###
+\cgalHeading{Requirements}
- `InputIterator` has a value type equivalent to `K::Point_3`,
diff --git a/Ridges_3/doc/Ridges_3/CGAL/Umbilics.h b/Ridges_3/doc/Ridges_3/CGAL/Umbilics.h
index 411f840a68f..8fb5fdc91cf 100644
--- a/Ridges_3/doc/Ridges_3/CGAL/Umbilics.h
+++ b/Ridges_3/doc/Ridges_3/CGAL/Umbilics.h
@@ -108,7 +108,7 @@ namespace CGAL {
The class `Umbilic` stores the description of an umbilic.
-### Operations ###
+\cgalHeading{Operations}
The insert operator `<<` is overloaded for `Umbilic`, it
gives the location (3d coordinates of the vertex) and the type.
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Compact_container.h b/STL_Extension/doc/STL_Extension/CGAL/Compact_container.h
index 6a2d5964316..9eec1d304db 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Compact_container.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Compact_container.h
@@ -99,7 +99,7 @@ using the `iterator_to` and `s_iterator_to` functions.
-### Parameters ###
+\cgalHeading{Parameters}
The parameter `T` is required to have a copy constructor and an
assignment operator. It also needs to provide access to an internal
@@ -737,7 +737,7 @@ types `T` to make them usable with the default `Compact_container_traits`.
-### Parameters ###
+\cgalHeading{Parameters}
`T` is any type providing the following member functions:
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Default.h b/STL_Extension/doc/STL_Extension/CGAL/Default.h
index 0fe19f38187..aa2446e78f2 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Default.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Default.h
@@ -34,7 +34,7 @@ way to extract the desired type for a template parameter which may be defaulted
using `Default`. It is enough to fetch the type as
`Default::Get::%type`, as in the example program below.
-### Example ###
+\cgalHeading{Example}
\cgalExample{STL_Extension/Default.cpp}
diff --git a/STL_Extension/doc/STL_Extension/CGAL/In_place_list.h b/STL_Extension/doc/STL_Extension/CGAL/In_place_list.h
index 79d598d133c..d663a36b10e 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/In_place_list.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/In_place_list.h
@@ -80,7 +80,7 @@ deletes all items. Note that these two possible versions of
`In_place_list` are not assignable to each other to avoid
confusions between the different storage responsibilities.
-### Parameters ###
+\cgalHeading{Parameters}
The full class name is `In_place_list`.
@@ -93,7 +93,7 @@ relational order require the operators `==` and `<`
for `T` respectively. These operators must not compare the pointers
in `T`.
-### Example ###
+\cgalHeading{Example}
\cgalExample{STL_Extension/in_place_list_prog.cpp}
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h b/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h
index 7cce72bdca4..5062d4f5da7 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Location_policy.h
@@ -47,7 +47,7 @@ For example, passing `Location_policy` as parameter to
-### Parameters ###
+\cgalHeading{Parameters}
`Tag` can only be either `Fast` or `Compact` currently.
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Multiset.h b/STL_Extension/doc/STL_Extension/CGAL/Multiset.h
index 57c0625a2ff..baf556ba5fc 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Multiset.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Multiset.h
@@ -69,13 +69,13 @@ less-than operator (`operator<`).
\tparam Allocator the allocator type. `CGAL_ALLOCATOR` is used by default.
-### Assertions ###
+\cgalHeading{Assertions}
The assertion and precondition flags for the `Multiset` class
use `MULTISET` in their names (i.e., `CGAL_MULTISET_NO_ASSERTIONS` and
`CGAL_MULTISET_NO_PRECONDITIONS`).
-### Implementation ###
+\cgalHeading{Implementation}
`Multiset` uses a proprietary implementation of a red-black tree
data-structure. The red-black tree invariants guarantee that the height of a
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Object.h b/STL_Extension/doc/STL_Extension/CGAL/Object.h
index 8e5e5a890f3..eab9a5c5347 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Object.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Object.h
@@ -21,7 +21,7 @@ encapsulation mechanism requires the use of `assign` or
This class is similar in spirit to `boost::any`.
-### Example ###
+\cgalHeading{Example}
In the following example, the object class is used as return value for the
intersection computation, as there are possibly different return values.
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Threetuple.h b/STL_Extension/doc/STL_Extension/CGAL/Threetuple.h
index 635194755e6..6ee154b37d7 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Threetuple.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Threetuple.h
@@ -16,7 +16,7 @@ accessing the elements of a container.
-### Requirements ###
+\cgalHeading{Requirements}
`T` must be `Assignable`.
diff --git a/STL_Extension/doc/STL_Extension/CGAL/Uncertain.h b/STL_Extension/doc/STL_Extension/CGAL/Uncertain.h
index 3e450732d55..21eb16ebdd0 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/Uncertain.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/Uncertain.h
@@ -35,7 +35,7 @@ It can also be used in other contexts as well, as it is a general tool.
This can be seen as support for non-deterministic programming.
Finally, note that this class has some common points with `boost::tribool`.
-### Parameters ###
+\cgalHeading{Parameters}
The parameter `T` can either be `bool` or one of the three-valued
(-1, 0, 1) enumeration types: `Sign`, `Comparison_result`,
diff --git a/STL_Extension/doc/STL_Extension/CGAL/algorithm.h b/STL_Extension/doc/STL_Extension/CGAL/algorithm.h
index f6243b04e19..345f2e3633b 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/algorithm.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/algorithm.h
@@ -41,7 +41,7 @@ maximal element of a range. It is modeled after the STL functions
one only iterates once over the sequence. This is more efficient
especially for large and/or complex sequences.
-### Example ###
+\cgalHeading{Example}
The following example program computes the minimal and
maximal element of the sequence ` (3,\,6,\,5)`. Hence the output is
diff --git a/STL_Extension/doc/STL_Extension/CGAL/array.h b/STL_Extension/doc/STL_Extension/CGAL/array.h
index 3e68370af2b..2147ebf378a 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/array.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/array.h
@@ -13,12 +13,12 @@ imports a class from another namespace. By order of priority: the one in namespa
`std::tr1` is used (provided by TR1), and finally, the fallback solution
is taken from Boost.
-### Parameters ###
+\cgalHeading{Parameters}
The parameter `T` is the value type. The second parameter is the
dimension of the array.
-### Extensions ###
+\cgalHeading{Extensions}
\cgal provides a `make_array` function for this purpose, up to a
certain number of arguments.
diff --git a/STL_Extension/doc/STL_Extension/CGAL/iterator.h b/STL_Extension/doc/STL_Extension/CGAL/iterator.h
index 82fd696daaf..88fcbd3eeee 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/iterator.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/iterator.h
@@ -58,7 +58,7 @@ from input iterators.
\cgalModels `InputIterator`
-### Requirements ###
+\cgalHeading{Requirements}
`Iterator` is a model for
`InputIterator`.
@@ -114,7 +114,7 @@ among those based on the type of the value type which is put in it.
Other types are also accepted, and the object is simply discarded in this case.
It also inherits from `O`, which makes it easy to treat like a tuple.
-### Parameters ###
+\cgalHeading{Parameters}
`V` must be a `CGAL::cpp11::tuple<...>` of the types of values to be accepted and dispatched.
`O` must be a `CGAL::cpp11::tuple<...>` of the types of corresponding output iterators.
@@ -196,7 +196,7 @@ The class `Dispatch_output_iterator` defines an
among those based on the type of the value type which is put in it.
It also inherits from `O`, which makes it easy to treat like a tuple.
-### Parameters ###
+\cgalHeading{Parameters}
`V` must be a `CGAL::cpp11::tuple<...>` of the types of values to be accepted and dispatched.
`O` must be a `CGAL::cpp11::tuple<...>` of the types of corresponding output iterators.
@@ -445,7 +445,7 @@ with opaque values will not work.
-### Implementation ###
+\cgalHeading{Implementation}
For random access iterators or circulators, it is done in constant
time by subtracting `i`. For other iterator categories, an \stl
diff --git a/STL_Extension/doc/STL_Extension/CGAL/tuple.h b/STL_Extension/doc/STL_Extension/CGAL/tuple.h
index eb29e8611d2..4d7f15eea1d 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/tuple.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/tuple.h
@@ -18,11 +18,11 @@ is taken from Boost.
-### Parameters ###
+\cgalHeading{Parameters}
The parameters `...` are the value types.
-### Free functions and helper classes ###
+\cgalHeading{Free functions and helper classes}
Some free functions part of the standard interface of `tuple` are also
brought in namespace `CGAL::cpp11` with using declarations, these are `make_tuple`,
diff --git a/STL_Extension/doc/STL_Extension/CGAL/utility.h b/STL_Extension/doc/STL_Extension/CGAL/utility.h
index 60457e6015f..b20b3db1c11 100644
--- a/STL_Extension/doc/STL_Extension/CGAL/utility.h
+++ b/STL_Extension/doc/STL_Extension/CGAL/utility.h
@@ -18,7 +18,7 @@ container.
-### Requirements ###
+\cgalHeading{Requirements}
`T1`, `T2`, `T3` and `T4` must be
`Assignable`. Additional operations have additional requirements.
@@ -241,7 +241,7 @@ accessing the elements of a container.
-### Requirements ###
+\cgalHeading{Requirements}
`T1`, `T2` and `T3` must be `Assignable`.
Additional operations have additional requirements.
diff --git a/SearchStructures/doc/SearchStructures/CGAL/Range_tree_d.h b/SearchStructures/doc/SearchStructures/CGAL/Range_tree_d.h
index 2e32aac88ba..729a53ac316 100644
--- a/SearchStructures/doc/SearchStructures/CGAL/Range_tree_d.h
+++ b/SearchStructures/doc/SearchStructures/CGAL/Range_tree_d.h
@@ -7,7 +7,7 @@ namespace CGAL {
\brief A \f$ d\f$-dimensional range tree stores points and can be used to determine all
points that lie inside a given \f$ d\f$-dimensional interval.
-### Implementation ###
+\cgalHeading{Implementation}
The construction of a \f$ d\f$-dimensional range tree takes \f$ {O}(n\log n^{d-1})\f$
time. The points in
diff --git a/SearchStructures/doc/SearchStructures/CGAL/Range_tree_k.h b/SearchStructures/doc/SearchStructures/CGAL/Range_tree_k.h
index 476989894d3..0b0e9b1e776 100644
--- a/SearchStructures/doc/SearchStructures/CGAL/Range_tree_k.h
+++ b/SearchStructures/doc/SearchStructures/CGAL/Range_tree_k.h
@@ -21,7 +21,7 @@ RangeSegmentTreeTraits_d defines the requirements that range tree traits
classes must fulfill. This allows the advanced user to develop further
range tree traits classes.
-### Example ###
+\cgalHeading{Example}
The following example program uses the predefined `Range_tree_2` data structure together with the predefined traits
class `Range_tree_map_traits_2` which has two template
diff --git a/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_d.h b/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_d.h
index 024d51dbe13..d1c6b3bfe4e 100644
--- a/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_d.h
+++ b/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_d.h
@@ -6,7 +6,7 @@ namespace CGAL {
\brief A \f$ d\f$-dimensional segment tree stores \f$ d\f$-dimensional intervals and can be used to find all intervals that enclose, partially overlap, or contain a query interval, which may be a point.
-### Implementation ###
+\cgalHeading{Implementation}
A \f$ d\f$-dimensional segment tree is constructed in \f$ {O}(n\log n^d)\f$ time.
An inverse range query is performed in time \f$ {O}(k+{\log}^d n )\f$, where \f$ k\f$
diff --git a/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_k.h b/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_k.h
index 1fdcc052940..8755f0cda31 100644
--- a/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_k.h
+++ b/SearchStructures/doc/SearchStructures/CGAL/Segment_tree_k.h
@@ -28,7 +28,7 @@ RangeSegmentTreeTraits_d defines the requirements that segment tree traits
classes must fulfill. This allows the advanced user to develop further
segment tree traits classes.
-### Example ###
+\cgalHeading{Example}
This example illustrates the use of the predefined segment tree
on 3-dimensional interval data (with no value associated). After
diff --git a/SearchStructures/doc/SearchStructures/CGAL/Tree_base.h b/SearchStructures/doc/SearchStructures/CGAL/Tree_base.h
index b1bc6c88b18..ef274e48ea9 100644
--- a/SearchStructures/doc/SearchStructures/CGAL/Tree_base.h
+++ b/SearchStructures/doc/SearchStructures/CGAL/Tree_base.h
@@ -11,7 +11,7 @@ classes. Therefore, instantiate `Sublayer_type` of `Range_tree_d`
(`Segment_tree_d` respectively) with `Tree_anchor` and the container
classes for the data items (`Data` and `Window`).
-### Example ###
+\cgalHeading{Example}
The following figures show a number of rectangles and a 2-dimensional
segment tree built on them.
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 a8853f58247..220548021db 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
@@ -14,7 +14,7 @@ which must be a model of `SegmentDelaunayGraphDataStructure_2`.
The second template argument defaults to
`CGAL::Triangulation_data_structure_2< CGAL::Segment_Delaunay_graph_vertex_base_2, CGAL::Triangulation_face_base_2 >`.
-### Traversal of the Segment Delaunay Graph ###
+\cgalHeading{Traversal of the Segment Delaunay Graph}
A segment Delaunay graph can be seen as a container of faces and
vertices. Therefore the `Segment_Delaunay_graph_2` class provides several iterators
diff --git a/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_2.h b/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_2.h
index 100f3d7119c..d6c59b8990d 100644
--- a/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_2.h
+++ b/Snap_rounding_2/doc/Snap_rounding_2/CGAL/Snap_rounding_2.h
@@ -75,7 +75,7 @@ this is a basic requirement of SR.
-#### About the Number of kd-Trees ####
+\cgalHeading{About the Number of kd-Trees}
A basic query used in the algorithm is to report the hot pixels of
size \f$ w\f$ that a certain segment \f$ s\f$ intersects. An alternative way to
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h
index 8bcf8f4ac0e..5a08369fb1b 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Euclidean_distance.h
@@ -7,7 +7,7 @@ The class `Euclidean_distance` provides an implementation of the concept `Orthog
Euclidean distance (\f$ l_2\f$ metric).
To optimize distance computations squared distances are used.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of the concept
`SearchTraits`, for example `Search_traits_2 >`.
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 fe7936bcdaa..d4d6d2e48aa 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
@@ -9,7 +9,7 @@ metric) between a \f$ d\f$-dimensional sphere and a point, and the
Euclidean distance between a \f$ d\f$-dimensional sphere and a
\f$ d\f$-dimensional iso-rectangle defined as a \f$k\f$-\f$d\f$ tree rectangle.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept `SearchTraits`,
for example `Simple_cartesian_d`.
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 db40785bfc8..5a6a937be9f 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_iso_box.h
@@ -8,7 +8,7 @@ fuzzy iso box with fuzziness value \f$ \epsilon\f$ has as outer
approximation a box dilated, and as inner approximation a box eroded
by a `d`-dim square with side length \f$ \epsilon\f$.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept
`SearchTraits`, for example `CGAL::Search_traits_2 >`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h
index 9c4064bc610..eb07522cecd 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Fuzzy_sphere.h
@@ -8,7 +8,7 @@ A fuzzy sphere with radius \f$ r\f$ and fuzziness value \f$ \epsilon\f$ has
as outer approximation a sphere with radius \f$ r+\epsilon\f$ and
as inner approximation a sphere with radius \f$ r-\epsilon\f$.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept
`SearchTraits`, for example `CGAL::Cartesian_d`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Incremental_neighbor_search.h b/Spatial_searching/doc/Spatial_searching/CGAL/Incremental_neighbor_search.h
index dfd61c302dc..5c15553a9d2 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Incremental_neighbor_search.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Incremental_neighbor_search.h
@@ -6,7 +6,7 @@ namespace CGAL {
The class `Incremental_neighbor_search` implements incremental nearest and furthest neighbor searching
on a tree. The tree may have extended or unextended nodes.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of the concept `SearchTraits`,
for example `Search_traits_2 >`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/K_neighbor_search.h b/Spatial_searching/doc/Spatial_searching/CGAL/K_neighbor_search.h
index 799ec405fbb..1a6a96f9881 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/K_neighbor_search.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/K_neighbor_search.h
@@ -7,7 +7,7 @@ The class `K_neighbor_search` implements approximate `k`-nearest and `k`-furthes
using standard search on a tree using a general distance class. The tree may be built with
extended or unextended nodes.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument an implementation of the concept `SearchTraits`,
for example `Simple_cartesian`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree.h b/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree.h
index 0c68351a7e7..d5effa8a00a 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree.h
@@ -5,7 +5,7 @@ namespace CGAL {
The class `Kd_tree` defines a `k-d` tree.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of the concept
`SearchTraits`, for example `Search_traits_2 >`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree_node.h b/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree_node.h
index a2709cd189c..ae5ccc2eba7 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree_node.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Kd_tree_node.h
@@ -12,7 +12,7 @@ upper child, and a pointer to its separator. An extended internal
node is an internal node containing the lower and upper limit of an
extended node's rectangle along the node's cutting dimension.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept `SearchTraits`,
for example `Search_traits_2 >`, or `Cartesian_d`.
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 20720046906..ee83fbb53ea 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
@@ -10,7 +10,7 @@ between a `d`-dimensional iso-box and a `d`-dimensional point
and the Manhattan distance between a `d`-dimensional iso-box
and a `d`-dimensional iso-box defined as a `k-d` tree rectangle.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model for the concept
`SearchTraits`, for example `Search_traits_3 >`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_incremental_neighbor_search.h b/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_incremental_neighbor_search.h
index 7f851151d74..c47cc167118 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_incremental_neighbor_search.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_incremental_neighbor_search.h
@@ -5,7 +5,7 @@ namespace CGAL {
The class `Orthogonal_incremental_neighbor_search` implements incremental nearest and furthest neighbor searching on a tree.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of the concept `SearchTraits`,
for example `Search_traits_2 >`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_k_neighbor_search.h b/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_k_neighbor_search.h
index 71ac43b4527..33175b8341f 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_k_neighbor_search.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Orthogonal_k_neighbor_search.h
@@ -7,7 +7,7 @@ The class `Orthogonal_k_neighbor_search` implements approximate`k`-nearest and
`k`-furthest neighbor searching on a tree
using an orthogonal distance class.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument an implementation of the concept `SearchTraits`,
for example `Search_traits_2 >`.
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 f51b03cc9ed..31b419ba39f 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_2.h
@@ -6,7 +6,7 @@ namespace CGAL {
The class `Search_traits_2` can be used as a template parameter of the kd tree
and the search classes.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept `Kernel`,
for example `Simple_cartesian` or `Simple_cartesian`.
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 584b82d342a..2f7e99238a1 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_3.h
@@ -6,7 +6,7 @@ namespace CGAL {
The class `Search_traits_3` can be used as a template parameter of the kd tree
and the search classes. `Kernel` must be a \cgal kernel.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept `Kernel`,
for example `Simple_cartesian` or `Simple_cartesian`.
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 7258bd64e51..acd207b9853 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_adapter.h
@@ -8,7 +8,7 @@ key as point type.
When using `Search_traits_adapter`
in a nearest neighbor search algorithm, this class must be used as distance.
-### Parameters ###
+\cgalHeading{Parameters}
`Key` is a type that is associated to a point of type `Base_distance::Point_d`.
@@ -80,7 +80,7 @@ and the search classes. When using this traits class in a nearest neighbor searc
`Distance_adapter`
must be used as distance.
-### Parameters ###
+\cgalHeading{Parameters}
`Key` is a type that is associated to a point of type `Base_distance::Point_d`.
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 31efabfc1ae..2263a1cf0a2 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Search_traits_d.h
@@ -8,7 +8,7 @@ and the search classes. `Kernel` must be a \cgal kernel.
`Kernel` must be a d-dimensional \cgal kernel.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept `Kernel_d`,
for example `Cartesian_d`.
diff --git a/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h b/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h
index 4307df3bb15..30969ed189f 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Splitters.h
@@ -14,7 +14,7 @@ which the points have the largest spread. It then splits the points
in the most even manner possible, subject to maintaining the bound on
the ratio of the resulting rectangles.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`,
@@ -72,7 +72,7 @@ The splitting dimension is the dimension of the longest side of the rectangle.
The splitting value is defined by the median of the coordinates of the data points
along this dimension.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`, for example
@@ -119,7 +119,7 @@ The splitting dimension is the dimension of the longest side of the rectangle.
The splitting value is defined by the median of the coordinates of the data points
along this dimension.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`, for example
@@ -165,7 +165,7 @@ Implements the midpoint of max spread splitting rule.
A rectangle is cut through \f$ (\mathrm{Mind}+\mathrm{Maxd})/2\f$ orthogonal
to the dimension with the maximum point spread \f$ [\mathrm{Mind},\matrm{Maxd}]\f$.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`, for example
@@ -210,7 +210,7 @@ namespace CGAL {
Implements the midpoint of rectangle splitting rule.
A rectangles is cut through its midpoint orthogonal to the longest side.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`, for example
@@ -273,7 +273,7 @@ to one side of this cut, then we slide the cut until it hits the first
point. This may violate the aspect ratio bound, but will never
generate empty cells.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of
the concept `SearchTraits`,
@@ -346,7 +346,7 @@ the midpoint of rectangle rule. If the data points lie only on one
side it avoids this by sliding the separator, computed by
the midpoint of rectangle rule, to the nearest data point.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the first template argument a model of the concept
`SearchTraits`, for example `CGAL::Cartesian_d`.
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 8c502d4e65c..e009eb061de 100644
--- a/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h
+++ b/Spatial_searching/doc/Spatial_searching/CGAL/Weighted_Minkowski_distance.h
@@ -10,7 +10,7 @@ defined by \f$ l_{\infty}(w)(r,q)=max \{w_i |r_i-q_i| \mid 1 \leq i \leq d\}\f$.
For the purpose of the distance computations it is more efficient to compute
the transformed distance \f$ {\sigma_{i=1}^{i=d} \, w_i(r_i-q_i)^p}\f$ instead of the actual distance.
-### Parameters ###
+\cgalHeading{Parameters}
Expects for the template argument a model of the concept
`SearchTraits`, for example `Search_traits_2`.
diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/hilbert_sort.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/hilbert_sort.h
index 0e6ea182bf5..6e9eb1ce205 100644
--- a/Spatial_sorting/doc/Spatial_sorting/CGAL/hilbert_sort.h
+++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/hilbert_sort.h
@@ -13,7 +13,7 @@ The default traits class `Default_traits` is the kernel in which the type
The default policy is `Hilbert_sort_median_policy()` and the
other option is `Hilbert_sort_middle_policy()`.
-### Requirements ###
+\cgalHeading{Requirements}
- `std::iterator_traits::%value_type` is convertible to
@@ -22,7 +22,7 @@ other option is `Hilbert_sort_middle_policy()`.
`SpatialSortingTraits_3`, or `SpatialSortingTraits_d`.
-### Implementation ###
+\cgalHeading{Implementation}
Creates an instance of
`Hilbert_sort_2`,
diff --git a/Spatial_sorting/doc/Spatial_sorting/CGAL/spatial_sort.h b/Spatial_sorting/doc/Spatial_sorting/CGAL/spatial_sort.h
index 9bbcaf2556f..2afbf04f4bc 100644
--- a/Spatial_sorting/doc/Spatial_sorting/CGAL/spatial_sort.h
+++ b/Spatial_sorting/doc/Spatial_sorting/CGAL/spatial_sort.h
@@ -18,7 +18,7 @@ other option is `Hilbert_sort_middle_policy()`.
The default values for the thresholds and the ratio depends on the dimension.
-### Requirements ###
+\cgalHeading{Requirements}
- `std::iterator_traits::%value_type` is convertible to
@@ -27,7 +27,7 @@ The default values for the thresholds and the ratio depends on the dimension.
`SpatialSortingTraits_3`, or `SpatialSortingTraits_d`.
-### Implementation ###
+\cgalHeading{Implementation}
Creates an instance of `Multiscale_sort`
where `Hilbert_sort` is an Hilbert sorting object,
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 3dc2025aac1..89ada2ffef7 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
@@ -33,7 +33,7 @@ namespace CGAL {
The class `Straight_skeleton_builder_2` encapsulates the construction of the 2D straight skeleton in the interior of a polygon with holes. Its first template parameter must be a model of the `StraightSkeletonBuilderTraits_2` concept, its second template parameter, must be a model of the `StraightSkeleton_2` concept, and its third template paramter must be a model of the `StraightSkeletonBuilder_2_Visitor` concept. If this last parameter is ommitted, the class `CGAL::Dummy_straight_skeleton_builder_2_visitor` is used.
-### Algorithm ###
+\cgalHeading{Algorithm}
The implemented algorithm is closely based on \cite cgal:fo-ss-98 with the addition of vertex events as described in \cite cgal:ee-rrccpp-98.
diff --git a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/create_straight_skeleton_2.h b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/create_straight_skeleton_2.h
index dae54a46508..287bfa11164 100644
--- a/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/create_straight_skeleton_2.h
+++ b/Straight_skeleton_2/doc/Straight_skeleton_2/CGAL/create_straight_skeleton_2.h
@@ -11,7 +11,7 @@ The outer boundary `F` is constructed by enlarging the bounding box of `P` a dis
`d` is a margin sufficiently large to allow an outer offset at dinstance `max_offset` to be obtained from this exterior skeleton, as computed by the function `compute_outer_frame_margin()`
-### Requirements ###
+\cgalHeading{Requirements}
- `K` is any \cgal kernel.
@@ -43,7 +43,7 @@ The skeleton in the limited exterior of `P` is the skeleton in the interi
The outer boundary `F` is constructed by enlarging the bounding box of `P` a distance `d`.
`d` is a margin sufficiently large to allow an outer offset at dinstance `max_offset` to be obtained from this exterior skeleton, as computed by the function `compute_outer_frame_margin()`
-### Requirements ###
+\cgalHeading{Requirements}
- `K` is any \cgal kernel.
diff --git a/Stream_support/doc/IOstream/CGAL/IO/Ostream_iterator.h b/Stream_support/doc/IOstream/CGAL/IO/Ostream_iterator.h
index 2c764e8666a..537406e87e6 100644
--- a/Stream_support/doc/IOstream/CGAL/IO/Ostream_iterator.h
+++ b/Stream_support/doc/IOstream/CGAL/IO/Ostream_iterator.h
@@ -10,7 +10,7 @@ output stream class `Stream` and value type `T`.
\cgalModels `OutputIterator`
-### Implementation ###
+\cgalHeading{Implementation}
The `operator*()` in class `Ostream_iterator` uses a proxy class.
diff --git a/Stream_support/doc/IOstream/CGAL/IO/Verbose_ostream.h b/Stream_support/doc/IOstream/CGAL/IO/Verbose_ostream.h
index cd69db1a925..b3bcd0066f6 100644
--- a/Stream_support/doc/IOstream/CGAL/IO/Verbose_ostream.h
+++ b/Stream_support/doc/IOstream/CGAL/IO/Verbose_ostream.h
@@ -11,7 +11,7 @@ output is active or not. If the state is active, the stream output
operator `<<` uses the internal stream to output its argument. If
the state is inactive, nothing happens.
-### Example ###
+\cgalHeading{Example}
The class `Verbose_ostream` can be conveniently used to implement for
example the `is_valid()` member function for triangulations or
diff --git a/Subdivision_method_3/doc/Subdivision_method_3/CGAL/Subdivision_method_3.h b/Subdivision_method_3/doc/Subdivision_method_3/CGAL/Subdivision_method_3.h
index 4421b07dace..054144a1998 100644
--- a/Subdivision_method_3/doc/Subdivision_method_3/CGAL/Subdivision_method_3.h
+++ b/Subdivision_method_3/doc/Subdivision_method_3/CGAL/Subdivision_method_3.h
@@ -27,7 +27,7 @@ and the \f$ \sqrt{3}\f$ triangulation.
These refinements are respectively used in
Catmull-Clark, Loop, Doo-Sabin and \f$ \sqrt{3}\f$ subdivision.
-### Refinement Host ###
+\cgalHeading{Refinement Host}
A refinement host is a template function of
a polyhedron class and a geometry mask class. It refines
@@ -38,7 +38,7 @@ the geometry masks.
\image html RefSchemes.gif
-### Example ###
+\cgalHeading{Example}
This example program subdivides a polyhedral mesh with
Catmull-Clark subdivision.
diff --git a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/edge_collapse.h b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/edge_collapse.h
index 7e25b44c535..f32649c7c8e 100644
--- a/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/edge_collapse.h
+++ b/Surface_mesh_simplification/doc/Surface_mesh_simplification/CGAL/Surface_mesh_simplification/edge_collapse.h
@@ -9,7 +9,7 @@ the number of edges effectively removed.
The function `Surface_mesh_simplification::edge_collapse` simplifies in-place a triangulated surface mesh by iteratively collapsing edges.
-### Non-Named Parameters ###
+\cgalHeading{Non-Named Parameters}
`surface` is the surface to simplify.
It must be a model of the `EdgeCollapsableMesh` concept.
@@ -17,7 +17,7 @@ It must be a model of the `EdgeCollapsableMesh` concept.
`should_stop` is the stop-condition policy.
It must be a model of the `StopPredicate` concept.
-### Named Parameters ###
+\cgalHeading{Named Parameters}
`named_parameters` holds the list of all the additional parameters
used by the `edge_collapse` function (including default parameters).
@@ -41,7 +41,7 @@ In the following subsections, each named parameter is documented as a helper fun
function is the actual parameter to `edge_collapse()`, while the name of the helper
function designates which formal argument it is.
-### vertex_index_map(VertexIndexMap vpm) ###
+\cgalHeading{vertex_index_map(VertexIndexMap vpm)}
Maps each vertex in the surface into an unsigned integer number
in the range `[0,num_vertices(surface))`.
@@ -62,7 +62,7 @@ An external property map can be easily obtained by calling
`get(vertex_external_index,surface)`. This constructs on the fly, and returns,
a property map which non-intrusively associates a proper id with each vertex.
-### edge_index_map(EdgeIndexMap eim) ###
+\cgalHeading{edge_index_map(EdgeIndexMap eim)}
Maps each directed edge in the surface into an unsigned integer number
in the range `[0,num_edges(surface))`.
@@ -83,7 +83,7 @@ An external property map can be easily obtained by calling
`get(edge_external_index,surface)`. This constructs on the fly, and returns,
a property map which non-intrusively associates a proper id with each edge.
-### edge_is_border_map(EdgeIsBorderMap ebm) ###
+\cgalHeading{edge_is_border_map(EdgeIsBorderMap ebm)}
Maps each directed edge in the surface into a Boolean value
which indicates if the edge belongs to the boundary of the surface
@@ -96,7 +96,7 @@ and whose `value_type` is `bool`.
%Default: the property map obtained by calling `get(edge_is_border,surface)`.
-### get_cost(GetCost gc) ###
+\cgalHeading{get_cost(GetCost gc)}
The policy which returns the collapse cost for an edge.
@@ -105,7 +105,7 @@ The type of `gc` must be a model of the `GetCost` concept.
%Default:
`CGAL::Surface_mesh_simplification::LindstromTurk_cost`.
-### get_placement(GetPlacement gp) ###
+\cgalHeading{get_placement(GetPlacement gp)}
The policy which returns the placement (position of the replacemet vertex)
for an edge.
@@ -115,7 +115,7 @@ The type of `gp` must be a model of the `GetPlacement` concept.
%Default:
`CGAL::Surface_mesh_simplification::LindstromTurk_placement`
-### visitor(EdgeCollapseSimplificationVisitor v) ###
+\cgalHeading{visitor(EdgeCollapseSimplificationVisitor v)}
The visitor that is called by the `edge_collapse` function
in certain points to allow the user to track the simplification process.
@@ -135,7 +135,7 @@ simply qualify the first
\cgalFootnote{The second and subsequent named parameters shall not be qualified as they are member functions}
named parameter with `CGAL::`, as shown in the examples in the user manual.
-### Semantics ###
+\cgalHeading{Semantics}
The simplification process continues until the `should_stop` policy returns `true`
diff --git a/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h b/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
index 80cdfcff6dc..b602d47cc13 100644
--- a/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
+++ b/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
@@ -16,14 +16,14 @@ additional template parameters.
\cgalModels `TriangulationDataStructure_2`
-### Modifiers ###
+\cgalHeading{Modifiers}
In addition to the modifiers required by the
`TriangulationDataStructure_2` concept, the `Triangulation_data_structure_2` class
supports also the modifiers below. Note also that the modifiers below
guarantee the combinatorial validity of the resulting data structure.
-### Illustrations ###
+\cgalHeading{Illustrations}
\anchor figtdssplitjoin
\image html join_split.gif "The join and split operations."
diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_Delaunay_triangulation_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_Delaunay_triangulation_2.h
index e495135c47b..29dff6c0905 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_Delaunay_triangulation_2.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_Delaunay_triangulation_2.h
@@ -73,7 +73,7 @@ triangulation data structure parameter is the class
`Triangulation_data_structure_2< CGAL::Triangulation_vertex_base_2, Constrained_triangulation_face_base_2 >`.
The default intersection tag is `No_intersection_tag`.
-### Types ###
+\cgalHeading{Types}
All types used in this class are inherited from the base class
diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_2.h
index b10d5e3f2f2..dc5125653ec 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_2.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Constrained_triangulation_2.h
@@ -134,7 +134,7 @@ The default intersection tag is `No_intersection_tag`.
\sa `ConstrainedTriangulationTraits_2`
\sa `ConstrainedTriangulationFaceBase_2`
-### Implementation ###
+\cgalHeading{Implementation}
The insertion of a constrained edge runs in time
proportional to the number of triangles intersected by this edge.
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 cea55c952c7..24cf010e404 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
@@ -17,7 +17,7 @@ of constrained triangulations.
of the concept `TriangulationFaceBase_2`.
Its default is `Triangulation_face_base_2`
-### Inherits From ###
+\cgalHeading{Inherits From}
The class `Constrained_triangulation_face_base_2` derives from its
parameter `Fb`. It adds three Boolean to deal with information about
diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Delaunay_triangulation_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Delaunay_triangulation_2.h
index 278cfefab7d..954c891c413 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Delaunay_triangulation_2.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Delaunay_triangulation_2.h
@@ -47,11 +47,11 @@ instantiated with `Delaunay_triangulation_2`. The triangulation
hierarchy will then offer the same functionalities but be much more
for efficient for locations and insertions.
-### Types ###
+\cgalHeading{Types}
Inherits all the types defined in `Triangulation_2`.
-### Implementation ###
+\cgalHeading{Implementation}
Insertion is implemented by inserting in the triangulation, then
performing a sequence of Delaunay flips. The number of flips is \f$ O(d)\f$
diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h
index 77144017a59..21a851b6683 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h
@@ -78,13 +78,13 @@ must be a model of the concept `TriangulationDataStructure_2`.
By default, the triangulation data structure is instantiated by
`Triangulation_data_structure_2 < Triangulation_vertex_base_2, Triangulation_face_base_2 >`.
-### Traversal of the Triangulation ###
+\cgalHeading{Traversal of the Triangulation}
A triangulation can be seen as a container of faces and vertices.
Therefore the triangulation provides several iterators and circulators
that allow to traverse it completely or partially.
-### Traversal of the Convex Hull ###
+\cgalHeading{Traversal of the Convex Hull}
Applied on the infinite vertex the above functions allow to visit
the vertices on the convex hull and the infinite edges and faces. Note
@@ -104,7 +104,7 @@ Vertex_circulator incident_vertices(t.infinite_vertex() v) ;
Vertex_circulator incident_vertices(t.infinite_vertex(), f) ;
\endcode
-### I/O ###
+\cgalHeading{I/O}
The I/O operators are defined for `iostream`.
The format for the iostream
@@ -130,7 +130,7 @@ 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.
-### Implementation ###
+\cgalHeading{Implementation}
Locate is implemented by a line walk from a vertex of the face given
as optional parameter (or from a finite vertex of
diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_euclidean_traits_xy_3.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_euclidean_traits_xy_3.h
index 0f6a11e7803..3c45b48f798 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_euclidean_traits_xy_3.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_euclidean_traits_xy_3.h
@@ -23,7 +23,7 @@ except that it does not provide the type and constructors
required to build the dual Voronoi diagram. The class is also a model
of the concept `ConstrainedTriangulationTraits_2`.
-### Parameters ###
+\cgalHeading{Parameters}
The template parameter `K` has to
be instantiated by a model of the `Kernel` concept.
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 d9be2e19ec1..3031329ddb8 100644
--- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h
+++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_hierarchy_2.h
@@ -34,7 +34,7 @@ However it can be used as well for other triangulations.
\tparam Tr may be any of the \cgal triangulation classes.
-### Types ###
+\cgalHeading{Types}
The class `Triangulation_hierarchy_2` inherits the types from its base triangulation
class `Tr`.
diff --git a/Triangulation_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h b/Triangulation_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h
index 2c8d5dd1867..a30951648a3 100644
--- a/Triangulation_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h
+++ b/Triangulation_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h
@@ -14,7 +14,7 @@ implemented using `Compact_container`. The class may offer some
flexibility for the choice of container in the future, in the form of
additional template parameters.
-### Parameters ###
+\cgalHeading{Parameters}
It is parameterized by base classes for vertices and cells which have to match
the requirements for the concepts `TriangulationDSCellBase_3` and
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 cedea60c011..13473d29363 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
@@ -24,7 +24,7 @@ of that class is set to `true`.
\cgalModels `RegularTriangulationTraits_3`
-### Operations ###
+\cgalHeading{Operations}
The following functions give access to the predicate and constructor
functors.
diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h
index 4981a9da41e..8c2945329a7 100644
--- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h
+++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h
@@ -12,7 +12,7 @@ of points.
\tparam TriangulationDataStructure_3 is the triangulation data structure.
It has the default value `Triangulation_data_structure_3< Triangulation_vertex_base_3,Triangulation_cell_base_3 >`.
-### Traversal of the Triangulation ###
+\cgalHeading{Traversal of the Triangulation}
The triangulation class provides several iterators and circulators
that allow one to traverse it (completely or partially).
diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_hierarchy_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_hierarchy_3.h
index ceae937d2df..c061e279c2d 100644
--- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_hierarchy_3.h
+++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_hierarchy_3.h
@@ -33,7 +33,7 @@ hierarchy into a file will lose the hierarchic structure and reading
it from the file will result in an ordinary triangulation whose
efficiency will be the same as `Tr`.
-### Implementation ###
+\cgalHeading{Implementation}
The data structure is a hierarchy
of triangulations. The triangulation at the lowest level is
diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_simplex_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_simplex_3.h
index e58bde54b88..9f9e41d366d 100644
--- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_simplex_3.h
+++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_simplex_3.h
@@ -10,7 +10,7 @@ operator less such that simplices can be stored in a `map` or a
`set` of simplices. The simplex is invalidated by any change in
the triangulation.
-### Parameters ###
+\cgalHeading{Parameters}
It is parameterized by the triangulation it derives the simplices
from.