我有以下问题(作为另一个问题解决方案的一部分:))。我有一个三角芯,上面标有一些三角形。需要将标记的三角形拆分为这样的四个较小的三角形:
/ /
/ /__
/ --> / /
/______ /__/__
明显的三角形的分裂也导致需要将三角形的分裂也与标记的三角形相邻(一个是标记的,另一个是相邻的,最后一个保持完整):
____ ____
/ | / /|
/ | /__/ |
/ | --> / / |
/______|___ /__/__|___
是否有一些C/C 库可以对其有用?此外,保留邻接数据很有用,因此在拆分后更新该邻接数据是很不错的。即使图书馆不执行工作,这也很好,如果它提供了一个方便的接口来使用此类数据(三角形,邻接)。
查看VTK C 库。它有一个类VTKPolyData,可以处理您提到的操作。特定的成员功能要检查:
- insertnextlinkedcell
- insertnextlinkedpoint
- 替换链接
阅读链接的文档页面以了解如何使用它。该类可用于任何类型的单元格,而不仅仅是三角形。但是您可以将用途限制为三角形。