
Thanks Alex, I agree that this is a workaround for avoiding the complex faces in this case. However this isn't the only reason a face could be complex. I also don't think it's unreasonable to expect to be able to add and delete these faces without a segfault, it would actually be preferable if the add operation throws if it cannot be cleanly added. Cheers, Bruce On Sat, Oct 9, 2021, 7:27 AM Dielen, Alexander < alexander.dielen@rwth-aachen.de> wrote:
Hi,
The problem is caused by degenerate triangles with duplicate vertices.
It can be avoided by checking each face for duplicates:
if len(set(face)) != 3: continue
With this check, there should be no need to delete anything.
Best, Alex
On 4. Oct 2021, at 17:35, Bruce Jones <bruce.jones@markforged.com> wrote:
Hi all,
I am facing an issue dealing with complex faces in openmesh via the python interface. I have a mesh I am loading via trimesh (hard requirement at this time), and using that to build an openmesh mesh. This mesh (and others i work with) is degenerate in the sense that it has complex faces, and trying to ignore that problem leads to the python process crashing (either hanging or segfault/bus error depending on the mesh). If i proactively try to delete the complex faces immediately after they are created, I get a seg fault. I have attached a minimum working example complete with degenerate STL, I would appreciate any assistance debugging this and/or working around it!
Cheers, Bruce
<benchy_fail.zip>_______________________________________________ OpenMesh mailing list -- openmesh@lists.rwth-aachen.de To unsubscribe send an email to openmesh-leave@lists.rwth-aachen.de
https://lists.rwth-aachen.de/postorius/lists/openmesh.lists.rwth-aachen.de