TetGen 为模型中的空 chambers/holes 生成四元组

TetGen generates tets for empty chambers/holes in a model

我正在使用 tetgen 为我的研究生成网格。

我的模型内部有空腔。例如,大小为 (10, 10, 10) 的框内有一个大小为 (5,5,5) 的空框。见图:

问题是 tetgen 在空腔内生成四面体。为什么?有办法避免吗?

我尝试使用 -YY、-q、-CC、-c 和它们的组合,但都遇到了同样的问题,并且没有给出错误的见解。 (http://wias-berlin.de/software/tetgen/1.5/doc/manual/manual005.html).

我解决它的方法是创建一个 .poly 文件 (http://wias-berlin.de/software/tetgen/fformats.poly.html). I created a .poly file from a .off file (https://en.wikipedia.org/wiki/OFF_(file_format)),我可以从 OpenScad.

.poly 文件有4个部分,第3部分指定对象中的孔。 你需要告诉TetGen 你在物体上有洞的地方。 方法是 通过在 hole/chamber.

中指定一个点

可能的 .poly 文件如下所示:

第 1 部分 - 顶点:

40 3 0 0
0 0.2 0 1 
1 0.161803 0.117557 0 
...

第 2 部分 - 面孔:

72 0
1
3 0 1 2
1
3 1 0 3
...

第 3 部分 - 漏洞 <============== 我需要的

1
1 0 0 0.5   <=== this is a point, which I know is inside my hole/chamber



所以这是文件,没有任何中断,以防万一:

40 3 0 0
0 0.2 0 1 
1 0.161803 0.117557 0 
...

72 0
1
3 0 1 2
1
3 1 0 3
...

1
1 0 0 0.5