检测封闭三角形网格中的开口/孔?

Moo*_*ody 5 algorithm geometry mesh

我想检测(并关闭)封闭网格的开口和孔/挖空部分.我知道,对于一个开放的网格,这可以通过寻找边界边(仅属于一个三角形边)按照说明进行这儿.

但是封闭网格怎么样,这样的边界边缘不存在?下面是一个示例图像.盒子顶部有一个开口,圆筒有一个完整的孔.有没有算法来检测这些东西?

在此输入图像描述

Dav*_*tat 1

这类问题在计算拓扑领域进行研究。为了将环面(或多环面)与球体区分开来,只需确定(用同源性的语言)是否存在不是边界的 1 环就足够了。假设您有一个可定向流形,这可以通过比较与相关边界运算符对应的矩阵的秩/无效性来完成。

为了修复这个漏洞,我的直觉是找到不是边界的最短周期,填充它,然后重复会给出合理的结果,但我不知道如何通过算法来做到这一点。

  • 我不会撒谎,我听不懂你说的任何话。但我想你已经给了我很多可以搜索和阅读的术语。 (2认同)