跳转到主要内容

用于创建和操作形状的工具。

项目描述

coxeter

JOSS ReadTheDocs PyPI conda-forge

欢迎使用 coxeter 的文档!coxeter Python 库提供了处理二维和三维中常见几何对象的工具。以 20 世纪几何学家 [Harold Scott MacDonald Coxeter](https://en.wikipedia.org/wiki/Harold_Scott_MacDonald_Coxeter) 命名,他因其在多面体工作而闻名,coxeter 特别关注多边形和多面体,但也支持各种标准曲线形状,如球体和椭球体。

该软件包强调以可变对象的形式处理形状,其几何属性可以通过基于属性的 API 访问。由于 coxeter 最初是为了支持各向异性纳米粒子的表示而出现的,许多形状支持计算物理属性(如形状因子和惯性张量),而不仅仅是纯几何属性。然而,该软件包的设计也考虑了更广泛的受众,并旨在支持对广泛几何量的精确计算,这些几何量在许多领域中都有用。

coxeter 的一些核心功能包括

  • 常见形状库以支持轻松构建。

  • 可变形状对象,可以以多种方式缩放以满足各种需求。

  • 通过形状对象的 Python 属性立即访问形状的几何属性。

  • 绘图功能,便于在二维和三维中可视化形状。

有关 coxeter 功能的更详细信息和如何使用它们的示例,请参阅 文档

安装

安装 coxeter 的推荐方法是使用 pipconda

通过 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 的贡献都通过拉取请求欢迎!

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

coxeter-0.9.0.tar.gz (202.5 kB 查看哈希值)

上传时间 源代码

构建分发

coxeter-0.9.0-py3-none-any.whl (195.6 kB 查看哈希值)

上传时间 Python 3

由以下机构支持