发布于 2020-10-23 07:41:34
循环器使用网格连通性(如前所述)来遍历元素的邻域。当使用通常的API (例如delete_vertex、delete_edge、delete_face)删除网格元素时,这些元素被标记为已删除,并且更新连接性,从而无法再访问已删除的元素。通过构造,循环器不能到达已删除的元素,因此不需要区分跳过/非跳过循环器。
与循环器不同,迭代器不使用网格连接,而只是对所有元素的列表进行迭代(在调用garbage_collection之前,元素可以包含已删除的元素)。因此,存在迭代器的跳转/非跳过变体,即排除或包含已删除的元素。
发布于 2020-10-22 18:05:52
实际上,在默认情况下,OpenMesh似乎正是这样做的。标记为删除的元素被视为不存在循环器。
https://stackoverflow.com/questions/64471733
复制相似问题