跳转到主要内容

球面上几何对象的操作和分析

项目描述

spherely

Tests Docs Coverage

Python库,用于球面上几何对象的操作和分析。

Spherely是Shapely(2.0+)的对应库,用于球面几何对象的操作和分析。它通过库s2geography使用广泛部署的开源几何库s2geometry,该库在s2geometry之上提供GEOS兼容层。

这个库处于开发早期阶段。

需求

从源码构建球面时的附加需求

(注意:C++11或C++14也应该可以工作,但我们没有计划与这些较老标准保持兼容性)

安装

目前没有可用的预编译包。请参阅下文有关如何设置开发环境以及从源码构建/安装spherely的说明。

使用conda设置开发环境

在克隆此存储库后,使用ci/environment.yml文件以及所需依赖项创建conda环境

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

构建和安装s2spherely

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

请注意,您可以指定一个构建目录,以避免在每次编辑代码后从零开始重新构建整个库(需要scikit-build-core v0.2.0+)

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

运行测试

$ pytest . -v

Spherely还使用pre-commit在每次提交时进行代码自动格式化和检查。安装后,您可以使用以下命令启用pre-commit钩子

$ pre-commit install

(注意:您可以使用git commit --no-verify跳过pre-commit检查)

使用最新的s2geography版本

如果您想针对最新的s2geography版本编译spherely,请使用

$ 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

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面