310 likes | 487 Views
A Multi-resolution Topological Representation for Non-manifold Meshes. Leila De Floriani, Paola Magillo, Enrico Puppo, Davide Sobrero University of Genova Genova (Italy). Non-Manifold Multiresolution Modeling: Why Non-Manifold?.
E N D
A Multi-resolution Topological Representation for Non-manifold Meshes Leila De Floriani, Paola Magillo, Enrico Puppo, Davide Sobrero University of Genova Genova (Italy) Solid Modeling 2002
Non-Manifold Multiresolution Modeling: Why Non-Manifold? • Need to represent and manipulate objects which combine wire-frames, surfaces, and solid parts in CAD/CAM applications • Complex spatial objects are described by meshes witha non-manifoldandnon-regular domain • Non-manifold and non-regular meshes are generated by topology-modifying simplification algorithms Solid Modeling 2002
Non-Manifold Multiresolution Modeling: Why Multiresolution? • Availability of CAD models of large size • Need for a multiresolution representation to be able to extract selectively refined meshes • Our aim: multiresolution modeling for extracting adaptivemesheswith a complete topological description (to support efficient mesh navigation through adjacencies) Solid Modeling 2002
Our contribution • Non-Manifold Multi-Tessellation (NMT) • A compact data structure for a 2D instance of the NMT • A new scalable topological data structure for 2D simplicial complexes • Algorithms for selective refinement on the previous data structures Solid Modeling 2002
Related work • Topology-modifying simplification algorithms:e.g., Rossignac and Borrel, 1990; Garland and Heckbert, 1997; Popovic and Hoppe, 1997; El-Sana and Varshney, 1998. • Non-manifold data structures: Weiler, 1988; Gursoz et al., 1990; Yamaguchi and Kimura, 1995; Rossignac and O’Connor, 1990; Campagna et al., 1999; Lee and Lee, 2001. • Multiresolution models for unstructured triangle meshes:Hoppe, 1997; De Floriani et al., 1997; Xia et al., 1997; Gueziec et al., 1998; Luebke and Erikson, 1997; Klein and Gumhold, 1998; El-Sana and Varshney, 1999. Solid Modeling 2002
Background notions Two-dimensional simplicial complexes in 3D (triangle-segment meshes) Wire-edge: no triangle incident into it Triangle-edge: at least one triangle incident into it Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) • Extension of the Multi-Tessellation(De Floriani, Magillo, Puppo, 1997) to the non-manifold domain • Basic ingredients: mesh modification + dependency relation • Modification of a mesh: replace a set of elements E of with a new set E’ so that the result ’ is still a mesh Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) A modification: S S’ Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) Modification as a pair M=(M-,M+) where • M+: refinement modification defined by EE’ • M-: coarsening modification defined by E’E Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) • NMT: partially ordered set of nodes {M0, ….Mq}: each node Mi: refinement modification Mi+ and its inverse coarsening one Mi- • Partial order induced by dependency relation: by Mjdepends onMi iff some element introduced by Mi+ is deleted Mj+ • Minimum element in the order: creation of the coarsest mesh Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) Solid Modeling 2002
Non-Manifold Multi-Tessellation (NMT) Solid Modeling 2002
Selective refinement on a NMT • Selective refinement: extract a mesh from a NMT satisfying some application-dependent requirements (LOD criterion + maximal size) • Extracted meshes correspond to set S of modifications closed with respect to the partial order Solid Modeling 2002
Selective refinement: an incremental approach • Modify a previously extracted mesh • by adding necessary nodes • by removing superfluous nodes • Primitives on the current mesh: • mesh refinement (apply M+) • mesh coarsening (apply M-) Solid Modeling 2002
A data structure for a 2D instance of a NMT • NMT built through vertex-pair contraction: (v’,v”) v • Each NMT node M: vertex-pair contraction (M-) and vertex expansion (M+) • NMT nodes : encoding technique by Popovic and Hoppe (1997) • Partial order : implicit encoding technique by El-Sana and Varshney (1999) Solid Modeling 2002
A data structure for a 2D instance of a NMT • Total cost:32n bytes (where n is the number of vertices in the mesh at full resolution) • Around 90% of the cost of storing the mesh at full resolution (by encoding only connectivity information) • Less than half than the cost of storing the mesh at full resolution with connectivity and face adjacencies Solid Modeling 2002
A data structure for 2D simplicial complexes • For each vertex v: • all vertices to which v is connected through a wire-edge (Vertex-Vertex relation) • One triangle incident in v for each connected component (“fan”) of the link of v (partial Vertex-Triangle relation) Solid Modeling 2002
A data structure for 2D simplicial complexes • For each triangle t: • link to its three vertices (Triangle-Vertex relation) • for each edge e of t: two triangles if e is non-manifold,one triangle otherwise(partial Triangle-Triangle relation) Solid Modeling 2002
A data structure for 2D simplicial complexes • It can be traversed through edge adjacencies and around a vertex in optimal time (linear in the output size) • Scalability to manifold meshes: overhead of one byte per vertex wrt indexed data structure with adjacencies when applied to manifold meshes • More compact than specialization of existing non-manifold data structures to 2D simplicial complexes Solid Modeling 2002
Implementation of mesh refinement • Input: • : current mesh encoded in the previous data structure • M+: feasible vertex expansion v (v’,v”) as specified in the corresponding NMT node • Output:mesh ’ obtained from by expanding v Solid Modeling 2002
Basic operations in mesh refinement • Vertex into an edge (if v’ and v” were connected by an edge in the mesh at full resolution): v e=(v’,v”) • On wire-edges: • move extreme vertex: (w,v) (w,v’) • duplicate edge: (w,v) (w,v’) + (w,v”) • edge into triangle: (v,w) (v’,v”,w) Solid Modeling 2002
Basic operations in mesh refinement • On triangle-edges: • duplicate edge: (w,v) (w,v’) + (w,v”) • edge into triangle: (v,w) (v’,v”,w) Solid Modeling 2002
Basic operations in mesh refinement • On triangles: • move extreme vertex: (w1,w2,v) (w1,w2,v”) • duplicate triangle: (w1,w2,v) (w1,w2,v’) + (w1,w2,v”) Solid Modeling 2002
Some experimental results • NMT built through a “simple” simplification strategy based on collapsing the shortest edge • Choice of the simplification strategy affects the shape of the NMT • Results: • Number of wire-edges incident at a vertex < 4 • Number of “fans” of triangles incident at a vertex < 4 • Average number of “fans” of triangles incident at a vertex < 1.2 • Only 2% of the vertices are extremes of wire-edges Solid Modeling 2002
Selective refinement at work 21,648 triangles 0 wire edges 1,909 triangles 9 wire edges 3,509 triangles 7 wire edges 3,311 triangles 6 wire edges Solid Modeling 2002
Summary • NMT: a model for multi-resolution simplicial complexes in arbitrary dimension • A compact data structure for a 2D instance of a NMT • A compact and scalable topological data structure for 2D simplicial complexes • Algorithms for performing vertex-pair contraction and vertex expansion (basic ingredients for selective refinement) on the previous data structure Solid Modeling 2002
Current and future work • Our aim: extension of the work presented here to arbitrary dimensions • A mathematical framework for describing non-manifold simplicial complexes in arbitrary dimensions as assembly of simpler quasi-manifold components (De Floriani et al., DGCI, 2002). • An algorithm for decomposing a d-complex into a natural assembly of quasi-manifolds of dimension less or equal tod (on-going work). Solid Modeling 2002
Background notions • Manifold edge: exactly one or two triangles incident into it manifold edges non-manifold edge Solid Modeling 2002
Background notions • Manifold vertex: • No triangle incident in it and • one or two edges incident into it • OR • no wire-edges incident into it and • its incident triangles form a single fan manifold vertices non-manifold vertices Solid Modeling 2002
Selective refinement: basic primitives • On the partial order: • node insertion test • node removal test • dependencies retrieval • On the current mesh: • mesh refinement (apply M+) • mesh coarsening (apply M-) Solid Modeling 2002