You are on page 1of 14

Computer Aided Geometric Design 95 (2022) 102086

Contents lists available at ScienceDirect

Computer Aided Geometric Design


www.elsevier.com/locate/cagd

Hyperbolic barycentric coordinates and applications


Alaa eddine Bensad, Aziz Ikemakhen ∗
Faculty of Science and Technology, Cadi Ayyad University (UCA), Marrakesh, Morocco

a r t i c l e i n f o a b s t r a c t

Article history: Barycentric coordinates are a fundamental tool in computer graphics and geometry
Available online 15 April 2022 processing. A variety of ways has been proposed for constructing such coordinates on
the Euclidean plane. The spherical barycentric coordinates are also developed. This paper
Keywords:
completes this construction for the hyperbolic plane case. We define hyperbolic barycentric
Hyperbolic plane
Geodesic polygon
coordinates (HBC) that describe the position of a point in the hyperbolic plane with
Hyperbolic barycentric coordinates respect to the vertices of a given geodesic polygon. We construct explicitly three kinds
Hyperbolic mesh parameterization of HBC, namely hyperbolic Wachspress, mean values and discrete harmonic coordinates.
Morphing These coordinates have properties which resemble those of the planar ones, and they are
invariant by the Lorentzian transformations. Furthermore, we figure out the HBC on the
Poincaré disk model. The HBC associated to a point in a hyperbolic triangle are unique.
We develop two expressions of these coordinates, taking into account the parameters of a
point inside the triangle.
In addition, we exploit these coordinates to define a parameterization of a surface-mesh
with boundary into the Poincaré disk, and we show some examples. This hyperbolic
parameterization extends that of the planar one, known as Tutte’s embedding.
Furthermore, we demonstrate the efficiency of these coordinates by giving other applica-
tions. Namely hyperbolic deformation and rapid shape morphing.
Published by Elsevier B.V.

1. Introduction

Barycentric coordinates are a special type of coordinates that express the location of a point with respect to the vertices
of a fixed polygon. Barycentric coordinates are a fundamental tool in computer graphics and geometry processing. They
are used in a wide variety of applications, namely finite elements, interpolation, parameterization, shape morphing, mesh
deformation. 2D-Barycentric coordinates are not unique if the number of vertices is greater than three. This is why we
find in the literature different kinds of coordinates (Wachspress, Mean value, Discrete harmonic, Poisson, Gordon-Wixom,
Sibson, Laplace, Hermite, . . . ). For more details see for instance (Wachspress and EL, 1975; Meyer et al., 2002; Hormann and
Sukumar, 2017; Floater et al., 2006; Floater, 2015; Yan and Schaefer, 2019). However, Wachspress, mean value and discrete
harmonic coordinates are specific choices have proven useful in several applications.
Surface barycentric coordinates establish another category of coordinates. The coordinates of a point on the surface are
determined with respect to a geodesic polygon. Spherical barycentric coordinates with respect to spherical triangles were
first studied by Möbius and introduced to computer graphics by Alfeld et al. (1996). After, they were extended to convex

The code (and data) in this article has been certified as Reproducible by Code Ocean: https://codeocean.com/. More information on the Reproducibility
Badge Initiative is available at https://www.elsevier.com/physical-sciences-and-engineering/computer-science/journals.
* Corresponding author.
E-mail addresses: alaaeddine.bensad@ced.uca.ma (A.e. Bensad), a.ikemakhen@uca.ma (A. Ikemakhen).

https://doi.org/10.1016/j.cagd.2022.102086
0167-8396/Published by Elsevier B.V.
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

spherical polygons in the work of Ju et al. (2005) using the notion of vector coordinates. A construction in the case of
arbitrary spherical polygons was introduced by Langer et al. (2006). This construction is reduced to the planar one by
using the gnomonic projection. Spherical mean value coordinates have been given explicitly. Barycentric coordinates on any
surface was examined by Rustamov (2010) using the concept of Riemannian center of mass and the exponential map. For
the hyperbolic plane case, a construction of barycentric coordinates with respect to a hyperbolic triangle can be found in
mathematical literature (Harmer, 2003). This approach is very limited to triangles. In addition, it is not clear what kind of
linear precision property the resulting coordinates satisfy.
Parameterizing a surface-mesh into a simpler two-dimensional domain by minimizing distortion is one of the basic
research area in Geometry Processing and Computer Graphics. The Euclidean plane is one of the most natural target domains
for embedding disk-like surfaces. While, the unit sphere is the one for surfaces of genus-zero. Whereas the hyperbolic plane
is the one for surfaces of genus ≥ 1. In the literature, a lot of work has been done on the first and second cases, while for
the last there are few results (Tsui et al., 2013; Aigerman and Lipman, 2016; Gillespie et al., 2021). Note that Barycentric
coordinates play a fundamental role in the construction of some parameterizations (Hormann et al., 2007; Sheffer et al.,
2006; Gotsman et al., 2003).
Computing parameterization of a triangular mesh with boundary and with planar target domain is based on Tutte’s
embedding method generalized by Floater (2003) to convex combination maps. This method is simple because it only
requires solving a sparse linear system. Other method to compute parameterization consists to minimize its associated
Dirichlet energy (Desbrun et al., 2002; Pinkall and Polthier, 1993; Aigerman and Lipman, 2015).
In this paper, we provide a method to construct barycentric coordinates on the hyperbolic plane for an arbitrary hyper-
bolic polygon (Section 5). Our approach consists in reducing this construction to that of planar one by using the hyperbolic
gnomonic projection. Furthermore, by exploiting the relation between hyperbolic triangles and their gnomonic projections,
we derive hyperbolic mean value, Wachspress and discrete harmonic coordinates. The resulting coordinates have properties
which resemble those of the planar case. In addition, by using the Riemannian isometry between the hyperbolic plane and
its model Poincaré disk, we deduce hyperbolic barycentric coordinates on the latter (Section 6). The rest of the paper is
organized as follows. In Section 3, we recall the geometry and the properties of the hyperbolic plane and the Poincaré
disk model. In Section 4, for a hyperbolic triangle, we show two expressions of hyperbolic barycentric coordinates. Finally
in Section 7, we discuss some applications including hyperbolic mesh parameterization, hyperbolic deformation and rapid
shape morphing. And we imagine that several other applications of hyperbolic coordinates will be possible.

2. Related work

Planar barycentric coordinates have been attracting a lot of attention recently. A variety of ways has been proposed
for computing such coordinates, including but not limited to Wachspress, mean value and discrete harmonic coordinates
(Section 5.1). For more details see (Wachspress and EL, 1975; Meyer et al., 2002; Hormann and Sukumar, 2017; Floater et
al., 2006; Floater, 2015; Yan and Schaefer, 2019). However, research regarding coordinates on surfaces remains incomplete.
A complete success has only been achieved for polygons on the (hemi)sphere. In addition, a construction in the case of
arbitrary spherical polygons was introduced by Langer et al. (2006). Its construction is based on the gnomonic projection.
Only spherical mean value coordinates have been given explicitly.
Barycentric coordinates on any surface was examined by Rustamov (2010) using the concept of Riemannian center of
mass and the exponential map. But he did not explicitly give the surface barycentric coordinates.
In this paper, we complete this construction for the hyperbolic plane case. We give a complete success for polygons
on the hyperbolic plane. Our construction is similar to Langer et al. (2006) and Rustamov (2010). By using the gnomonic
projection, we reduce this construction to the planar one. And we are not aware of any extension of such approach to
hyperbolic plane. In addition, the resulting barycentric coordinates depend strongly on the particular embedding of the
hyperbolic plane and preserves the linear precision property in its original planar form. The main contribution of this paper
is as follows:

• We use the hyperbolic gnomonic projection to define and construct barycentric coordinates with respect to hyperbolic
polygons depending only on the hyperbolic geometry (Section 5.2). Furthermore, by using the Riemannian isometry
between the hyperbolic plane and its model Poincaré disk, we figure out the HBC on the latter (Section 6).
• By exploiting the relation between hyperbolic triangles and their gnomonic projections and the relationship between
the Euclidean trigonometry and the hyperbolic one, we give explicitly the expression of hyperbolic Wachspress, mean
value and discrete harmonic coordinates (Section 5.2).
• We develop two expressions of these coordinates taking into account the parameters of a point inside the triangle.
Namely the interior areas and the hyperbolic distances between a point inside and the vertices of the triangle (Sec-
tion 4). Other expressions are possible. These coordinates have same properties of the planar one, and are very useful
for defining the texture of a hyperbolic triangular mesh-surface.
• We exploit these coordinates to define parameterization of a triangular surface-mesh with boundary into the Poincaré
disk and we show some examples. This hyperbolic parameterization extends that of the planar one, known as Tutte’s
embedding (Section 7).

2
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 1. Morphing sequence between a wolf’s face and a bat on the Poincaré disk.

• We give other applications to show the effectiveness of these coordinates. Namely hyperbolic deformation and rapid
shape morphing (Section 7).

3. Background

A hyperbolic geometry is a non-Euclidean geometry having constant negative curvature. The best-known model of 2-
dimensional hyperbolic geometry is the Poincaré disk, also called the conformal disk model.
In this section, we will recall the notion of the hyperbolic plane, the Poincaré disk model and their geometries. The
readers are referred to Ratcliffe et al. (1994, chap. 3, 4, 5).

3.1. The hyperbolic plane

Let  ,  L be the Lorentz inner product on R3 defined by  X , X  L := x2 + y 2 − z2 , X = (x, y , z) ∈ R3 . The hyperbolic plane
H2 is the upper sheet of the two-sheeted hyperboloid:

H2 := {(x, y , z) ∈ R3 , x2 + y 2 − z2 = −1, z > 0 },

equipped with its metric g induced by  ,  L . We denote by  X  L the Lorentzian norm associated to  ,  L .
Let A , B ∈ H2 , the hyperbolic distance between A and B is defined to be the real number dH2 ( A , B ) such that

dH2 ( A , B ) = cosh−1 (− A , B  L ), A , B ∈ H2 . (1)

The Lorentzian group O ( ,  L ) is the group of linear isomorphism of R3 that preserve the Lorentz inner product ,  L .
We denote by O + (,  L ) its subgroup consisting of the maps that preserve H2 .

Proposition 3.1. O + ( ,  L ) acts transitively on H2 .

3.2. The Poincaré disk

The Poincaré disk is one of the conformal models of the hyperbolic plane which is defined by D = {(u , v ) ∈ R2 , u 2 +
4(du 2 + dv 2 )
v 2 < 1 }, and equipped with the Riemannian metric h = .
(1 − u 2 − v 2 )2
The geodesics in D are all circular arcs that are orthogonal to the boundary of D , plus all diameters of D . The geodesic
distance between two points in D is given by the formula

u − v 2
cosh(dD (u , v )) = 1 + 2 , (u , v ) ∈ D, (2)
(1 − u 2 )(1 −  v 2 )
where . denotes the Euclidean norm.
The following proposition gives the Riemannian isometry between H2 and D . This isometry preserves all intrinsic angles
and distances, we will be used in Section 6 to deduce barycentric coordinates on D .

Proposition 3.2. The Riemannian isometry  : H2 −→ D between the hyperbolic plane and the Poincaré disk is determined by
x y
(x, y , z) := ( , ), (x, y , z) ∈ H2 .
1+z 1+z
2u 2v 1 + u2 + v 2
And its inverse is given by −1 (u , v ) := ( , , ), (u , v ) ∈ D .
1 − u − v 1 − u − v 1 − u2 − v 2
2 2 2 2

3
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 2. Notations for define the functions ωi and c i j .


  
a b
Proposition 3.3. Möbius group SU (1, 1) := | a, b ∈ C | aā − bb̄ = 1 acts transitively on D .
b̄ ā

Möbius transformations preserve all intrinsic angles and distances. They are equivalent to rigid motions in Euclidean
geometry.

4. Barycentric coordinates for hyperbolic triangle

In this paragraph, we will develop two expressions of barycentric coordinates associated to a hyperbolic triangle. Note
that other expressions are possible.
Let us first examine the case of a planar triangle T := [v 1 , v 2 , v 3 ] ⊂ R2 , with unaligned vertices v 1 , v 2 , v 3 . Let v within
T . Möbius showed that the three barycentric coordinates of v are the ratios of the areas A i of the sub-triangles to the area
Ai 
3
A of T, i.e., v = φ1 v 1 + φ2 v 2 + φ3 v 3 , where φi = , i = 1, 2, 3, and φi = 1. For more details see Hormann and Sukumar
A
i =1
(2017).
Now the natural question that arises is what are the expressions of the coordinates φi for a hyperbolic triangle case. To
answer this question let T := [v 1 , v 2 , v 3 ] be a hyperbolic triangle (triangle in H2 whose sides are geodesics) (see Fig. 2a).
Let v ∈ H2 be a point inside the triangle T . If we look at v 1 , v 2 , v 3 , v as points in the space R3 , there are unique values
φ1 , φ2 , φ3 ∈ R such that
⎛ ⎞⎛ ⎞ ⎛ ⎞

3 v 1x v 2x v 3x φ1 vx
v= φi v i ⇔ ⎝vy v2
y
v3
y ⎠⎝
φ2 = v y ⎠ ,
⎠ ⎝
1
i =1 v 1z v2 z
v3 z
φ3 vz
where v x denotes the x-coordinate of v, etc. Using Cramer’s rule, we get
⎛ ⎞
v 1x v 2x v 3x
det( v , v 2 , v 3 ) det( v 1 , v , v 3 ) det( v 1 , v 2 , v )
φ1 = , φ2 = , φ3 = ⎝
, det( v 1 , v 2 , v 3 ) := det v 1y v2
y
v3 ⎠ .
y
(3)
det( v 1 , v 2 , v 3 ) det( v 1 , v 2 , v 3 ) det( v 1 , v 2 , v 3 )
v 1z v 2z v 3z

Now, we consider the points v i as points on H2 . And we will express the coordinates φi only in terms of the hyperbolic
triangle data (geodesic side lengths, hyperbolic angles, hyperbolic area, . . . ).
The next results show that hyperbolic barycentric coordinates can be expressed in terms of internal geodesics.

Proposition 4.1. Let v within T . For each i = 1, 2, 3, let G i be the geodesic passing through the points v and v i , and let q i denote the
intersection of G i with the edge of T opposite to v i (see Fig. 2a). Then the hyperbolic barycentric coordinates of v are:
sinh εi
φi = , (4)
sinh(εi + μi )
where εi is the hyperbolic distance from q i to v, and μi is the hyperbolic distance from v to v i (see Fig. 2a).

sinh ε1 sinh μ1
Proof. It suffices to consider the case i = 1. Clearly v = v1 + q1 . Then since q1 can be written
sinh(ε1 + μ1 ) sinh(ε1 + μ1 )
as a linear combination of v 2 and v 3 , Equation (4) follows for i = 1. 

4
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Now, we will express the coordinates φi in terms of the hyperbolic areas to see if we can get similar expressions to the
planar ones. According to (3) and (A.4), we derive the following expressions.

Proposition 4.2. The hyperbolic barycentric coordinates of v within T are given by:
A1 μ2 μ3 A2 μ1 μ3 A3 μ1 μ2
sin cosh cosh sin cosh cosh sin cosh cosh
φ1 = 2 2 2 , φ = 2 2 2 , φ = 2 2 2 ,
2 3
A b c A a c A a b
sin cosh cosh sin cosh cosh cosh sin cosh
2 2 2 2 2 2 2 2 2
where, A 1 , A 2 , A 3 , A are respectively the hyperbolic areas of the hyperbolic triangles [v , v 2 , v 3 ], [v 1 , v , v 3 ], [v 1 , v 2 , v], [v 1 , v 2 , v 3 ],
and a, b, c, μ1 , μ2 , μ3 are the geodesic edge lengths indicated in Fig. 2a.

Proof. It suffices to consider the case φ1 . For this, we use the hyperbolic trigonometry formula (A.4) and we get:
A1 μ2 μ3
det( v , v 2 , v 3 ) sin cosh cosh
φ1 = = 2 2 2 . 
det( v 1 , v 2 , v 3 ) A b c
sin cosh cosh
2 2 2

Remarks 4.1.

1. The expressions of the coordinate functions φi in Proposition 4.2 involve not only the areas as in the Euclidean plane,
but also other parameters of the triangle.
2. The functions φi satisfy the properties of smoothness, non-negativity and Lagrange property:
φi ( v j ) = δi j , where δi j is the Kronecker symbol.
3. On the geodesic boundary ( v 1 , v 2 ), for example, we have, for v ∈ ( v 1 , v 2 ),
sinh(c − dH2 ( v 2 , v )) sinh(dH2 ( v 1 , v ))
v= v1 + v 2,
sinh(c ) sinh(c )
where c is the geodesic edge lengths between v 1 and v 2 indicated in Fig. 2a.

5. Hyperbolic barycentric coordinates

Our goal in this section is to generalize the definition of planar barycentric coordinates to the setting of hyperbolic
polygons. A hyperbolic polygon is similar to a planar one except that the straight line segments are replaced by geodesics
connecting vertices.

Definitions 5.1.

1. A hyperbolic (or geodesic) polygon P = [v 1 , . . . , v n ] is a continuous curve on the hyperbolic plane formed by a sequence
of geodesics c i connecting v i to v i +1 , i ∈ {1, . . . , n} (see Fig. 2d).
2. A hyperbolic polygon P is said to be convex, if for each pair of distinct points x and y of P , there is a unique geodesic
[x, y] in P joining x to y.
3. The gnomonic projection v̂ i of v i ∈ H2 on the tangent plane T v H2 at v (see Fig. 3a) is defined by
vi
v̂ i = , (5)
− v , v i  L
where ., . L denotes the Lorentz inner product.

5.1. Planar barycentric coordinates



Let P̂ = v̂ 1 , . . . , v̂ n ⊂ R2 be a convex polygon with vertices v̂ i , n ≥ 3, in some anticlockwise ordering, and we treat the
vertex indices cyclically, that is, v̂ i +kn = v̂ i for i ∈ {1, . . . , n} and k ∈ Z (see Fig. 2b for notation). Any functions λ̂i : P̂ −→ R,
i = 1, . . . , n, will be called generalized barycentric coordinates (GBC) if they satisfy, for all v within P̂ :


n 
n
λ̂i ( v ) = 1 and λ̂i ( v ) v̂ i = v .
i =1 i =1

Now, we present the most known constructions of these generalized barycentric coordinates in 2D. For more details see
(Hormann and Sukumar, 2017; Floater, 2015). The beauty of all choices is that the weights ωi are positive and depend on
angles and distances only.

5
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 3. Construction of hyperbolic barycentric coordinates. (For interpretation of the colors in the figure(s), the reader is referred to the web version of this
article.)

5.1.1. Wachspress coordinates


The earliest generalization of barycentric coordinates to a polygon with n > 3 vertices goes back to Wachspress and EL
ωi Ai
(1975). These coordinates are given by λ̂i = n , where ωi = , and A i , C i are respectively the areas of the
 C i −1 C i
ωj
j =1

triangles v , v̂ i , v̂ i +1 , v̂ i −1 , v̂ i , v̂ i +1 (see Fig. 2b).
Later, Meyer et al. (2002) proposed a simple local formulation of these Wachspress coordinates, given by
ωi cot(βi −1 ) + cot(μi )
λ̂i = , where ωi = , (6)

n
r i2
ωj
j =1

where the angles βi −1 and μi are shown in Fig. 2b and ri =  v̂ i − v  is the Euclidean distance between the points v̂ i and
v.

5.1.2. Mean value coordinates


The mean value coordinates are given by the weight functions
α i −1 αi
ωi tan( ) + tan( )
λ̂i = , ωi = 2 2 , (7)

n ri
ωj
j =1

where αi−1 and αi are the angles shown in Fig. 2b and ri =  v̂ i − v .

5.1.3. Discrete harmonic coordinates


Discrete harmonic coordinates on convex polygons are given by the weight functions
ωi
λ̂i = , ωi = cot(μi−1 ) + cot(βi ), (8)

n
ωj
j =1

where μi−1 and βi are the angles shown in Fig. 2b.

5.2. Definition of hyperbolic barycentric coordinates

The hyperbolic barycentric coordinates can be computed using planar barycentric coordinates with respect to a polygon
in the tangent plane. We will follow the same strategy of Langer et al. (2006), by using the gnomonic projection associated

6
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

to the Lorentz inner product. For this, let P = [v 1 , . . . , v n ] be an arbitrary hyperbolic polygon on H2 . We assume the
vertices v i of this polygon to be given in a counterclockwise direction and we treat the vertex indices cyclically, that is,
v i +kn = v i for i ∈ {1, . . . , n} and k ∈ Z. Let v be a point within P . Without losing generality, by Proposition 3.1, we can
consider v = (0, 0, 1). For each i, denote by v̂ i the intersection point
of the line ( v i O ) (O = (0, 0, 0)) and the tangent plane
T v H2 at v (see Fig. 3a). The points v̂ i determine a polygon P̂ = v̂ 1 , . . . , v̂ n on the plane T v H2 .
If we denote by λ̂i the planar barycentric coordinates of v with respect to P̂ . By using (5) and (1), we define the
hyperbolic barycentric coordinates λi of v by


n
1
λi ( v ) v i = v , λi ( v ) := λ̂i ( v ), (9)
cosh(θi )
i =1

where θi = dH2 ( v , v i ) (see Fig. 3a). We remark that basically the same construction can be used to obtain planar barycentric
coordinates from hyperbolic barycentric coordinates. It follows that there is a bijective correspondence between planar
barycentric coordinates and hyperbolic barycentric coordinates.

n
Note that, since λ̂i ( v ) are positives, and cosh(x) ≥ 1, ∀x ∈ R, we deduce λi ( v ) ≤ 1.
i =1

5.2.1. Hyperbolic mean value coordinates


Planar mean value coordinates are given by (7). As shown in Fig. 3a, the distance r i = tanh(θi ) where θi = dH2 ( v , v i ). By
inserting these terms into (7) and (9) we obtain
ωi ωi
λi = = , (10)

n 
n α i −1 αi 
cosh(θ j ) ωj coth(θ j ) tan( ) + tan( )
2 2
j =1 j =1

where
α i −1 αi
tan( ) + tan( )
ωi = 2 2 .
sinh(θi )
The values λi will be called hyperbolic mean value coordinates.

5.2.2. Hyperbolic Wachspress coordinates



Planar Wachspress coordinates are given by (6). For triangles v , v̂ i −1 , v̂ i and v , v̂ i , v̂ i +1 as shown in Fig. 3a, the
distance r i = tanh(θi ). By using (A.3) we have:

cot(δi ) cot(γi −1 )
cot(μi ) = and cot(βi −1 ) = . (11)
cosh(θi ) cosh(θi )
If we insert (11) into (6) and by using (9), we get the condensed local formula:

ωi ωi cot(γi −1 ) + cot(δi )
λi = = , where ωi = . (12)

n 
n
cot(γ j −1 ) + cot(δ j ) sinh2 (θi )
cosh(θ j ) ω j
tanh(θ j ) sinh(θ j )
j =1 j =1

This formulation has the main advantage of being local: only the geodesic ( v , v i ) and its two adjacent angles γi−1 and δi
are needed. The values λi , in (12), are called hyperbolic Wachspress coordinates.

5.2.3. Hyperbolic discrete harmonic coordinates



Planar discrete harmonic coordinates are given by (8). For triangles v , v̂ i −1 , v̂ i and v , v̂ i , v̂ i +1 as shown in Fig. 3a, we
have r i −1 = tanh(θi −1 ) and r i = tanh(θi ). From (A.3) we get:

cot(δi −1 ) cot(γi )
cot(μi −1 ) = and cot(βi ) = . (13)
cosh(θi −1 ) cosh(θi +1 )
If we insert (13) into (8) and by using (9), we deduce the condensed local formula:
ωi ωi
λi = = , (14)

n 
n
cot(δ j −1 ) cot(γ j )
cosh(θ j ) ω j +
cosh(θ j −1 ) cosh(θ j +1 )
j =1 j =1

7
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 4. Tilling the Poincaré disk using intermediate barycentric coordinates between curves.

where
 
1 cot(δi −1 ) cot(γi )
ωi = + .
cosh(θi ) cosh(θi −1 ) cosh(θi +1 )
This formulation has the main advantage of being local. The values λi in (14), are called hyperbolic discrete harmonic coordi-
nates.
Note that, Lorentz transformations in Proposition 3.1, preserve the distances and angles. Then the hyperbolic mean
value, Wachspress and discrete harmonic are invariant by these transformations. In addition, they satisfy the properties
of smoothness and non-negativity inside hyperbolic convex polygon.

6. Barycentric coordinates on Poincaré disk

In this section, we will define the barycentric coordinates on Poincaré disk D from those of H2 .
Let Q = [u 1 , . . . , un ] be a geodesic polygon on D and u a point within Q . Let P = [v 1 , . . . , v n ] and v be their images by
the isometry −1 between D and H2 defined in Proposition 3.2 (see Fig. 3b). This isometry preserves all intrinsic angles
and distances.

Proposition 6.1. If we denote λi ( v ) the hyperbolic barycentric coordinates of v ∈ H2 with respect to P , the ones of u on D with
respect to Q are:

1 − u 2
φi (u ) = λi ( v ), i = 1, . . . , n . (15)
1 − u i 2

Proof. On H2 , we have


n
v= λi ( v ) v i . (16)
i =1


n 
n 
n 
n
Hence u = ( λi v i ). Set x = λi v 1i , y= λi v 2i and z = λi v 3i , where v ki denotes the k-coordinate of v i . By
i =1 i =1 i =1 i =1
(16), we get


n
v 1i v 2i 
n
1 + v 3i
u= λi ( , )= λi ( v i ). (17)
1+z 1+z 1+z
i =1 i =1

2 2 1 + v 3i 1 − ( v )2
Since ( v )2 − 1 = and ( v i )2 − 1 = , it follows that = . Consequently (17) becomes
1+z 1+ v 3i 1+z 1 − ( v i )2


n
1 − ( v )2
u= λi ( v i ).
1 − ( v i )2
i =1

8
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 5. Morphing sequence between two curves on the hyperbolic plane.

Then, we obtain the result. 

Now, by Proposition 6.1, we define the Poincaré disk coordinates φi of a point u within Q , by

1 − u 2 ωi
φi (u ) = , i = 1, . . . , n ,
1 − u i 2 
n
cosh θ j ω j
j =1

where θi is the hyperbolic distance between u and u i given in (2), and ωi is given by
αi−1 αi
tan( ) + tan( )
• ωi = 2 2 , for mean-value coordinates case,
sinh θi
cot(γi −1 ) + cot(δi )
• ωi = 2
, for the Wachspress coordinates case,
sinh (θi ) 
1 cot(δi −1 ) cot(γi )
• ωi = + , for the discrete harmonic coordinates case (see Fig. 3b for notations).
cosh(θi ) cosh(θi −1 ) cosh(θi +1 )

Note that the coordinates φi (u ) depend on the Euclidean norms of u and the u i , therefore they are not invariant by Möbius
transformations. Fig. 3b shows a polygon Q and a point u on the Poincaré disk and their Möbius transformations
n P (polygon
on red) and v. u and v don’t have the same coordinates. Note that also the coordinates φi verify i =1 φi ≤ 1.

7. Applications

In this paragraph, we will give some applications of hyperbolic barycentric coordinates and we imagine that other appli-
cations will be possible.

7.1. Hyperbolic mesh parameterization

Aigerman and Lipman (2016) gave a Orbifold method that generalize Tutte’s embedding one. It is a mesh parameteriza-
tion into the Poincaré disk D defined as a critical point of a Dirichlet energy with special boundary constraints.
Our method is in the same spirit as that of Tutte’s embedding (Tutte, 1963; Floater, 2003, 2015). It consists in computing
a hyperbolic parameterization of a surface-mesh with boundary by using barycentric coordinates which satisfy (18). The
choice of this kind of coordinates allows to define a parameterization with values into D .
Let S = ( V , E , T ) be an oriented connected disk-type triangular surface-mesh. We denote the set boundary vertices by
B and the set of its interior vertices by I . We let S ⊂ R3 be the union of the triangles in S. Then we define a hyperbolic
parameterization of S as a continuous piecewise linear mapping ψ : S −→ D . ψ maps each vertex, edge, and triangle of S
to a corresponding vertex, edge (geodesic), and hyperbolic triangle in D . Such a mapping is completely determined by the
points ψ( v ), v ∈ V . Two distinct vertices v and w in S are neighbors if they are the endpoints of some edge in S. For each
v i ∈ V , let N i = { j ∈ V , [ v i , v j ] ∈ E }.
The first step of the method is to choose any points ψ( v i ) ∈ D , for v i ∈ B such that the boundary polygon ∂ S of S is
mapped into a simple hyperbolic polygon ψ(∂ S) on the Poincaré disk (a polygon with no self-intersections). In the second
step, for v i ∈ I , we choose a set of strictly positive values λi j , for j ∈ N i , such that

9
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086


λ i j ≤ 1. (18)
j∈N i

An example of weights that achieve these conditions are

λ̂i j Cij
λi j = , where c i j = 1 + t , t ∈ [10−5 , 10−1 ],
ci j A i j + A i j −1

λ̂i j are the mean value coordinates and A i j , C i j are the signed area of triangles shown in Fig. 2c defined by

A i j = Area v i , v j , v j +1 , C i j = Area v j , v j −1 , v j +1 .

Then we let the points zi := ψ( v i ) in D , for v i ∈ I , be the unique solutions of the linear system of equations:

zi = λi j z j vi ∈ I. (19)
j∈N i

These equations force each interior point zi to be a convex combination of its neighboring points z j .
The linear system can be written in the form
 
zi − λi j z j = λi j z j , vi ∈ I, (20)
j∈N i ∩ I j∈N i ∩ B

or as the equation A X = U , where X = ( z j ) j ∈ I is the column vector of unknowns in some arbitrary ordering, U is the
column vector whose elements are the right-hand sides of (20), and the square matrix A = (ai j )i , j ∈ I has elements

⎨ 1 if j = i ,
−λi j if j ∈ N i ,

0 otherwise.

The existence and uniqueness of the solution to (19) follow from the structure of the matrix A. Namely that its off diagonal
elements are either zero or negative and each row of A is diagonally dominant (see Floater, 2015). Fig. 8 shows examples of
hyperbolic mesh parameterizations on D . Each mesh parameterization is a convex combination mapping into target domain
whose boundary was chosen to be a hyperbolic circle or hyperbolic square.

7.2. Hyperbolic deformation

One of applications of the hyperbolic barycentric coordinates is the deformation of images inside a hyperbolic polygon
by deforming the latter into another polygon. In other words, given two hyperbolic polygons P = [p 1 , . . . , pn ] and Q =
[q1 , . . . , qn ] in the Poincaré disk D . The hyperbolic barycentric mapping f : P −→ Q defined by


n 
n
f (v ) = λi ( v )qi , for v= λi ( v ) p i ,
i =1 i =1

deforms an image inside P into another inside Q . Fig. 7 shows examples of deformations shapes on Poincaré disk.

7.3. Morphing

In recent years, game developers have been interested in developing games in the hyperbolic space (Guimaraes et al.,
2015; Kopczynski et al., 2017). Shape morphing is one of the fundamental techniques to produce animation and videos
games. Little work that has been done in this direction, and there is no construction using hyperbolic barycentric coordi-
nates. Ikemakhen and Ahanchaou (2021) presents two algorithms for morphing between two closed curves in the hyperbolic
plane by using curvature or exterior angle interpolation method. These algorithms take a long time to generate intermediate
curves because of the complexity of non linear constraints (matrix 2 × 2 ∈ C ). Therefore, these methods can’t be applied for
real-time execution. In this section, we will give a rapid morphing method that reduces the runtime by using interpolation
1polygon1 P = [p 1 , . . . , pm ] on H or on D with a large0
2
of hyperbolic barycentric coordinates. For this, 0 we consider
a convex
number of vertices. And we consider = v 1 , . . . , v n and = v 1 , . . . , v n two hyperbolic discrete curves within P .
0 0 1

the source curve and 1 the target one. Without losing generality, we can assume that these curves are hyperbolic polygons
ordered anticlockwise with the same number of vertices n. Barycentric coordinates of 0 and 1 with respect to P can be
any valid positive barycentric coordinates for example hyperbolic mean value coordinates are the best choice. We denote
by λi , j (0) and λi , j (1) for 1 ≤ i , j ≤ n, the barycentric coordinates associated to 0 and 1 , with respect to P , respectively.
Intermediate barycentric coordinates are defined as the simple linear interpolations:

10
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 6. Morphing sequence between two curves on the Poincaré disk.



⎪ λ (t ) = (1 − t )λi , j (0) + t λi , j (1), (on D )
⎨ i, j
⎪ sinh((1 − t )θi ) sinh(t θi )

⎩ λi , j (t ) = λi , j (0) + λi , j (1), (on H2 )
sinh(θi ) sinh(θi )

for 0 ≤ t ≤ 1, where θi is the hyperbolic distance between v 0i and v 1i .


m
Note that we need to solve the linear system εi = j =1 λi , j (t ) v j , for every t of the interpolation sequence, where,
ε1 , . . . , εn define to be the solution of this system. Fig. 1 indicates morphing between wolf’s face and a bat using Poincaré
disk mean value coordinates.
Fig. 6 illustrates examples of morphing between curves on Poincaré disk. Fig. 4 shows hyperbolic tiling animation consists
to animate hyperbolic tiling, which produces a beautiful hyperbolic images (animations). Fig. 5 shows examples of morphing
between two curves in hyperbolic plane.
Note that the linear interpolation λi , j (t ) = (1 − t )λi , j (0) + t λi , j (1) is not working on hyperbolic plane because the points
ε1 , . . . , εn do not stay on the later. For solving this problem we use the linear interpolation defined in above. In addition,
the choice of initial points v 01 and v 11 is important to guarantee that the intermediate curves are also simple and have the
non-self-intersection property. It gives, sometimes, intermediate curves with self intersecting even if the source curve or the
target one is not self intersecting.

8. Conclusion and future work

In this paper, we have defined the notion of hyperbolic barycentric coordinates and gave their expressions with respect
to the vertices of a geodesic polygon. In particular, we have introduced hyperbolic Wachspress, mean value and discrete
harmonic that inherits many good properties of their planar counterparts. These hyperbolic coordinates are well defined and
easy to evaluate. We also determined the hyperbolic barycentric coordinates for the Poincaré disk model. With the same
way, we can define hyperbolic barycentric coordinates for all models of the hyperbolic plane like Klein disk, Poincaré upper-
half plane, etc. Furthermore, these coordinates will give the tools to tackle geometry processing and computer graphics

11
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Fig. 7. Deformation shape on the Poincaré disk.

Fig. 8. Examples of hyperbolic mesh parameterizations.

problems in hyperbolic space and kick off more work in this direction. However, it would be desirable to explore the space
of these coordinates systematically, similar to the analysis done in Floater et al. (2006). In this way, it would be possible
to select barycentric coordinates that are tailored to particular needs. In our future work, we are interested in developing
other applications of hyperbolic barycentric coordinates. And we are also interested to construct other spherical barycentric
coordinates and their applications.

CRediT authorship contribution statement

The two authors certify that they have participated sufficiently in the work to take public responsibility for the content,
including participation in the concept, design, analysis, writing, or revision of the manuscript.

Declaration of competing interest

The authors declare that they have no known competing financial interests or personal relationships that could have
appeared to influence the work reported in this paper.

12
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Appendix A. Euclidean and hyperbolic trigonometry

In (Ratcliffe et al., 1994; Janson, 2015), we find formulas regrouped together from Euclidean, spherical and hyperbolic
trigonometry. By exploiting these formulas, we will give some relationship between a hyperbolic triangle T := [v , v i , v i +1 ]
and its gnomonic projection T̂ = v , v̂ i , v̂ i +1 . We let E2 := T v H2 . We denote by r i , r i +1 , e i the edge-lengths of T̂ and αi ,
μi , βi its angles shown in Fig. 3a. Let θi := dH2 ( v , v i ), θi+1 := dH2 ( v , v i+1 ), li := dH2 ( v i , v i+1 ) the edge-lengths of T and
αi , δi , γi its angles shown in Fig. 3a.
For T and T̂ , we have the cotangent formulas:
r i − r i +1 cos(αi ) r i +1 − r i cos(αi )
E2 : cot(μi ) := , cot(βi ) := . (A.1)
r i +1 sin(αi ) r i sin(αi )
cosh(θi +1 ) sinh(θi ) − sinh(θi +1 ) cosh(θi ) cos(αi )
H2 : cot(δi ) := ,
sinh(θi +1 ) sin(αi ) (A.2)
cosh(θi ) sinh(θi +1 ) − sinh(θi ) cosh(θi +1 ) cos(αi )
H2 : cot(γi ) := .
sinh(θi ) sin(αi )
But, we have r i +1 = tanh(θi +1 ) and r i = tanh(θi ) (see Fig. 3a). If we inserting this terms in (A.1), we obtain:

tanh(θi ) − tanh(θi +1 ) cos(αi ) tanh(θi )


cot(μi ) = = − cot(αi ),
tanh(θi +1 ) sin(αi ) tanh(θi +1) sin(αi ) 
cosh(θi +1 ) sin(θi ) 1 cosh(θi +1 ) sinh(θi )
= − cot(αi ) = − cosh(θi ) cot(αi ) ,
cosh(θi ) sinh(θi +1 ) sinh(αi ) cosh(θi ) sinh(θi +1 ) sin(αi )
and
 
tanh(θi +1 ) − tanh(θi ) cos(αi ) 1 cosh(θi ) sinh(θi +1 )
cot(βi ) = = − cos(θi +1 ) cot(αi ) .
tanh(θi ) sin(αi ) cosh(θi +1 ) sinh(θi ) sin(αi )
Now, by comparing the above formulas and the ones of (A.2), we get
1 1
cot(μi ) := cot(δi ), cot(βi ) := cot(γi ). (A.3)
cosh(θi ) cosh(θi +1 )
Hyperbolic determinant formula (see Janson, 2015) is given by:
A θi θ i +1 li
det( v , v i , v i +1 ) = 4 sin cosh cosh cosh , (A.4)
2 2 2 2
where A is the hyperbolic area of the triangle T = [v , v i , v i +1 ] (see Fig. 3a).

References

Aigerman, N., Lipman, Y., 2015. Orbifold tutte embeddings. ACM Trans. Graph. 34, 1–12.
Aigerman, N., Lipman, Y., 2016. Hyperbolic orbifold tutte embeddings. ACM Trans. Graph. 35, 1–14.
Alfeld, P., Neamtu, M., Schumaker, L.L., 1996. Bernstein-Bézier polynomials on spheres and sphere-like surfaces. Comput. Aided Geom. Des. 13, 333–349.
Desbrun, M., Meyer, M., Alliez, P., 2002. Intrinsic parameterizations of surface meshes. In: Computer Graphics Forum. Wiley Online Library, pp. 209–218.
Floater, M., 2003. One-to-one piecewise linear mappings over triangulations. Math. Comput. 72, 685–696.
Floater, M.S., 2015. Generalized barycentric coordinates and applications. Acta Numer. 24, 161–214.
Floater, M.S., Hormann, K., Kós, G., 2006. A general construction of barycentric coordinates over convex polygons. Adv. Comput. Math. 24, 311–331.
Gillespie, M., Springborn, B., Crane, K., 2021. Discrete conformal equivalence of polyhedral surfaces. ACM Trans. Graph. 40, 1–20.
Gotsman, C., Gu, X., Sheffer, A., 2003. Fundamentals of spherical parameterization for 3d meshes. In: ACM SIGGRAPH 2003 Papers, pp. 358–363.
Guimaraes, F., Mello, V., Velho, L., 2015. Geometry independent game encapsulation for non-euclidean geometries. In: Proceedings of SIBGRAPI Workshop
of Works in Progress.
Harmer, M., 2003. Barycentric Coordinates on the Hyperbolic Plane. Technical Report. Department of Mathematics, the University of Auckland, New Zealand.
Hormann, K., Lévy, B., Sheffer, A., 2007. Mesh Parameterization: Theory and Practice.
Hormann, K., Sukumar, N., 2017. Generalized Barycentric Coordinates in Computer Graphics and Computational Mechanics. CRC Press.
Ikemakhen, A., Ahanchaou, T., 2021. Blending of hyperbolic closed curves. In: Computer Graphics Forum. Wiley Online Library, pp. 71–79.
Janson, S., 2015. Euclidean, Spherical and Hyperbolic Trigonometry. Notes.
Ju, T., Schaefer, S., Warren, J.D., Desbrun, M., 2005. A geometric construction of coordinates for convex polyhedra using polar duals. In: Symposium on
Geometry Processing. Citeseer, pp. 181–186.
Kopczynski, E., Celinska, D., Ctrnáct, M., 2017. Hyperrogue: playing with hyperbolic geometry. In: Proceedings of Bridges, pp. 9–16.
Langer, T., Belyaev, A., Seidel, H.P., 2006. Spherical barycentric coordinates. In: Symposium on Geometry Processing, pp. 81–88.
Meyer, M., Barr, A., Lee, H., Desbrun, M., 2002. Generalized barycentric coordinates on irregular polygons. J. Graph. Tools 7, 13–22.
Pinkall, U., Polthier, K., 1993. Computing discrete minimal surfaces and their conjugates. Exp. Math. 2, 15–36.
Ratcliffe, J.G., Axler, S., Ribet, K., 1994. Foundations of Hyperbolic Manifolds, Vol. 149. Springer.
Rustamov, R.M., 2010. Barycentric coordinates on surfaces. In: Computer Graphics Forum. Wiley Online Library, pp. 1507–1516.
Sheffer, A., Praun, E., Rose, K., 2006. Mesh parameterization methods and their applications. In: Foundations and Trends®. In: Computer Graphics and Vision,
vol. 2, pp. 105–171.
Tsui, A., Fenton, D., Vuong, P., Hass, J., Koehl, P., Amenta, N., Coeurjolly, D., DeCarli, C., Carmichael, O., 2013. Globally optimal cortical surface matching with
exact landmark correspondence. In: International Conference on Information Processing in Medical Imaging. Springer, pp. 487–498.

13
A.e. Bensad and A. Ikemakhen Computer Aided Geometric Design 95 (2022) 102086

Tutte, W.T., 1963. How to draw a graph. Proc. Lond. Math. Soc. 3, 743–767.
Wachspress, E.L., 1975. A Rational Finite Element Basis.
Yan, Z., Schaefer, S., 2019. A family of barycentric coordinates for co-dimension 1 manifolds with simplicial facets. In: Computer Graphics Forum. Wiley
Online Library, pp. 75–83.

14

You might also like