CS3451: Project 3

Use the Tmesh software provided.
Implement and test the procedure "boolean rayHitTriangle(pt P, vec T, pt A, pt B, pt C) {};" , which returns true when a ray (P,T) intersects a triangle (A,B,C).
Use it to implement a procedure that orient consistently all the triangles of the mesh.  Demonstrate it by color-coding the triangles that it flips.
Edit the data file manually to change the orientation of desired triangles and verify that you rprocedure works.
Use the interactive .l and .r operators to test that the O-table is correctly computed for the resoluting oriented mesh.
On your PPP report the outline of both procedures and show images demonstrating that they work.
Discuss on your PPP when this approach will fail and suggest remedies for each failure case.

Extra Credit: Imlepement a pocedure that identifies the connected components of the mesh and assigns a component-color to the triangles of each component. Provide a biref outline of the approach and show an image of the result, indicating how many shells it has identified.

Extra Credit: Fix the mesh-orienting procedure so that it avoids rays that hit a vertex or edge.