1

我需要生成薄壁物体的四面体(体积)网格。想想瓶子或塑料碗等物体,它们大多是空心的。FEM 模拟需要体积网格。对象外表面的表面网格可从测量中获得,例如使用 octomap 或 KinectFusion。因此顶点间距是比较规则的。物体的内表面可以通过移动内部的所有点从外表面计算出来,因为壁厚是已知的。

到目前为止,我已经考虑了以下方法:

  1. 创建一个 3D Delaunay 三角剖分(这将破坏现有的曲面网格),然后移除所有不在两个原始曲面之间的四面体。对于此检查,可能需要创建 2 个表面的隐式表面表示。

  2. 创建一个 3D Delaunay 三角剖分并使用 Alphashapes 移除“内部”(在空心空间中)或“外部”(外表面)的四面体。

  3. 关闭外部和内部网格并将它们分别作为外壳和孔加载到 tetgen 中。

这些方法对我来说似乎有点不雅,而且它们仍然存在一些缺陷。我可能需要几个库/工具。对于 1 和 2,可能仍需要 tetgen 或其他 FEM 网格划分工具来创建条件良好的四面体。有没有人有更直接的解决方案?我想这应该也是3D打印中的一个常见问题。

关于工具/库,到目前为止,我已经研究过 PCL、meshlab 和 tetgen。他们似乎都只完成了部分工作。理想情况下,我只想使用开源库并避免使用需要手动干预的工具。

4

2 回答 2

0

我看到的问题是纵横比。

单层四面体不会很好地再现壳或弯曲行为。穿过厚度的单个元素已经需要大网格。为了保持纵横比和角度可接受,放置多个可能会破坏银行。

在这种情况下,我更喜欢砖或厚壳元素而不是四面体。我认为建模会更容易,行为也会更忠实于物理学。

于 2014-04-28T15:15:17.727 回答
0

一种方法是:

  • 创建表面点的三角形网格,
  • 对于给定的厚度,将该表面挤压(移动)到内部。这会产生墙壁的体积(三棱柱)网格,
  • 每个棱镜可以分成三个四面体。
于 2014-04-06T08:45:53.593 回答