Situation: I am using Open3D python,The mesh generation algorithm ( like ball pivot, poisson reconstruction ) are dependent on normal direction. I used estimate_normals and orient_normals_consistent_tangent_plane methods on the point cloud to make sure vertex normals are facing outward. After generating the mesh, i want to check if the face normals are facing outward. If not, I need to flip it.
**Help **: how to represent "outward" condition for a face normal, mathematically. I can get face normal from mesh.triangle_normals.
**context **: I am rookie engineer, so Any links to theory or examples would help me understand. open3d solution is also welcome :)
I looked into open3d documentation to check for existing methods. But no methods exist.
I've run into a similar issue with my own tesselations and wrote about it in a blog here and code here. Here's the algorithm I devised to fix the issue. The two requirements of this algorithm are that you know the correct direction of one of the triangles in the mesh and that neighboring triangles share a common vertex.
The algorithm is as follows:
The resulting mesh should have all the triangles facing the correct direction!