Skip to main content

Manipulation and analysis of geometric objects on the sphere

Project description

spherely

Tests Docs Coverage

Python library for manipulation and analysis of geometric objects on the sphere.

Spherely is the counterpart of Shapely (2.0+) for manipulation and analysis of spherical geometric objects. It is using the widely deployed open-source geometry library s2geometry via the library s2geography which provides a GEOS compatibility layer on top of s2geometry.

This library is at an early stage of development.

Requirements

Additional requirements when building spherely from source:

(Note: C++11 or C++14 should work too but we have no plan to maintain compatibility with those older standards)

Installation

There is no pre-compiled package available at the moment. See the section below for instructions on how to setup a development environment and build / install spherely from source.

Setting up a development environment using conda

After cloning this repo, create a conda environment using the ci/environment.yml file with the required dependencies:

$ conda env create -f spherely/ci/environment.yml
$ conda activate spherely-dev

Build and install s2spherely:

$ cd spherely
$ python -m pip install . -v --no-build-isolation

Note that you can specify a build directory in order to avoid rebuilding the whole library from scratch each time after editing the code (requires scikit-build-core v0.2.0+):

$ python -m pip install . -v --no-build-isolation --config-settings build-dir=build/skbuild

Run the tests:

$ pytest . -v

Spherely also uses pre-commit for code auto-formatting and linting at every commit. After installing it, you can enable pre-commit hooks with the following command:

$ pre-commit install

(Note: you can skip the pre-commit checks with git commit --no-verify)

Using the latest s2geography version

If you want to compile spherely against the latest version of s2geography, use:

$ git clone https://github.com/paleolimbot/s2geography
$ cmake -S s2geography -B s2geography/build -DCMAKE_CXX_STANDARD=17 -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX
$ cmake --build s2geography/build
$ cmake --install s2geography/build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spherely-0.0.1.tar.gz (230.8 kB view details)

Uploaded Source

Built Distributions

spherely-0.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

spherely-0.0.1-cp313-cp313-macosx_14_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.13 macOS 14.0+ ARM64

spherely-0.0.1-cp313-cp313-macosx_13_0_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.13 macOS 13.0+ x86-64

spherely-0.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

spherely-0.0.1-cp312-cp312-macosx_14_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.12 macOS 14.0+ ARM64

spherely-0.0.1-cp312-cp312-macosx_13_0_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.12 macOS 13.0+ x86-64

spherely-0.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

spherely-0.0.1-cp311-cp311-macosx_14_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.11 macOS 14.0+ ARM64

spherely-0.0.1-cp311-cp311-macosx_13_0_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.11 macOS 13.0+ x86-64

spherely-0.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

spherely-0.0.1-cp310-cp310-macosx_14_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.10 macOS 14.0+ ARM64

spherely-0.0.1-cp310-cp310-macosx_13_0_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.10 macOS 13.0+ x86-64

File details

Details for the file spherely-0.0.1.tar.gz.

File metadata

  • Download URL: spherely-0.0.1.tar.gz
  • Upload date:
  • Size: 230.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for spherely-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a7804321d93b1deec4ccc0be6e1312d590c2946eb1bbcc1a93cff62ca02644fc
MD5 537ee9228fafc43d7228a0034d6defc1
BLAKE2b-256 01307e7e51f57f6a069b33ec4d31e9d27a5f80665d859a61461a6f82ee9364ad

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a60eb24aa40bdf9b3fc491f417adf35aeae4b7a0d763623faa7fa2d16f351f34
MD5 cbe7ab4e084d20ab296666af719173f4
BLAKE2b-256 a90924b9f4f9f208e67024cea0bc031ede4fcf03d68655a72f318a5e2ca3b7f7

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4eb7dab77fe26d3c32376ece49edd187325f4897e0e17a7e5529303b4aae4a11
MD5 0ff3d78d19e4ced4d023375d5e21da60
BLAKE2b-256 7331291fb02b5250ca40b4ac5f8a1cff44e7d7b34e965e7feac125b53a378603

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0c464855551440a7b108f42952810dd84ed71049b6f541b242adc185bc77d394
MD5 aa476f6b2e08f6b6e76776c7464e600b
BLAKE2b-256 c08b8967ed4f75b5580835d6f8cd6db756bda2af220537313da30d55b44e309e

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d830d8c152fd2869b2dc406d790c2506936489873785507c6191b7eb344825cc
MD5 c111fabdd547283d58199d1a69223a49
BLAKE2b-256 3c3a800940f3cdb9de8184b9e4d17ad91d03b9f3e1d077e23d4db79144051051

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 795dc9983b17395b1841cfc071bb2ef27e4209fc29a30272ccc9817954307aeb
MD5 d05401cdbb8b30c839bd9a7d82ffa6be
BLAKE2b-256 460284f27f5d900f7db25bcf61b8563df03dfa593f47c542b231ad89313755fc

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e859e1c54d60032b5c49ed44254009828f7c8bd9622eead7a19d7ecd5dcce4f2
MD5 3d107cbf96802491ebc353ae20a6b14b
BLAKE2b-256 5701e21faf53118ca1b25c32c0aa2cc724106d843bec5e3acff3a5ba08663e12

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 89df5824a9c9da234715de86c03b5e152d9da90f2a682200bf6af9b736edbe53
MD5 83cd1b716cb8d25de79a913767653e5b
BLAKE2b-256 788b72fcd3196e784c8342da260207af5469931785c806a9f889c45a6835b9a1

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4789a306b83dbe25eb880dbdc326eede31ac4bba2b874f1cbed43c9f1d2225d9
MD5 2b35be3553bdb683ad339f82a682af54
BLAKE2b-256 6c98aaa4504bde414d41184cb2e338c7ccdaf73f43959156a3e45a46e44dcfe6

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 06f55a0808716f71eb51afe4111bfd7cc5bab0555308a8897d00e223bcec6227
MD5 7bd8c2665ec8f8ea1d8d3bcf0a51c9da
BLAKE2b-256 a741465532b434180682f2e2824956faff448b6ed478e1d5ff13318e11d7db5a

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d08cebb093685c47fd6c3947cc495fd2e67f73eedb37fd8f0811aa3071d6b5ab
MD5 49108318a72447357e22ca5298aedbb2
BLAKE2b-256 48f20a2272997133e3796454c7f5c91f6e96df224e664b27777745a1695f4ae4

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 e1432d6ea3ec4046799dd2138e19e614dd0de9b90ff9f4db5837e37c743cefdb
MD5 7711981157d9a092204aa7f339a6d788
BLAKE2b-256 3a95118fc98eb8b1a52948bd1c2f59d140c683c4ae60e850587e4676350eccb6

See more details on using hashes here.

File details

Details for the file spherely-0.0.1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for spherely-0.0.1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 60968ff03fa61c22cdd00dd3b71cbe49f2c5c98261412162437f22e71c2adc01
MD5 6c13ba3d33e213377d16b80224788206
BLAKE2b-256 c8210b51bf27ffd3a4ef9456251743703d60b384c216f2e34f21b09975c14d2b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page