Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Compute polygons for hyperbolic tilings
ResourceFunction["HyperbolicTiling"][p,q,n] gives a list of polygons representing the hyperbolic tiling of p,q, and n. |
"Primal" | polygons are positioned around a center coordinate (default) |
"Dual" | the corresponding dual polygons for the hyperbolic tiling |
Generate two layers of hyperbolic tiles, where each polygon has four sides and five polygons meet at each vertex:
In[1]:= | ![]() |
Out[1]= | ![]() |
Visualize the result:
In[2]:= | ![]() |
Out[2]= | ![]() |
Generate three layers of seven-sided polygons where three polygons meet at each vertex:
In[3]:= | ![]() |
Out[3]= | ![]() |
A slightly more complex tiling:
In[4]:= | ![]() |
Out[4]= | ![]() |
Compare the "Primal" and "Dual" methods:
In[5]:= | ![]() |
Out[5]= | ![]() |
In[6]:= | ![]() |
Out[6]= | ![]() |
In[7]:= | ![]() |
Out[7]= | ![]() |
In[8]:= | ![]() |
Out[8]= | ![]() |
Get the tiles:
In[9]:= | ![]() |
Out[9]= | ![]() |
Get the individual polygons:
In[10]:= | ![]() |
Animate the incremental drawing of the polygons:
In[11]:= | ![]() |
Out[11]= | ![]() |
Use the HyperbolicPoincarePolygon resource function to convert the polygons to Poincaré polygons:
In[12]:= | ![]() |
In[13]:= | ![]() |
In[14]:= | ![]() |
Out[14]= | ![]() |
Wolfram Language 14.0 (January 2024) or above
This work is licensed under a Creative Commons Attribution 4.0 International License