Metadata-Version: 2.3
Name: sphedron
Version: 0.1.0
Summary: Polyhedral meshes on the unit sphere
Author: Ayoub Ghriss
Author-email: dev@ayghri.com
Requires-Python: >=3.10
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Provides-Extra: plot
Requires-Dist: cartopy (>=0.23.0,<0.24.0) ; extra == "plot"
Requires-Dist: numpy (>=2.0.1,<3.0.0)
Requires-Dist: scipy (>=1.14.0,<2.0.0)
Requires-Dist: shapely (>=2.0.5,<3.0.0) ; extra == "plot"
Requires-Dist: trimesh (>=4.5.3,<5.0.0)
Project-URL: Homepage, https://github.com/ayghri/sphedron
Description-Content-Type: text/markdown

# Sphedron: Polyhedral meshes on the sphere

A python package for creating refinable polyhedral meshes on the sphere. The refinement is either rectangle or triangle based.

The was developed as a component of Graph Neural Networks (GNN) for Geospatial ML projects, and it's designed with that in mind.

The package implements:

- Icosphere 
- Octasphere
- Cubesphere
- Uniform Latitude/Longitude 

It is also straighforward to extend it to include other triangular/rectangular meshes.

You can find code examples here:

If you're looking to implement your own rectangle/triangle based mesh:

For the full documentation:

## Requirements
- python >= 3.10
- numpy
- scipy (nearest neighbor query)
- trimesh (radius query)

Optional dependencies:
- cartopy (plots)
- shapely (land mask feature)

## Install


To understand the inner workings of a mesh and how its refined, refer to
[Icosphere Mesh Documentation](./docs/icosphere.md)

