【问题标题】:Tetrahedralization from surface mesh of thin-walled object薄壁物体表面网格的四面体化
【发布时间】:2014-05-17 05:50:04
【问题描述】:

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

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

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

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

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

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

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

【问题讨论】:

  • 为什么不用shell元素?

标签: mesh triangulation point-cloud-library finite-element-analysis meshlab


【解决方案1】:

一种方法是:

  • 创建曲面点的三角形网格,
  • 将该表面挤压(移动)到内部,以获得给定的厚度。这会产生墙壁的体积(三棱柱)网格,
  • 每个棱镜可以分成三个四面体。

【讨论】:

  • 与 OP 的方法 #3 相同。
  • @CamilleGoudeseune 两种方法都产生相似的结果,但是这种方法避免了一般的 tetgen 网格划分,因为棱镜的分割是“静态”方式。
【解决方案2】:

我看到的问题是纵横比。

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多