我正在尝试使用mayavi和tvtk来计算非结构化网格的体积。我的想法是通过Delaunay3d过滤器对点云进行四面体优化。然后,我需要以某种方式从这个数据集中提取四面体,同时忽略其他单元类型,如直线和三角形。但是我如何才能做到这一点呢?到目前为止,我的Python代码如下所示:
import numpy as np
from mayavi import mlab
x, y, z = np.random.random((3, 100))
data = x**2 + y**2 + z**2
src = mlab.pipeline.scalar_scatter(x, y, z, data)
field = mlab.pipeline.delaunay3d(src)我可以使用field-object来检索多面体顶点吗?
提前谢谢。弗兰克。
发布于 2014-01-13 20:53:57
这是最好的方法吗?scipy.spatial也有delaunay功能。最近与我自己一起工作过,我会注意到scipy是一种更轻的依赖,更容易使用,并且有更好的文档记录。请注意,任何一种方法都可以在点云的凸包上工作,这可能不是您想要的。scipy版本还允许您轻松地计算边界基元以及其他内容,这可能对进一步的处理有用。
https://stackoverflow.com/questions/21091177
复制相似问题