如果我有一个任意多面体顶点的坐标数组,是否有一个库(最好是在python中)可以计算该多面体的表面积和体积。这些计算的方法显示为established,但我找不到已实现此功能的库。更具体地说,如果我给出常规octahderon的坐标
arr1 = [[1,0,0],[-1,0,0],[0,1,0], [0,-1,0], [0,0,1], [0,0,-1]],
代码必须返回我的卷
4/3(公式:sqrt(2)* a ^ 3/4)
答案 0 :(得分:0)
只要多面体是凸的(这是我目前感兴趣的),scipy就有一个可以计算面积和体积的ConvexHull
类。例如,上述场景的音量可以按如下方式计算
import numpy as np
from scipy.spatial import ConvexHull
arr1 = [[1,0,0],[-1,0,0],[0,1,0], [0,-1,0], [0,0,1], [0,0,-1]]
arr1 = np.asarray(arr1)
volume = ConvexHull(arr1).volume
print volume
以上代码生成 1.33333
的正确音量