CSE 275, S07, Prof. T. J. Peters For program_3, restrictions on data sets: 0. Project onto the plane z = -100. (For the sample data already provided, a good choice would have been to project onto the plane z = -90. If you did project the posted data on another plane (say z = 0), you could see unexpected artifacts.) 1. This criterion applies between each pair of convex polyhedra: There will exist a plane of the form z = c, such that one polyhedron has all its z-values less than c and the other polyhedron has all its z-values greater than z (Note: This implies no ties in z across polyhedra, leading to a simple sorting criterion across polyhedron.) 2. Each convex polyhedron will consist of a collection of triangles, so there will be shared co-ordinates across those joined triangles, leading to ties in multiple z co-ordinates *within* each polyhedron. (Unfortunately, there may have been some mis-understanding of this circumstance in class, since I moved quickly from polyhedra to the polygons forming them.). However, then sort the polygons in each polyhedron according to the following criteria: Find all polygons who have the min-z value for the convex polyhedron. Within that collection of polygons with a specific min-z value, Sort by max-z value, with the smallest max-z value going to the top of the list For a given min-z value, if there are ties in max-z, the sorting can be arbitrary. (Why?) Continue to sort rest of polygons by next smallest min-z value, returning to the top of the algorithm and stopping when all faces have been sorted. 3. There will be no cycles across the faces.