Hyperbolic Voronoi diagrams made easy
Abstract
We present a simple framework to compute hyperbolic Voronoi diagrams of finite point sets as affine diagrams. We prove that bisectors in Klein’s nonconformal disk model are hyperplanes that can be interpreted as power bisectors of Euclidean balls. Therefore our method simply consists in computing an equivalent clipped power diagram followed by a mapping transformation depending on the selected representation of the hyperbolic space (e.g., Poincaré conformal disk or upperplane representations). We discuss on extensions of this approach to weighted and order diagrams, and describe their dual triangulations. Finally, we consider two useful primitives on the hyperbolic Voronoi diagrams for designing tailored user interfaces of an image catalog browsing application in the hyperbolic disk: (1) finding nearest neighbors, and (2) computing smallest enclosing balls.
1 Introduction and prior work
The birth and spread of science was originally initiated by geometry, the science of (Earth) measurements. Euclid (300 BC) laid the foundations of geometry in his masterpiece book series Elements that still remain the basis of mathematics nowadays, two millenia later. Euclidean geometry was assumed to be the only consistent geometry until the nineteenth century. Eventually, failing to prove Euclid’s fifth postulate (known as the parallel postulate) from the others opened the door to abstract geometries. The first two abstract geometries that were historically called imaginary geometries are the hyperbolic geometry and the spherical geometry. The essential difference between Euclidean and these nonEuclidean geometries is the nature of parallel lines. While in Euclidean geometry there is a unique line passing through a given point and parallel to another line, there can be infinitely many in the hyperbolic geometry [1] and none in spherical/elliptical geometries. In this paper, we focus on characterizing and building efficiently the Voronoi diagram in hyperbolic geometry.
The Voronoi diagram [2] of a finite point set partitions the space in cells according to proximity relations induced by a distance function . The structures of Voronoi diagrams appear in various fields such as crystallography, astronomy and biology. Let be a set of dimensional vector points of space . Then the Voronoi diagram of is defined by the collection of proximal regions ’s, called Voronoi cells, such that .
The Voronoi diagram in hyperbolic geometry has already been partially studied; Onishi and Takayama [3] investigated the hyperbolic Voronoi diagram construction in the Poincaré upper halfplane. Onishi and Itoh [4] further extended the Voronoi diagram in Hadamard manifold that are simply connected complete manifold with nonpositive curvature. Boissonnat et al. [5] considered the hyperbolic Voronoi diagram in the Poincaré conformal upper plane and the Poincaré conformal disk.^{1}^{1}1See Figure 6 and Figure 8 of [5] for illustrations. Boissonnat and Yvinec described in their computational geometry textbook the hyperbolic Voronoi diagram in the Poincaré dimensional halfspace [2], pp. 449454. They do not introduce explicitly the hyperbolic distance but rather show how to answer proximity queries (e.g., whether or is closer to ) using the notion of pencil of spheres. They deduced that the complexity of the hyperbolic Voronoi diagram is . Nilforoushan and Mohades [6] concentrated on the hyperbolic Voronoi diagram in the Poincaré 2D disk for which they report an incremental quadratic algorithm, and characterize geometrically the orthogonality of bisectors with geodesics. Note that by using the graphics processor unit (GPU), it is easy to rasterize interactively Voronoi diagrams [7] for any arbitrary distance function, including the distance of hyperbolic geometry.
In this paper, we revisit these work by considering the Klein projective disk model. We showed in section 2 that bisectors are hyperplanes, implying that the Voronoi diagram is affine and therefore can be easily constructed from an equivalent power diagram. We report the onetoone conversion formula to change the representation of the hyperbolic geometry: Klein or Poincaré disk models and Poincaré upper half plane model. We further characterize the weighted and order diagrams in the Klein disk model and explain the dual hyperbolic Delaunay triangulation. In section 3, we present an image browsing application in the hyperbolic disk that requires two basic user interface selection operations that are solved by means of nearest neighbor queries and by finding the smallest enclosing ball in hyperbolic geometry.
2 Hyperbolic Voronoi diagrams from power diagrams
2.1 Klein’s nonconformal disk model
The Klein model (or BeltramiKlein model [1]) uses the interior of a unit circle for fully representing the hyperbolic plane. The Klein model is also known as the projective disk model where lines are depicted by chords of the circle (e.g., line segments joining any two points of the circle). Although the Klein model offers a simple visualization of geodesics as line segments, it has the disadvantage of being a nonconformal representation: That is, angles of the hyperbolic plane are not preserved, and get distorted in this model. (That explains why the Poincaré conformal disk representation is often preferred.) The distance between any two points and of the Klein disk with Euclidean coordinates ( and ) is computed as
(1) 
where .
2.2 Bisectors in Klein projective model are hyperplanes
Bisectors are core primitives to characterize and compute Voronoi diagrams. The bisector of two points and with respect to a given distance function is defined as the loci of the points that are at the same distance of to and : . Let us derive from the distance function of Eq. 1 the equation of the bisector in Klein’s disc model of hyperbolic geometry: . That is
(2) 
This is a linear equation in , with and . Thus the bisector is a hyperplane, and the Voronoi diagram is said affine [8].
2.3 Hyperbolic Voronoi diagrams as equivalent power diagrams
The power distance of a point to a Euclidean ball is defined as . Given balls , , the power diagram (also called Laguerre diagram) of the ’s is defined as the minimization diagram of the corresponding functions . The power bisector of any two balls and is the radical hyperplane [8] of equation
(3) 
Thus power diagrams are also affine diagrams. Interestingly, Aurenhammer [8] proved that all affine diagrams can be constructed from equivalent power diagrams. That is power diagrams are universal representations of affine diagrams. Therefore any algorithm to build power diagrams can also build all affine Voronoi diagrams once the equivalence relations are explicitly given. Thus we need to report the mapping that associates to points in the Klein disk corresponding Euclidean balls so that their bisectors match. By identifying the bisector equation Eq. 2 with that of Eq. 3, we find that point is mapped to a ball of center and radius . Note that some of the radii may be negative (imaginary numbers, e.g. ), i.e. represent imaginary balls. A careful analysis shows that the radius is negative for and positive otherwise.
Theorem 2.1
The hyperbolic Voronoi diagram of dimensional points can be obtained in the Klein disk model as an equivalent power diagram. The diagram has combinatorial complexity and can be built in time.
Since power diagrams are defined on the full space , the equivalence also allows us to define the hyperbolic Voronoi diagram on the boundary circle. Figure 1 depicts the construction of the hyperbolic Voronoi diagram of a point set as the corresponding power diagram of associated balls. Note that the equivalence is only one way as there exists power diagrams with empty cells, which is not possible for the hyperbolic Voronoi diagrams.
Hyperbolic Voronoi (Klein disk)  Equivalent power diagram of balls 

Building efficiently power diagrams is a wellstudied problem [8] for which many highly optimized implementations are available. For example, CGAL^{2}^{2}2The computational geometry algorithms library, see http://www.cgal.org provides this module.
2.4 Converting Klein/Poincaré disk models
The hyperbolic Voronoi diagram in the Poincaré disk is conformal, i.e. it preserves the notion of hyperbolic angles defined by intersecting curves in the representation space (the embedding space called the model). Straight lines in the hyperbolic geometry are represented by arcs of circles perpendicular to the unit circle in the Poincaré disk. Two nonintersecting arcs denote parallel hyperbolic lines, and two arcs intersecting orthogonally correspond to perpendicular lines. There exists infinitely many geodesics passing through a given point parallel to a given geodesic, contradicting Euclid’s fifth postulate of Euclidean geometry. The distance between any two vector points and with Euclidean coordinates is with . A geodesic (line segment in hyperbolic geometry) is expressed in the Poincaré disk by either a portion of a circle (with ) or by a line .
A point in the Klein disk corresponds to a point in the Poincaré disk (and viceversa) using the following radial scaling formula and .
The relationship between the two Klein/Poincaré models is therefore a projection from the center of the disk. Figure 2 shows both Klein affine and Poincaré circular arc Voronoi diagrams. The straight line passing through two points in the Klein model intersects the unit circle in two ideal points, with the corresponding Poincaré line being a circular arc orthogonal to the boundary disk.
2.5 Sphere inversions and Möbius transformations
Möbius transformations (also called homographies) form a geometric group defined by inversions of spheres. An inversion of the space by a sphere centered at with radius , maps to itself all rays emanating from such that the product of a point on that ray with its image (i.e., the mapped point) equals . Möbius transformations preserve angles as well. The isometries of hyperbolic geometries are in onetoone mapping with Möbius transformations. Thus we can navigate hyperbolic space by smoothly moving the viewpoint of the Poincaré disk model using Möbius transformations (see Section 3.1).
Note that in computational geometry, the Möbius Voronoi diagram [9] of a point set is defined as the space partition relating proximity structure induced by distance functions , where the ’s are multiplicative factor constants and the ’s are additive constants (i.e., additively and multiplicatively weighted Voronoi diagrams). Hyperbolic Voronoi diagrams are special cases of Möbius diagrams that can be viewed as affine diagrams.
2.6 Converting to Poincaré upper half plane
To convert the affine Klein Voronoi diagram to the Poincaré upper half plane model, we first convert the Klein disk model to the Poincaré disk model as explained in the previous section. We then interpret 2D points as complex numbers in the complex space, so that the Poincaré disk model is the space and the upper half plane model corresponds to the space . Both Poincaré disk/upper plane models are conformal. We then apply the following Möbius transformation with . Reciprocally, to convert the upper half plane to the disk model, we apply the inverse Möbius transformation with (with ).
2.7 Hyperbolic Delaunay triangulations
The power diagram equivalent to the hyperbolic Voronoi diagram admits a dual regular triangulation [8, 2, 10] as depicted in Figure 3. This straight line triangulation can be embedded in Klein disk model of projective geometry. Furthermore, the bisector of two points and is perpendicular to the geodesic linking to . In particular, the two circular arcs meet orthogonally in the Poincaré conformal representations. In Klein disk model, they also meet perpendicularly but since the representation is not conformal, it makes a different Euclidean angle. However, we can easily compute the angle between two line segments in Klein model by considering their chords. Indeed, the ideal points located on the boundary circle are the same in the Klein model and the Poincaré disk model.
2.8 Weighted and order hyperbolic Voronoi diagrams
Power diagrams are weighted (ordinary) Voronoi diagrams that can be obtained by projecting vertically the polytope defined by the intersection of halfspaces [8] generated by lifting points to the paraboloid of , taking the corresponding tangent plane and translating them vertically according to their weights. A similar lifting/projection mechanism holds for hyperbolic Voronoi diagram in the upperplane model (the proof relying on pencils of spheres [11] is omitted)
Theorem 2.2
The 2D hyperbolic Voronoi diagram on the upper plane can be obtained by first computing the intersection of 3D halfspaces implied by the paraboloid lifting, then projecting horizontally the edges of the 3D polytope to the paraboloid, and finally projecting vertically these curves on the plane.
Furthermore, as shown in [10], order and weighted affine diagrams are also affine diagrams that can therefore be computed equivalently as power diagrams. These power diagrams can be built themselves as the projection of a dimensional polytope obtained as the intersection of halfspaces tangent to the paraboloid and translated vertically by a corresponding weight.
3 Applications of the hyperbolic Voronoi diagram
3.1 Browsing image collections in the hyperbolic disk
Figure 4 shows a snapshot of our interactive image search and browser application. We use the fact the Poincaré/Klein disk models allow one to display the full hyperbolic plane into a bounded disk fitting the display dimension. The application asks for text keywords and query web search engines to retrieve large collections of images. These images are analyzed using various feature extractions (e.g., histograms) and represented in the 2D hyperbolic space using Sammon clustering technique^{3}^{3}3See http://www.techfak.unibielefeld.de/~walter/h2vis/ that optimizes the nonlinear embedding so as to preserve pairwise distances [12] of highdimensional extracted feature vectors.
The Poincaré/Klein disk models of the hyperbolic space are not uniquely defined as it depends on the chosen origin and orientation around the disk center: The selected viewpoint [13], also called focus [14]. From the user standpoint, it is important to be able to interactively change the focus so as to better visually depict the structures of the image collection. In particular, two useful userinterface operations involve computational geometry tasks

Image selection: Given a mouse click, report the closest anchored image,

Group selection: Given several mouse clicks, report the smallest enclosing ball containing all anchored images falling within the mouse selection.
The first operation is a nearest neighbor query in the hyperbolic geometry. The second operation is useful for recentering the hyperbolic disk model using the viewpoint so as to improve the display area of the selected images. Since rectangular shapes does not visualize rectangularly in either Poincaré/Klein disk, we prefer to manipulate circles that are rasterized as circles in Poincaré conformal disk and ellipsis in the Klein nonconformal disk.
The transformations for recentering the viewpoint of the disk models are Möbius transformations.
Closest image and nearest neighbor queries. To answer the first specific UI operation of finding the nearest neighbor for a given mouseclick query, we build the Klein Voronoi diagram. This yields a 2D straight line partition of the disk space (i.e., an arrangement) on which we perform point location in logarithmic time [2]. We may recenter the viewpoint of the disk model at the selected image, if wished.
Group selection and smallest enclosing ball. To address the second UI primitive, we first need to compute the smallest enclosing ball, and then recenter the viewpoint of the disk model so as to coincide with the circumcenter of that enclosing ball. The smallest enclosing ball may be computed from the furthest Voronoi diagram that is an affine diagram in Klein disk in time, following [15]. This is suboptimal as we may rather use a simple linear randomized algorithm originally proposed by Welzl [16] for Euclidean geometry and recently extended to dually flat spaces [17]. Indeed the combinatorial optimization problem is of type LP (linear programming). On the plane, we need to define the two basic primitives: The hyperbolic ball passing through two points, and the hyperbolic ball passing through three points. The first case is solved by computing the intersection point of the Klein bisector with the line segment joining these two points. The second case considers the intersection any two of the three bisectors. Once the circumcenter of the smallest enclosing ball is computed, we finally recenter the viewpoint of the disk model using a corresponding Möbius transformation.
4 Conclusion
We have shown that the hyperbolic Voronoi diagram in the Klein projective disk model is merely an affine diagram that can be conveniently computed as an equivalent power diagram. This crucial observation led us to a framework for performing other useful computational geometry tasks such as answering nearest neighbor queries or computing smallest enclosing balls. We illustrated how these techniques come in handy for designing user interfaces of an interactive image browser application.
Acknowledgments
Part of this research has been financially supported by ANR07BLAN032801 (GAIA) and
DIGITEO 200816D (GAS).
We thank Cyprien Pindat for implementing in Java an earlier version of the image browser application in the Poincaré disk model.
References
 [1] Beltrami, E.: Essay on the interpretation of the nonEuclidean geometry. (1868) Translated in 1996 by J.C. Stillwell Hist Math. 10 AMS Publication.
 [2] Boissonnat, J.D., Yvinec, M.: Algorithmic Geometry. Cambridge University Press, New York, NY, USA (1998)
 [3] Onishi, K., Takayama, N.: Construction of Voronoi diagram on the upper halfplane. IEICE Transactions 79A(4) (1996) 533–539
 [4] Onishi, K., Itoh, J.I.: Voronoi diagram in simply connected complete manifold. IEICE Transactions E85A(5) (2002) 944–948
 [5] Boissonnat, J.D., Cérézo, A., Devillers, O., Teillaud, M.: Outputsensitive construction of the Delaunay triangulation of points lying in two planes. Int. J. Comput. Geometry Appl. 6(1) (1996) 1–14
 [6] Nilforoushan, Z., Mohades, A.: Hyperbolic voronoi diagram. In: ICCSA (5). (2006) 735–742
 [7] Nielsen, F.: An interactive tour of voronoi diagrams on the gpu. In: ShaderX: Advanced Rendering Techniques. Charles River Media (2008)
 [8] Aurenhammer, F.: Power diagrams: Properties, algorithms and applications. SIAM Journal of Computing 16(1) (1987) 78–96
 [9] Boissonnat, J.D., Karavelas, M.I.: On the combinatorial complexity of euclidean voronoi cells and convex hulls of ddimensional spheres. In: SODA ’03: Proceedings of the fourteenth annual ACMSIAM symposium on Discrete algorithms, Philadelphia, PA, USA, Society for Industrial and Applied Mathematics (2003) 305–312
 [10] Nielsen, F., Boissonnat, J.D., Nock, R.: Bregman voronoi diagrams: Properties, algorithms and applications. CoRR abs/0709.2196 (2007)
 [11] Devillers, O., Meiser, S., Teillaud, M.: The space of spheres, a geometric tool to unify duality results on Voronoi diagrams. Research Report 1620, INRIA (1992)
 [12] Walter, J.A., Weissling, D., Essig, K., Ritter, H.: Interactive hyperbolic image browsing – towards an integrated multimedia navigator. In: Proceedings of ACM KDD/MDM 2006. (2006)
 [13] Bern, M.W., Eppstein, D.: Optimal Möbius transformations for information visualization and meshing. In: WADS ’01: Proceedings of the 7th International Workshop on Algorithms and Data Structures, London, UK, SpringerVerlag (2001) 14–25
 [14] Lamping, J., Rao, R., Pirolli, P.: A focus+context technique based on hyperbolic geometry for visualizing large hierarchies. In: CHI ’95: Proceedings of the SIGCHI conference on Human factors in computing systems, New York, NY, USA, ACM Press/AddisonWesley Publishing Co. (1995) 401–408
 [15] Skyum, S.: A simple algorithm for computing the smallest enclosing circle. Inf. Process. Lett. 37(3) (1991) 121–125
 [16] Welzl, E.: Smallest enclosing disks (balls and ellipsoids). In: New Results and New Trends in Computer Science. Volume 555 of Lecture Notes in Computer Science. Springer (1991) 359–370
 [17] Nielsen, F., Nock, R.: On the smallest enclosing information disk. Inf. Process. Lett. 105(3) (2008) 93–97