2016-12-31 60 views
2

我使用Meshlab从点云生成的闭合表面网格。我需要获得一个体积网格,以便它不是空心物体。我无法弄清楚。我需要获得一个* .stl文件进行打印。任何人都可以帮助我获得体积网格? (我宁愿一个简单的解决方案,而不是一个复杂的算法)。表面网格到体积网格

回答

0

给定一个面向水密的表面网格,可以导出一个oracle函数,用于确定查询线段是否与表面(以及其中)相交:从一个端点拍摄光线并使用偶数规则(在空间索引网格的面)。

然后可以使用这个oracle函数来应用体积网格划分算法来镶嵌内部,通常是Marching Cubes或Delaunay方法的变体(参见CGAL文档中的3D Surface Mesh Generation)。然而,初始表面不会完全保留。

据我所知,MeshLab只支持曲面网格物体,所以不太可能为此提供一个现成的滤波器。卷网格器套件应该提供这种功能(例如TetGen)。

0

这个问题并不十分清楚。我试图给出不同的解释。根据你的最后一句话:

我需要得到一个*·STL文件进行打印

这意味着你需要一个3D模型,这是确定的使用3D打印机正在制造,即您需要一个水密网格。一个水密网格是一个网格,以明确的方式定义一个体积的内部并对应于一个封闭的网格(无边界),2-流形(主要是每个边缘完全由两个面共享),并且没有自相交。

MeshLab提供了可视化边界,非流形和自交的工具。修正它们可能有许多不同的方式(删除非多样性和填孔或剧烈的重新网格划分)。