architile : create lattices with all 11 regular or uniform tilings
A small python library to generate 2D lattices based on repeating any of the 11 regular or uniform tilings. Uniform tilings are arrangements of regular polygons that cover a plane without gaps or overlaps, where each vertex has the same arrangement of polygons.
Features
- Get nodes and connectivity for any of the 11 regular or uniform tilings
- Tile into any rectangular area with options for the boundary (cut, cut exactly to bounding box, or fill with partial tiles along the boundary)
- Rotate the tiling pattern by any angle
All 11 regular or uniform tilings
Installation
Install from pypi:
pip install architile
or using uv instead:
uv add architile
Getting started
from architile import tiling, tile_into_rectangle
# Create a SnubSquare tiling
tile = tiling.SnubSquare(a=1.0)
# Tile it into a rectangle of width 5 and height 3 (origin at (0,0))
nodes, edges = tile_into_rectangle((0.0, 0.0, 5.0, 3.0), tile)
# Tile it into a rectangle and add edges along the boundary of the rectangle
# tiling with partial tiles along the bounding box
nodes, edges = tile_into_rectangle((0.0, 0.0, 5.0, 3.0), tile, boundary="cut_fill")
# tile it into a rectangle but put the pattern at an angle of 15 degrees
nodes, edges = tile_into_rectangle((0.0, 0.0, 5.0, 3.0), tile, theta=np.pi/12)
Disclaimer
This is a research project, and the code is provided "as is" without warranty of any kind. Use at your own risk.
Consider starring the repo if you find it useful⭐
Metadata
Release files for architile 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| architile-0.2.1.tar.gz | 10.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| architile-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.8 kB
Release files / architile-0.2.1.tar.gz
| Download URL | architile-0.2.1.tar.gz |
|---|---|
| Size | 10.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a34d9d4808006b7f8e642f5e5caebfa2cb5316af2249e64e4555e4a9fbed2dea
|
|
BLAKE2b-256 checksum How to use checksums |
ca821a0d8760d7e265181beaebf55d400297a7741f5d12059c8c908cc8fbd7b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / architile-0.2.1-py3-none-any.whl
| Download URL | architile-0.2.1-py3-none-any.whl |
|---|---|
| Size | 11.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c35a2f53a564ede2c6eac95f8b207dcd9b68fa0268c7ec29d3f743b3e226b238
|
|
BLAKE2b-256 checksum How to use checksums |
7aff598e50eb71ea978b09194aee32a71cbaf57e5961e99ec90f06c84bb69579
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|