I intend to use libigl booleanoperations on my meshes, like this:
igl::copyleft::cgal::mesh_boolean(VA, FA, VB, FB, igl::MESH_BOOLEAN_TYPE_MINUS, V, F);
As noted here:
mesh_boolean assumes the inputs are PWN http://www.cs.columbia.edu/cg/mesh-arrangements/#definitions which includes being oriented so that normals computed using right hand rule point outward
So, I have to make sure my meshes are PWN.
PWN: A (triangle) mesh inducing a piecewise constant generalized winding number field. These meshes may contain self-intersections, non-manifold elements, multiple components, degenerate faces, and even open boundaries (seams), so long as the winding number is still piecewise constant.
How can I make my meshes PWN?
Tried
I tried to fix my meshes by MeshFix. But it does much more than just making the meshes PWN. What other tools are available which I might be missing?