1. Introduction
In the modern era, we are increasingly collecting vast amounts of information about the Earth; many zettabytes of data are already available, and more is being collected daily [
1,
2]. The use of this data ranges from sophisticated experiments and analysis to daily use by the public to ensure their decisions are well informed. In order to perform these tasks, data usually needs to be combined across varying attributes and scales. For example, combining high-resolution global weather patterns, the position and geometry of business assets and the likelihood of political instability to assess insurance risk. Thus, we need a tool for integrating, analyzing, simulating, distributing and visualizing this data so that it can be leveraged to solve real-world problems [
2].
As a result, the idea of a Digital Earth (DE) was pursued. In the early stages of DE, many ideas from traditional cartography were extended to a digital setting, and virtual representations of traditional flat maps became the standard [
3]. In a map-based DE, the Earth data is projected to a flat map using any one of the multiple taxa of map projections, many of which are still in use today [
4]. Analysis can then be performed in the planar setting using conventional Euclidean methods. However, projecting the Earth to a flat map introduces significant and unavoidable distortion, which introduces errors in analysis [
5].
Globes are an alternative to flat maps that produce far less distortion [
3]. While physical globes are not easily scaled and difficult to manufacture, a DE provides an opportunity to address some of the shortcomings of physical globes [
3]. With a globe, analysis can be performed directly in spherical space producing accurate results. However, these analyses may be prohibitively computationally expensive. In some cases, techniques may not even exist to do the analysis directly in spherical space. Because of this, many DE systems still use single flat maps as their underlying representation [
3].
Motivated by the desire to reduce distortion and faced with the challenge of efficient computation, polyhedral approximations of the Earth have been explored. Approximating the surface of the Earth with a convex polyhedron does not completely eliminate distortion, but significantly reduces it while allowing each face of the polyhedron to be treated as a flat map [
6]. More faces in the polyhedron allow for a closer approximation of the Earth and a further reduction in distortion [
6].
A Discrete Global Grid System (DGGS) is a polyhedron based DE where the surface of the Earth is discretized into mostly regular, multi-resolution cells. These cells are uniquely indexed and used as placeholders for geospatial data associated with the corresponding location on the Earth. A DGGS is generally comprised of four parts:
Initial Polyhedron: The coarsest discretization of the Earth into cells
Projection: A mapping between each point on the Earth and a corresponding point on the polyhedron (see
Figure 1)
Indexing: Assigning a unique identifier to each cell
Refinement: A way to hierarchically subdivide coarse cells into finer ones creating multi-resolution cells
Despite a considerable amount of research into how to best choose these components, every DGGS is developed with certain properties in mind with tradeoffs made to achieve specific goals. One such property is that the DGGS cells should have equal area at all supported resolutions. Additionally, the cells should be as compact as possible (roughly should take up a large area of their bounding circle). In combination, these two properties allow the cells to represent geospatial data more accurately. The DGGS should also allow for efficient operations, including point queries, neighbourhood queries and hierarchy traversal. In conjunction with the choice of the initial polyhedron, a projection (and its inverse) is needed from the sphere to this polyhedron. The projection chosen should preserve the above properties for cells of the polyhedron and their spherical counterparts at all resolutions. It should also reduce the distortion created in the resulting planar cells as much as possible.
The choice of which initial polyhedron to use is motivated by many different factors and has led to multiple lists of ideal properties to satisfy [
7,
8]. Platonic solids and some Archimedian solids, such as the truncated icosahedron, are currently used as the initial polyhedron for constructing DGGS [
2]. The Platonic solids are good choices because the faces are equal area and compact. Additionally, the symmetry and regularity of these polyhedra allow for efficient queries. For most of the platonic solids, several projections have been developed that preserve the equal-area criterion. These projections are typically constructed by a piecewise mapping carefully defined on each face of the initial polyhedron. While being able to preserve area, it is impossible to simultaneously remove angular and shape distortion (see
Figure 2). The amount of distortion produced depends not only on the type of piecewise mapping but also on how closely the faces of the polyhedron approximate the surface of the Earth. Therefore, it is advantageous to choose a polyhedron with more faces that will reduce distortion [
6]. Another important characteristic of DGGS projections is their computational cost, as many important DGGS operations utilize the projection. For example, in order to render data across the surface of the Earth, the data must be inverse projected from the polyhedral data structure where it is stored to its position on the globe. All points of the geometry being used to render the globe need this operation performed to produce an accurate rendering, which necessitates that this operation is efficient. These projections can be a significant bottleneck within a DGGS, and work has been done to increase their speed [
9,
10]. An important challenge for DGGS research is to find new initial polyhedra and associated area-preserving projections that further reduce angle and shape distortion while maintaining fast and efficient DGGS operations.
To address this challenge, we introduce a new DGGS that uses a Disdyakis Triacontahedron (DT) as the initial polyhedron (see
Figure 1). The DT is a Catalan solid with 120 identical triangular faces where all vertices lie on a sphere. This polyhedron was chosen because it has the most faces of any Catalan solid. In this convex, spherical polyhedron, all adjacent faces are identical mirror images of each other along their adjoining edge, and the faces are compact. When the initial polyhedron is changed to a DT, other components of the DGGS must be revisited and potentially modified. The DT face shapes are different from the shapes in platonic solids, and existing projections either do not work or must be modified to accommodate this change. For example, Snyder equal-area projection can be used for the truncated icosahedron, but it expects regular pentagonal and hexagonal faces which are not present in the DT [
13]. To create an equal-area projection for the DT, we modify the equal-area vertex-oriented great circle projection proposed by van Leeuwen and Strebe [
14]. We use 1:4 longest edge bisection triangle refinement to conserve the compactness of the triangles during refinement [
15]. To support efficient operations, we develop an indexing scheme inspired by Atlas of Connectivity Maps (ACM) [
16]. Using some simple modular arithmetic, we address geospatial queries on the grid with constant time algorithms and implement important operations such as neighbourhood queries, parent/child relationships and point queries.
In order to evaluate our DGGS, we compare the angular distortion across the faces between a DGGS using an icosahedron as the initial polyhedron and our new DGGS. We show that our DGGS reduces the mean angular distortion by almost a factor of four while maintaining accurate and efficient queries and without significantly sacrificing desirable DGGS properties. In summary, the main contributions of this work are the creation of a novel DGGS system that preserves area and maintains fast queries while also decreasing angular distortion.
3. Creating DT DGGS
For reducing the distortion created from projection, we introduce the DT as the initial polyhedron for our DGGS. However, this change requires us to modify other DGGS components in accommodation. We provide these components below.
3.1. Initial Polyhedron
In order to reduce angular distortion, we should use an appropriate initial spherical polyhedron—with a higher number of faces than current choices—and a corresponding area-preserving projection. The projection developed by van Leeuwen and Strebe is a good choice because it is efficient and has low angular distortion. However, this projection requires that faces of the initial polyhedron be mirror images of each other along their adjoining edge. Only certain spherical polyhedra can satisfy this criterion. These include the Platonic solids, some of the Catalan solids, and the bipyramids. The bipyramids have the advantage of allowing for any number of faces, but they have poor compactness properties for large numbers of faces (see
Figure 4). The Catalan solids allow for more faces than the Platonic solids, so they are the preferred choice.
Of the Catalan solids, the one with the most faces that best approximates a sphere is the DT—having 120 identical scalene triangle faces—making it the best choice to satisfy our goals (see
Figure 1). Since the faces are identical, any projection that is applied individually to each of the faces is guaranteed to be continuous along the edges of the faces because it maps regions identically on identically shaped faces. Additionally, the faces have equal spherical areas that, when combined with an equal-area projection, satisfy the equal-area criterion. When we use a DT as the initial polyhedron, we lose some compactness of the cells. One measure for the compactness of a spherical region is the Zone Standard Compactness [
7], which requires the region’s spherical area and perimeter as well as the radius of the sphere. The maximally compact triangle is an equilateral one; the compactness of a DT triangle is about 88% that of an equilateral triangle in an icosahedron (0.727246:0.824773) for a sphere of radius 1.
3.2. Equal Area Projection
The properties of the DT make it the ideal candidate for adaptation to the Slice and Dice projection presented by van Leeuwen and Strebe as it has a low angular distortion but requires the mirror symmetry property possessed by the DT [
14]. The symmetry and regularity of the mesh ensure that we can have efficient queries, and thus do not lose the speed and simplicity of operations of traditional DGGS.
3.3. Slice and Dice Area Preserving Projection
To project points on the Earth to and from points on the DT, the Slice and Dice projection presented by van Leeuwen and Strebe requires some minor modification [
14]. As described in Reference [
14], in order to map a spherical triangle
to a planar triangle
(see
Figure 5) with constant areal scale, the two triangles are divided into infinitesimal cells. As long as the cells are mapped to each other with a constant areal scale everywhere on the triangles, the mapping is equal area. In the first step of the projection (see
Figure 5), a point
P within the spherical triangle
is to be projected onto an unknown point
within the planar triangle
. In order for the projection to be equal area, the spherical triangle is partitioned through the point
P and a corresponding partitioning through the projected point
is created such that areal scale is maintained for the pieces to be projected. To accomplish this, the centre of projection is chosen to be vertex
B in the spherical triangle. Great circle arcs emanating from vertex
B and crossing great circle arc
at point
D in the spherical triangle will be projected to straight lines emanating from vertex
and crossing edge
at point
in the planar triangle. The great circle arc emanating from
B through point
P cuts the spherical triangle into two parts with areas
and
. As shown in Reference [
14], the spherical and planar divisions are proportioned to the linear parameterization of
where
and
are shown in
Figure 5:
In the second step of the equal area projection (see
Figure 6), angular distances
x and
y defined by the point
P are solved for from the great circle arc emanating from vertex
B. Distances
and
along our previously constructed line
are determined such that there is constant area scaling for all projected points:
Since this is true for all possible points P on the spherical triangle, this means infinitesimal regions bounded by those points will also have the same area.
For triangles in the DT, our procedure has two minor modifications to the method presented by van Leeuwen and Strebe. First, their procedure cuts equilateral triangles in platonic solids into six pieces to be projected separately, but this step is unnecessary for the DT. Because four DT faces correspond to a face of the rhombic triacontahedron (RT), we can use the vertex in the center of each rhombus as the center of projection for each face. Second, they assume a right angle inside of their triangles, allowing for some simplification in the calculation of spherical areas and spherical angles; however, triangles in the DT do not have this right angle.
3.4. Inverse Projection for the DT
In order to perform all DGGS operations, the projection should include an inverse mapping from points on the polyhedron back to the corresponding point on the sphere. Ideally, this inverse mapping should be efficient and accurate to allow for operations where many points need this performed. Rendering is one such operation where the planar geometry of the cells needs to be inverse projected to transfer data from the polyhedral domain to the corresponding locations on the Earth. At high resolutions, this operation could be required on hundreds of thousands of points. In the publication by van Leeuwen and Strebe, they do not provide the inverse to their projection, and it turns out that it is non-trivial. We have found a closed-form inverse for the Slice and Dice projection, which we present below. To simplify notation, we use for the angular distance between X and Y, two vertices on a spherical triangle.
For the inverse projection, a given point
on the planar triangle is mapped to the corresponding point
P on the spherical triangle (see
Figure 5). Our construction for the inverse mapping is based on reversing steps from the forward projection. We do this by first solving for
D such that the ratio in Equation (
1) holds, and then solving for
P such that the ratio in Equation (
2) holds. Our method for finding
D, and then
P is based on the approach from Lee and Mortari [
15], where we look for the angular distance
, and
x such that we can perform two spherical linear interpolations (SLERP) [
47]. First, a SLERP from point
A towards point
C by an angular distance of
and then from point
B towards point
D by an angular distance of
x, after which we have found point
P exactly. In order to accomplish this, we simply need to calculate angular distances
and
x.
To start, we solve for the line emanating from
through
meeting the planar triangle at point
. Solving for point
is simply the intersection of two coplanar lines. Now define the ratio of the area of triangles
to
as
From here, we solve for the great circle arc that cuts the spherical triangle into the corresponding proportionate areas. The solution to a similar problem is presented by Lee and Mortari [
15]. However, their solution is limited to the case where
. Here we extend their approach to solve for point
D given
. Since
D is coplanar to
A and
C it can be expressed using SLERP with unknown angular distance
as follows:
In order to find
, we need to find angles
r and
d from
Figure 5. First, notice that by using Girard’s spherical excess formula and our triangle area ratio
m, we can solve for the sum of angles
r and
d as follows
Rearranging we get
We can express
using the spherical law of sines in terms of
Y and
r as follows:
To find
r, we use the same procedure as Lee and Mortari in Reference [
15]. Their derivation is repeated below with our notation. Using the law of spherical cosines on triangle
we get
Expanding the left-hand side using the angle difference identity for cosine and solving for
r we get
We can now back substitute
Y and
r to find angular distance
using Equation (
8) and find point
D using Equation (
4).
Once we have the point
D using Equation (
4), we now need to find angular distance
x to complete the inverse. To do this, we can solve for
with
Then we can use the known lengths
and
as well as
to solve for
x by rearranging Equation (
2) to get
The position of point
P along the great circle
can be calculated by reusing Equation (
4) as follows:
In conclusion, we have derived a closed-form inverse projection for the equal-area projection presented by van Leeuwen and Strebe [
14]. Our solution relies on simple trigonometric functions without the need for iterative non-linear equation solves, as is the case with the Snyder Equal Area Projection [
13]. This allows for efficient rendering of the Earth.
3.5. Refinement and Indexing
To define a multi-resolution grid system using the DT, we need a refinement method. There are many different refinement choices for a DGGS, which are detailed in Reference [
2].
Figure 7 shows some common choices for refining triangles. Since the initial triangles of a DT are not equilateral, and we wish to preserve area and compactness, it is necessary to use a refinement such as (a), (c) or (d) in
Figure 7. The 1:3 refinement shown in (b) is disadvantageous because recursive applications cause an unbounded reduction in compactness as subdivision level increases.
Figure 7 (c) and (d) do not have this problem making them more common for DGGS refinement. For both refinements (c) and (d), it is necessary to determine the midpoint of the edges denoted by
M,
N and
P. Notice that the edge denoted by
in refinement (c) is replaced by
in refinement (d), where
M is the midpoint of the longest edge of the original triangle.
In order to index our grid system for efficient queries, we use Atlas of Connectivity Maps (ACM) [
16]. ACM is a method developed for semi-regular meshes resulting from iterative refinements (e.g., subdivision surfaces). In this method, the irregularity of the base mesh is handled differently from the regular structure resulting from iterative refinement. For example, a half-edge data structure [
48] can be used for the irregular connectivity of the base mesh while the regular connectivity resulting from refinement can be handled using simple algebraic relationships detailed in Reference [
16].
For the DT grid system, we use a specific scheme for the 30 faces corresponding to faces of the RT (see
Figure 8); these 30 faces are indexed in a spiral arrangement. The connectivity between these faces is stored in a 30 × 30 array where each entry
stores the transformation between face
i and face
j if they are adjacent. For indexing the cells inside each rhombic face, we take advantage of the regular pattern generated by refinement. For example, applying traditional 1:4 refinement to the DT allows for the connectivity map in Reference [
16] to be used to efficiently index the resulting cells (see
Figure 9). For a composite 1:4 refinement, we propose a modification of row-major ordering. In this method, triangles within rhombuses are indexed using blocks of Z shapes, as illustrated in
Figure 10. To differentiate between different subdivision levels, the resolution level of that cell is concatenated to the cell index. This scheme was chosen for its simplicity and the efficiency of the resulting queries.
5. Results
For evaluation of our new DGGS, we compare the angular distortion of Slice and Dice projection onto faces of a DT to Slice and Dice projection onto faces of an icosahedron DGGS. To measure angular distortion, we use the fact that an infinitesimal circle on the Earth will be projected to an infinitesimal ellipse on our planar cell. The major and minor axis (
a and
b) of the projected ellipse quantifies the amount of angular distortion
d created by the projection according to the following formula [
14].
Geometrically, the quantity d is the maximum difference in angle (from to ) between a point on a circle and the corresponding point on the ellipse with major axis a and minor axis b. The correspondence between the circle and the ellipse is made by the scaling transformation that maps the circle onto the ellipse. This change in angle is the local change in bearing necessary to navigate between points on the planar map.
To estimate the distortion created by Slice and Dice projections, we distribute many tiny circles across our spherical triangle (see
Figure 15). We project these circles onto the planar triangle and find our major and minor axes. Using
d in equation
18 provides an estimate of the distortion at all the sampled circle centers. The mean and standard deviation of the angular distortion for both the DT and the icosahedron can be found in
Table 1.
To visualize the distribution of the distortion, we have mapped the absolute values of
d to greyscale values shown in
Figure 16. In this figure, we have mapped the maximum absolute value of
d found in the icosahedron to white and the minimum absolute value of
d found in the icosahedron to black. We have used the same range of distortion values to greyscale mapping for both the icosahedron and the DT; we see in
Figure 16 that the entire face of the DT is black indicating a significant improvement.
Figure 17 demonstrates the output of our system and shows the impact of low angular distortion on the resulting grid geometry. The resolution of this grid is five, and it partitions the Earth into 30,720 triangles.
Additionally, we have implemented a fully functional DGGS using the proposed methods.
Figure 18 shows a visualization of temperature across the Earth using two years of monthly data, linearly interpolated between months and bilinearly interpolated onto the vertices of the DT. We can query and visualize this data across the entire Earth in real-time.