Piecewise Convex Contouring of Implicit Functions Tao Ju
- Slides: 21
Piecewise Convex Contouring of Implicit Functions Tao Ju Scott Schaefer Joe Warren Computer Science Department Rice University
Introduction • Contouring – 3 D volumetric data – Zero-contour of scalar field • Marching Cubes Algorithm [Lorensen and Cline, 1987] – Voxel-by-voxel contouring – Table driven algorithm
2 D Marching Cubes • Generate line segments that connect zero-value points on the edges of the square. – Partition the square into positive and negative regions. – Connected with contours of neighboring squares.
3 D Marching Cubes • Generate polygons that connect zero-value points on the edges of the voxel. – Partition the voxel into positive and negative regions. – Connected with contours of neighboring voxels
Key Idea: Table Driven Contouring • Structure of the lookup table: – Indexed by signs at the corners of the voxel. – Each entry is a list of polygons whose vertices lie on edges of the voxel. – Exact locations of vertices (zero-value points) are calculated from the magnitude of scalar values at the corners of the voxel.
Goal • Extend table driven contouring to support: – Fast collision detection. – Adaptive contouring (no explicit crack prevention).
Idea: Keep Negative Region Convex • Generate polygons such that the resulting negative region is convex inside a voxel. Non-convex Convex
Fast Point Classification • Bound the point to its enclosing voxel. • Build extended planes for each polygon on the contour inside the voxel. • Test the point against those extended planes. Inside negative region Outside negative region
Construction of Lookup Table • In 2 D, line segments are uniquely determined by sign configuration. • In 3 D, polygons are NOT uniquely determined by sign configuration.
Algorithm: Convex Contouring • In 3 D, line segments on the faces of the voxel connecting zero-value points are uniquely determined by sign configuration (table lookup). • Contouring algorithm: – Lookup cycles of line segments on faces of the voxel. – Compute positions of zero-value points on the edges. – Convex triangulation of cycles.
Convex Contouring
Examples using Convex Contouring
Beyond Uniform Grids • Current work: Multi-resolution contouring – A world of non-uniform grids. – In 2 D: Contouring transition squares between grids of different resolutions
Beyond Uniform Grids • Current work: Multi-resolution contouring – A world of non-uniform grids. – In 3 D: Contouring transition voxels between grids of different resolutions
Strategy: Adaptive Convex Contouring • Build expanded lookup table for transitional voxels with extra vertices. • Polygons connected with contours from neighboring voxels. Transition Voxel 1 Transition Voxel 2
Benefits of Adaptive Convex Contouring • Automatic method for computing table • Fast contouring using table lookup • Crack prevention – Contours are consistent across the transitional face/edge. No crack-filling is necessary.
Examples of Adaptive Convex Contouring
Examples of Multi-resolution Contouring
Conclusion • Convex contouring algorithm. – Fast Collision Detection. – Crack-free adaptive contouring. – Real-time contouring with lookup table. • Future work: – Real applications, such as games, using multi-resolution convex contouring. – Topology-preserving adaptive contouring.
Acknowledgements • Special thanks to Scott Schaefer for implementation of the multi-resolution contouring program. • Special thanks to the Stanford Graphics Laboratory for models of the bunny.
temporary
- Concave vs convex shapes
- Convex hull is the smallest convex set
- Absolute value of x as a piecewise function
- Lash lengtheners that contain fibers
- Zooming and shrinking in digital image processing
- Tacheometric method of contouring
- Dart manipulation principles
- Piecewise function increasing decreasing
- Your cell phone plan costs $75
- Examples of piecewise functions in real life
- Piecewise function generator
- How to solve piecewise functions step by step
- 1-3 lesson quiz piecewise-defined functions
- Example of a piecewise function in real life
- Special functions algebra 2
- Writing piecewise functions from a graph
- Integral of piecewise function
- Implicit vs explicit differentiation
- Implicit differentiation with inverse trig functions
- Contoh fungsi eksplisit dan implisit
- Nobela ng pilipinas
- Halimbawa ng melodrama