Hyperbolic-Honeycombs icon indicating copy to clipboard operation
Hyperbolic-Honeycombs copied to clipboard

Visualize 3d/4d hyperbolic honeycombs and sphere packings.

Prerequisite: You need to install Fragmentarium and run the .frag code in Fragmentarium.

This project contains several programs that visualize hyperbolic Coxeter groups of rank 4/5 and level 1/2/3. The curious users may refer to Chen and Labbé's paper for the math between hyperbolic geometry and ball packings.

Note: the rendering parameters in the code have been set to a moderate level, to render high quality images you may need to tweak with the following tabs on the right:

  • MaxRaySteps
  • FudgeFactor
  • Uncomment the #define USE_IQ_CLOUDS and #define KN_VOLUMETRIC in the header

2D hyperbolic tilings (rank = 3, level = 1)

Shadertoy live

From left to right: compact tiling, paracompact tiling (with ideal vertices on the boundary), non-compact tiling (with hyperideal vertices outside the space)

3D hyperbolic honeycombs (rank = 4, level = 1, 2)

(Images with "holes" on the boundary are of level 2)

2D circle packings (rank = 4, level = 2)

Shadertoy live

2D circles packings (rank = 4, level > 2)

In this case the circles will overlap:

Circle packings from platonic solids

In order (left to right, top to bottom): tetrahedron, cube, octahedron, dodecahedron, icosahedron.

Shadertoy Live

Non-reflective circle packings

These packings follow from a preprint of Kapovich and Kontorovich. Level not defined.

Extended Bianchi groups. Left: Bi23. Right: Bi31.

Groups from Mcleod's thesis. Left: Modified f(3,6). Right: f(3,14).

2D slices of 3D ball packings (rank = 5, level = 2)

Shadertoy live

3D ball packings (rank = 5, level >= 2)

Top row: level 2 groups give dense ball packings of the unit ball.

Second row: level > 2 groups have overlapping balls, they give fractal patterns if some of the balls are removed. Basically these are the fratals in the next section but moved to the Poincaré unit ball model.

Fractals from 3D ball clusters (rank = 5, level = 3)

Authors