在Python中好的几何图书馆?

我正在寻找一个良好的和发达的图书馆几何操纵和评价在Python中,如:

  • 评估二维和三维两条线(如果有的话)
  • 评估平面和线之间的交点或两平面之间的交线
  • 评估线和点之间的最小距离
  • find通过一个点的平面的正交
  • 旋转,平移,镜像一组点
  • find由四个点定义的二面angular

我有一个所有这些操作的纲要书,我可以实现它,但不幸的是,我没有时间,所以我会喜欢一个图书馆,这样做。 大多数操作对于游戏的目的是有用的,所以我确信这些function中的一些可以在游戏库中find,但是我不希望包括我不需要的function(例如graphics)。

有什么build议么 ? 谢谢

也许看看SymPy 。

Shapely是stream行的GEOS库周围不错的python包装。

我发现pyeuclid是一个非常简单的通用欧几里德math软件包。 虽然图书馆可能并不完全包含您提到的问题,但其基础设施足够好,可以轻松地自行编写这些问题。

CGAL也有Python绑定 。

几何简单的类点线平面运动在~300线,只使用numpy; 看一看。

我真的很想回答这个问题,上面的问题让我不满意。 不过,我刚刚遇到pythonocc这看起来不错,除了缺乏良好的文档,仍然有一些麻烦安装(还没有pypi兼容)。 最后一次更新是4天前(2011年6月19日)。 它包装了具有大量几何和build模function的OpenCascade 。 从pythonocc网站:

pythonOCC是Python编程语言的3D CAD / CAE / PLM开发框架。 它提供了先进的拓扑和几何操作,数据交换(STEP,IGES,STL导入/导出),2D和3D网格划分,刚体仿真,参数化build模等function。

[编辑:我现在已经下载了pythonocc,并开始通过一些例子工作]

我相信它可以执行所有提到的任务,但是我发现它使用起来很不直观。 它几乎完全由SWIG包装器创build,因此,对命令的反省变得困难。

您可能对OpenOpt项目http://openopt.org中的Python模块SpaceFuncs感兴趣;

SpaceFuncs是二维,三维,N维几何build模的工具,具有参数化计算,数值优化和求解几何方程组的可能性

Python Wild Magic是另一个SWIG包装的代码。 然而,它是一个游戏库,但是您可以操纵SWIG库文件以从Python API中排除任何不需要的graphics内容。