我有一个使用Meshlab从点云生成的闭合曲面网格。我需要为它获得一个体积网格,以便它不是一个空心物体。我无法弄明白。我需要一个* .stl文件进行打印。任何人都可以帮助我获得体积网格吗? (我更喜欢简单的解决方案,而不是复杂的算法)。
答案 0 :(得分:0)
给定一个定向的水密表面网格,可以导出一个oracle函数,用于确定查询线段是否与曲面相交(以及在哪里):从一个端点射出一条射线并使用奇偶规则(在空间之后)索引网格的面。)
然后可以使用此oracle函数应用体积网格划分算法来细分内部,通常是Marching Cubes或基于Delaunay的方法的变体(请参阅CGAL文档中的3D Surface Mesh Generation)。然而,初始表面将不会完全保留。
据我所知,MeshLab仅支持表面网格,因此不太可能为此提供现成的过滤器。但是,卷网格程序包应该提供此功能(例如TetGen)。
答案 1 :(得分:0)
问题并不完全清楚。我尝试给出不同的解释。根据你的上一句话:
我需要一个* .stl文件进行打印
这意味着您需要一个可以使用3D打印机制作的3D模型,即您需要防水网格。防水网格是一种网格,它以明确的方式定义体积的内部并且对应于闭合的网格(无边界),2-流形(主要是每个边缘由两个面完全共享),并且没有自交叉。
MeshLab提供了可视化边界,非流形和自相交的工具。可以通过许多不同方式对其进行校正(删除非流形和孔填充或剧烈重新网格化)。