如何在不创建多边形的情况下从 openmesh 中删除三角形?

How to delete triangles from an openmesh without creating polygons?

当我使用 OpenMesh::TriMesh_ArrayKernelT<> 在 OpenMesh 中调用 mesh.delete_face(face_handle) 时,我得到了超过 3 个顶点的面,可能是删除面创建的孔周围的多边形。

我怎样才能避免这种情况,只在洞周围得到一个边界,而没有多边形?我有点惊讶 TriMesh 可以包含多边形面。

调用垃圾回收解决了这个问题。

我有点惊讶,因为我原以为您需要在删除和添加面之后调用垃圾回收,这样您就不会删除可能会丢失句柄指向的某些对象的中间配置。