2016-12-31 55 views
0

我有以下问题(作为另一个问题的解决方案的一部分:))。我有一个三角形的网格,标有一些三角形。这是需要标记的三角形被划分为四个小的像这样:增加网格细节(额外tesselation)

/\    /\ 
/\   /__\ 
/ \ --> /\ /\ 
/______\  /__\/__\ 

这标志着三角形的分裂导致需要到邻近标之辈(其中一个标示为splittriangles,另一只是相邻,最后仍完整):

____    ____ 
    /\ |\   /\ /|\ 
/\ | \   /__\/ | \ 
/ \ | \ --> /\ /\ | \ 
/______\|___\  /__\/__\|___\ 

是否有一些C/C++库可用于它?此外,保持邻接数据也很有用,因此在分割后更新邻接数据会很好。即使图书馆没有完成这项工作,如果它提供了一个方便的界面来处理这类数据(三角形,邻接关系),这将会很好。

回答

-1

检出VTK C++库。 它有一个类vtkPolyData可以处理您提到的操作。特定成员函数来看看:

  • InsertNextLinkedCell
  • InsertNextLinkedPoint
  • ReplaceLinkedCell

阅读链接的文档页面,了解如何使用它。该类可以用于任何类型的单元格,而不仅仅是三角形。但是你可以限制你的使用只是三角形。