diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Doxyfile.in b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Doxyfile.in
index 4f7caf97a84..8d17ef5c0b8 100644
--- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Doxyfile.in
+++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Doxyfile.in
@@ -6,6 +6,8 @@ EXAMPLE_PATH = ${CGAL_PACKAGE_DIR}/examples
PROJECT_NAME = "CGAL ${CGAL_DOC_VERSION} - 2D Hyperbolic Delaunay Triangulations"
+HTML_EXTRA_STYLESHEET = ${CGAL_PACKAGE_DOC_DIR}/css/customstyle.css
+
HTML_EXTRA_FILES = ${CGAL_PACKAGE_DOC_DIR}/fig/ht-empty-disks.svg \
${CGAL_PACKAGE_DOC_DIR}/fig/poincare-disk.svg \
${CGAL_PACKAGE_DOC_DIR}/fig/header.png \
diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Hyperbolic_triangulation_2.txt b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Hyperbolic_triangulation_2.txt
index e435a5dac2c..7121b66d62d 100644
--- a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Hyperbolic_triangulation_2.txt
+++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/Hyperbolic_triangulation_2.txt
@@ -12,11 +12,11 @@ namespace CGAL {
\author Mikhail Bogdanov, Iordan Iordanov, and Monique Teillaud
-
+
-This package enables the computation of Delaunay triangulations of point sets in the Poincaré
-disk model of the hyperbolic plane, as well as their dual objects.
+This package enables the computation of Delaunay triangulations of
+point sets in the Poincaré disk model of the hyperbolic plane.
\section HT2_Poincare_model The Poincaré Disk Model of the Hyperbolic Plane
The Poincaré disk model represents the hyperbolic plane
@@ -26,13 +26,13 @@ H_\infty\f$ of points at infinity.
In this model, a hyperbolic line is either an arc of circle
perpendicular to the unit circle or, if it passes through the origin,
-a diameter of the unit disk. A hyperbolic circle is a Euclidean circle
-contained in the unit disk; however, its hyperbolic center and radius
+a diameter of the unit disk. A hyperbolic circle is a Euclidean
+circle contained in the unit disk; however, its hyperbolic center and radius
are not the same as its Euclidean center and radius.
\cgalFigureAnchor{Hyperbolic_triangulation_2Poincare_disk}
-
+
\cgalFigureCaptionBegin{Hyperbolic_triangulation_2Poincare_disk}
The Poincaré disk model for the hyperbolic plane. The figure shows
@@ -58,31 +58,25 @@ are hyperbolic:
P\f$) passing through its endpoints is contained in \f$\mathbb
H^2\f$.
-See \cgalFigureRef{Hyperbolic_triangulation_2Euclidean_vs_hyperbolic}.
+
+In the Euclidean Delaunay triangulation, there is a bijection between
+non-hyperbolic faces and non-hyperbolic edges \cgalCite{cgal:bdt-hdcvd-14}.
+For an example of a hyperbolic Delaunay triangulation and the underlying Euclidean
+Delaunay triangulation, as well as for an example of a non-hyperbolic Delaunay
+edge, see \cgalFigureRef{Hyperbolic_triangulation_2Euclidean_vs_hyperbolic}.
\cgalFigureAnchor{Hyperbolic_triangulation_2Euclidean_vs_hyperbolic}
-
+
+
\cgalFigureCaptionBegin{Hyperbolic_triangulation_2Euclidean_vs_hyperbolic}
-The Euclidean (green) and hyperbolic (black) Delaunay triangulations
+Left: The Euclidean (red) and hyperbolic (black) Delaunay triangulations
of a given set of points in the unit disk. Only the colored faces
-are faces of the hyperbolic Delaunay triangulation. The hyperbolic and Euclidean geometric embeddings of a
-Delaunay face that exists in both triangulations are different.
-\cgalFigureCaptionEnd
-
-
-In the Euclidean Delaunay triangulation, there is a bijection between
-non-hyperbolic faces and non-hyperbolic edges
-\cgalCite{cgal:bdt-hdcvd-14}. See
-\cgalFigureRef{Hyperbolic_triangulation_2Empty_disks}
-
-\cgalFigureAnchor{Hyperbolic_triangulation_2Empty_disks}
-
-
-
-\cgalFigureCaptionBegin{Hyperbolic_triangulation_2Empty_disks}
-The shaded face is non-hyperbolic. Its dashed edge is non-hyperbolic,
+are faces of the hyperbolic Delaunay triangulation. The hyperbolic
+and Euclidean geometric embeddings of a Delaunay face that exists
+in both triangulations are different.
+Right: The shaded face is non-hyperbolic. Its dashed edge is non-hyperbolic,
as no empty circle through its endpoints is contained in
\f$\mathbb H^2\f$. Its other two edges are hyperbolic.
\cgalFigureCaptionEnd
@@ -91,20 +85,20 @@ as no empty circle through its endpoints is contained in
\section HT2_Software_design Software Design
From what was said above, it is natural that the class
`Hyperbolic_Delaunay_triangulation_2` privately inherits from the class
-`Delaunay_triangulation_2`. So, users are encouraged to look at Chapter
-\ref Chapter_2D_Triangulations "2D Triangulation" of the CGAL manual to
+`Delaunay_triangulation_2`. Consequently, users are encouraged to look at Chapter
+\ref Chapter_2D_Triangulations "2D Triangulation" of the %CGAL manual to
know more in particular about the representation of triangulations in
CGAL and the flexibility of the design.
The class `Hyperbolic_Delaunay_triangulation_2` has two template
parameters:
- - A geometric traits class `Gt`, which provides geometric
+
- A geometric traits class `Gt`, which provides geometric
primitives. The requirements on this first template parameter
are described by the concept
`HyperbolicDelaunayTriangulationTraits_2`, which refines
`DelaunayTriangulationTraits_2`.
-
- A triangulation data structure parameter, for which the
+
- A triangulation data structure parameter, for which the
requirements are described by the concept
`TriangulationDataStructure_2`. The default for this second template parameter
is `Triangulation_data_structure_2< Triangulation_vertex_base_2, Hyperbolic_triangulation_face_base_2 >`.
@@ -141,9 +135,9 @@ parameters against the insertion time in a Euclidean \cgal triangulation.
We generate 1 million random points, uniformly distributed in the unit disk with respect
to the Euclidean metric. We insert the same set of points in three triangulations:
- - a hyperbolic Delaunay triangulation with `CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2<>` as traits class;
-
- a hyperbolic Delaunay triangulation with `CGAL::Hyperbolic_Delaunay_triangulation_traits_2<>` as traits class;
-
- a Euclidean Delaunay triangulation with `CGAL::Exact_predicates_inexact_constructions_kernel` as traits class.
+
- a hyperbolic Delaunay triangulation with `CGAL::Hyperbolic_Delaunay_triangulation_traits_2` (%CORE traits) as traits class;
+
- a hyperbolic Delaunay triangulation with `CGAL::Hyperbolic_Delaunay_triangulation_CK_traits_2` (CK traits) as traits class;
+
- a Euclidean Delaunay triangulation with `CGAL::Exact_predicates_inexact_constructions_kernel` (EPICK) as traits class.
We create two instances of each type of triangulation. In one instance we insert the points one by one, which causes
non-hyperbolic faces to be filtered out at each insertion. In the other instance we insert the points via iterator
@@ -161,9 +155,9 @@ executed on two machines:
Table 1: Comparison of insertion times of 1 million random points
| %Triangulation type | Machine 1 | Machine 2
|
|---|
| | Sequential insertion | %Iterator insertion | Sequential insertion | %Iterator insertion
- |
| Hyperbolic (General traits) | 955 sec. | 23 sec. | 884 sec. | 20 sec.
+ |
| Hyperbolic (%CORE traits) | 955 sec. | 23 sec. | 884 sec. | 20 sec.
|
| Hyperbolic (CK traits) | 330 sec. | 1 sec. | 289 sec. | 1 sec.
- |
| Euclidean (%Cartesian traits) | 131 sec. | < 1 sec. | 114 sec. | < 1 sec.
+ |
| Euclidean (EPICK) | 131 sec. | < 1 sec. | 114 sec. | < 1 sec.
diff --git a/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/css/customstyle.css b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/css/customstyle.css
new file mode 100644
index 00000000000..4f83ac04a32
--- /dev/null
+++ b/Hyperbolic_triangulation_2/doc/Hyperbolic_triangulation_2/css/customstyle.css
@@ -0,0 +1,4 @@
+
+.image {
+ display: inline;
+}
\ No newline at end of file
|