Python的3D数学库

21 投票
9 回答
17003 浏览
提问于 2025-04-15 15:01

我在找一个可以用在Python里的3D数学库,或者是有Python接口的库。

这个库需要能处理旋转、平移、透视投影,基本上所有的3D数学操作都要支持。

我不想要的是那种专门用来在屏幕上绘图的库,网上找了好几个小时,结果发现的3D库都是为了在屏幕上渲染东西。我根本不需要任何可视化的功能,我只想输入一些x、y、z坐标,然后得到对应的屏幕上的x、y坐标。

如果有可视化的库也没关系,只要它能在不渲染任何东西到屏幕上的情况下使用就行。

Python里有没有这样的库呢?

编辑:请不要推荐scipy/numpy,因为它们不是专门针对3D数学的,而是针对一般数学的。如果我想自己构建库,它们看起来是很不错的工具,但我并不想这样。谢谢。

9 个回答

5

transformations.py

这是一个库,用来计算4x4的矩阵,主要用于处理3D空间中的一些操作,比如平移、旋转、反射、缩放、剪切、投影、正交化,以及叠加3D坐标。它还可以在旋转矩阵、欧拉角和四元数之间进行转换。此外,这个库还包含一个Arcball控制对象和一些函数,用于分解变换矩阵。

作者: Christoph Gohlke http://www.lfd.uci.edu/~gohlke/ 加州大学欧文分校荧光动力学实验室

5

OpenCV - Python接口可以处理你提到的所有操作。

我听说SciPy在这方面也很不错,不过我只用过OpenCV。

4

试试gameobjects吧——这是一个数学库,里面有用于处理矩阵和向量的Python类,还有一些变换的方法。我觉得它能提供你大部分(如果不是全部的话)需要的功能,而且它是纯Python写的,所以如果你需要的话,可以自己修改。

撰写回答