【发布时间】:2022-11-11 12:25:14
【问题描述】:
我正在处理可以通过以下方式加载的 stl 数据:
# load a file by name or from a buffer
mesh = trimesh.load_mesh('./dummydata.stl')
# preview mesh in a pyglet window from a terminal, or inline in a notebook
mesh.show()
这会创建一个 3D 对象,由于机密性问题而无法公开。但是,为了这个问题,我构建了一个示例对象。 Example image。 正如您在图片中看到的,有一个“外部对象”,即盒子和一个内部对象,即球体。
我的目标是提取球体并创建一个单独的网格对象,它只是球体。
目前我的方法是在(许多)不同的 z 水平上对网格对象进行切片,因此您将获得如下图 Slice- no circle 或 Slice - with circle 中的 2D 切片。然后我可以使用以下方法提取每个切片的圆形多边形:
slice2D.polygons_closed[1]
然而,这给我留下了很多 2D 多边形而不是 3D 网格对象。
我的问题是:如何将这些 2D 多边形组合成 3D 网格对象。 (或者我如何以不同的方式解决我的问题?)
【问题讨论】: