用于创建和操作形状的工具。
项目描述
coxeter
欢迎使用 coxeter 的文档!coxeter Python 库提供了处理二维和三维中常见几何对象的工具。以 20 世纪几何学家 [Harold Scott MacDonald Coxeter](https://en.wikipedia.org/wiki/Harold_Scott_MacDonald_Coxeter) 命名,他因其在多面体工作而闻名,coxeter 特别关注多边形和多面体,但也支持各种标准曲线形状,如球体和椭球体。
该软件包强调以可变对象的形式处理形状,其几何属性可以通过基于属性的 API 访问。由于 coxeter 最初是为了支持各向异性纳米粒子的表示而出现的,许多形状支持计算物理属性(如形状因子和惯性张量),而不仅仅是纯几何属性。然而,该软件包的设计也考虑了更广泛的受众,并旨在支持对广泛几何量的精确计算,这些几何量在许多领域中都有用。
coxeter 的一些核心功能包括
常见形状库以支持轻松构建。
可变形状对象,可以以多种方式缩放以满足各种需求。
通过形状对象的 Python 属性立即访问形状的几何属性。
绘图功能,便于在二维和三维中可视化形状。
有关 coxeter 功能的更详细信息和如何使用它们的示例,请参阅 文档。
安装
安装 coxeter 的推荐方法是使用 pip 或 conda。
通过 pip 安装
要从 PyPI 安装软件包,请执行以下命令
pip install coxeter --user
通过 conda 安装
要从 conda 安装软件包,首先添加 conda-forge 通道
conda config --add channels conda-forge
添加 conda-forge 通道后,可以通过执行以下命令安装 coxeter
conda install coxeter
从源代码安装
首先执行以下操作
git clone https://github.com/glotzerlab/coxeter.git
cd coxeter
要安装 coxeter 和其他可选依赖项,请选择以下选项之一
pip install . # Install with no additional dependencies
pip install .[tests] # RECOMMENDED: Install with dependencies required to run pytests
pip install .[tests,doc] # Install all dependencies required to develop for coxeter
要求
Python >= 3.8
NumPy >= 1.19.0
SciPy >= 1.0.0
rowan >= 1.2.0
测试
该软件包目前已在 Python >= 3.8 的 Unix-like 系统上进行测试。使用 Github actions 在这些 Python 版本上执行持续集成测试。
首先,安装测试 coxeter 所需的软件包(如果尚未安装)
pip install -r tests/requirements.txt
要从仓库根目录运行包装单元测试,请执行以下命令
pytest
要使用 coverage 模块运行包装单元测试
pytest --cov=coxeter
构建文档
coxeter 的文档是用 reStructuredText 编写的,并使用 Sphinx 编译。要构建文档,首先安装 Sphinx 和其他所需软件包
pip install -r doc/requirements.txt
conda install -c conda-forge fresnel
然后,您可以使用 Sphinx 运行以下命令以创建实际的文档(PDF 或 HTML 格式)
cd doc
make html # For html output
make latexpdf # For a LaTeX compiled PDF file
open build/html/index.html
支持和贡献
此软件包托管在 GitHub 上。请在 问题跟踪器 上报告您发现的任何错误或问题。所有对 coxeter 的贡献都通过拉取请求欢迎!
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。