usingGlobalGrids, GeoMakie, CairoMakiegrid =ISEA3H()cells_r0 = [ISEA3HCell(i, Int[]) for i in0:19]fig =Figure()ax =GeoAxis(fig[1,1], dest ="+proj=ortho +lon_0=-50 +lat_0=30")poly!(ax, cells_r0, color=(:black, .4))ep =surface!(ax,-180..180, -90..90,zeros(axes(rotr90(GeoMakie.earth()))); shading = NoShading, color =rotr90(GeoMakie.earth()))translate!(ep, 0, 0, -1)fig
The DGG (Discrete Global Grid) module provides parametric grid types inspired by DGGRID. Grid configuration is encoded in type parameters, enabling zero-cost dispatch across different projections, apertures, and topologies.
Number of child cells per parent (currently 3 is implemented)
Topology
:hex, :tri, :diamond
Cell shape (currently :hex is implemented)
This gives 12 preset grid types, each with a corresponding cell type:
Grid
Cell
Description
ISEA3H
ISEA3HCell
ISEA aperture-3 hexagonal
ISEA4H
ISEA4HCell
ISEA aperture-4 hexagonal
ISEA7H
ISEA7HCell
ISEA aperture-7 hexagonal
ISEA43H
ISEA43HCell
ISEA mixed 4-3 hexagonal
ISEA4T
ISEA4TCell
ISEA aperture-4 triangular
ISEA4D
ISEA4DCell
ISEA aperture-4 diamond
FULLER3H
FULLER3HCell
Fuller aperture-3 hexagonal
FULLER4H
FULLER4HCell
Fuller aperture-4 hexagonal
FULLER7H
FULLER7HCell
Fuller aperture-7 hexagonal
FULLER43H
FULLER43HCell
Fuller mixed 4-3 hexagonal
FULLER4T
FULLER4TCell
Fuller aperture-4 triangular
FULLER4D
FULLER4DCell
Fuller aperture-4 diamond
Note
Currently only aperture-3 hexagonal grids (ISEA3H, FULLER3H) are fully implemented. Other apertures and topologies are defined in the type system but not yet functional.
Cell Index Layout
Each cell wraps a single UInt64 encoding the base face (0-19) and hierarchical digits:
Aperture
Bits/digit
Max digits
Max resolution
3, 4
2
29
29
7, 43
3
19
19
Cell count at resolution \(r\) with aperture \(A\): \(\;20 \cdot A^r\)
At resolution 0, there are 20 base cells corresponding to the 20 faces of the icosahedron. All cells are hexagons (no pentagons in the face-based addressing scheme).