我们有一个 3D(体积)非结构化、可能是混合的、退化的不规则网格数据结构,我们能够生成(主要由六面体和一般多面体组成,使用 CSG 和 b-rep 的混合)和一组三角曲面,我们知道相交网格。我们想通过一组相交的三角面来分割体积网格,并相应地改变网格的拓扑结构。这些网格有多种用途,包括计算和可视化。此外,它们都代表的几何形状非常不规则和复杂,因此没有强烈考虑八叉树或八叉树。我们已经有一个实现来检测整个体积中的此类交叉点。三角形表面也可以在体积内相交,并将网格分割成另一个拓扑区域。
我们正在寻找的是一种算法来相应地分割网格。
你知道任何库(无论是什么语言,但如果是商业的,用 C++ 实现的)或可以处理这个问题的论文吗?
我们目前正在研究使用Marching 立方体,并已开始为此努力进行一些开发,但对该主题的现有实现或研究感兴趣。我们也一直在研究 CGAL,但它不符合我们的目的。我们知道 OpenFOAM 的名称,但我们不知道它是否可以帮助我们。
谢谢你的帮助!