160 likes | 375 Views
Decimation of Triangle Meshes. William J. Schroeder, Jonathan A. Zarge, William E. Lorensen Presented by Alden Chew Serban Porumbescu. What is the Problem?. Want to visualize data interactively Too many triangles Too little hardware. High Level Approach.
E N D
Decimation of Triangle Meshes William J. Schroeder, Jonathan A. Zarge, William E. Lorensen Presented by Alden Chew Serban Porumbescu
What is the Problem? • Want to visualize data interactively • Too many triangles • Too little hardware
High Level Approach • Characterize the local vertex geometry and topology • Evaluate decimation criteria for vertex removal • Triangulate the resulting hole
Vertex Classification • Feature edge: dihedral angle greater than user specified feature angle • An interior edge vertex is a vertex with two feature edges • A corner has one, three, or more feature edges
Vertex Removal • Based on user specified distance to plane or distance to edge (boundary vertex)
Vertex Removal • Removal of vertex creates a hole in the mesh • Triangulate • Removal of feature edge: • Create a new feature edge • If two non-overlapping loops can be created, triangulate the two loops
Triangulate Resulting Hole • Triangulate using a recursive loop splitting procedure • The stencil of the hole is called a loop • Loops are divided into two parts by a split line • Split line • A line between two non-adjacent vertices in the loop
Split Plane • Split plane • The plane orthogonal to the average plane through a split line • Used for half space comparisons
Loop Splitting Procedure • Need to create two non-overlapping loops • A valid loop is entirely on one side of the split plane …. • If the loop contain more than three vertices, recurse • If the loop has three vertices, form a triangle
Split Line Selection • Many split lines to choose from • Choose line that maximizes the aspect ratio • The aspect ratio is the minimum distance of the loop vertices to the split plane divided by the length of the split line
Special Cases • Want to preserve topology • Don’t create duplicate triangles and triangle edges