According to the documentation, calling delete (delete_face()
, delete_vertex()
, delete_edge()
) on mesh elements only deletes them internally by setting the appropriate status flag. These elements are permanently deleted only when the garbage collector is called. My question is, is it possible to restore deleted and not yet garbage-collected items, in a targeted manner? I guess it is possible to restore all items marked for deletion by resetting their Status attribute, but is it possible to undelete a specific face/vertex/edge by their handle?
It appears to me that simply resetting the Status attribute of the items to be undeleted is not enough because all the connected elements that were set deleted because of the deletion of the item have to be undeleted as well.
Side note: I'm using the term undelete instead of restore because the latter refers to restoring from file in the documentation.
Edit: I am also interested in ways to efficiently undelete all items marked for deletion at once. Smart taggers provide an O(1) way to untag all elements. Is there a way to undelete all elements with O(1) efficiency?