Title: John C. Hart
1Computational TopologyforComputer Graphics
- John C. Hart
- School of EECS
- Washington State University
2What is Topology?
- The topology of a space is the definition of a
collection of sets (called the open sets) that
include - the space and the empty set
- the union of any of the sets
- the finite intersection of any of the sets
3No, Really.What is Topology?
- The study of properties of a shape that do not
change under deformation - Rules of deformation
- Onto (all of A ? all of B)
- 1-1 correspondence (no overlap)
- bicontinuous, (continuous both ways)
- Cant tear, join, poke/seal holes
- A is homeomorphic to B
4Why Do We Care?
- The study of connectedness
- Understanding
- How connectivity happens?
- Analysis
- How to determine connectivity?
- Articulation
- How to describe connectivity?
- Control
- How to enforce connectivity?
5For Example
- How does connectedness affect
- Morphing
- Texturing
- Compression
- Simplification
6Geometric Modeling
- The connectedness of some geometric
representations depends on the proximity of their
primitives - Recurrent models
- Implicit surfaces
7Implicit Surfaces
Manifold
8Interactive Implicit Surface Modeling
- Particles constrained to surface
- Surface constrained to particles
9Goal Meshing Implicit Surfaces
- Constrains vertices to surface
- As surface moves, so do vertices
- Reconnect skinny triangles
- Problems
10Problem Mesh Aliasing
- Determines shape from point samples
- Different coordinates, different shapes
11Problem Interloping Components
- Blob functions accumulate away from blob centers
- Incremental meshes can miss such components
12Problem Mesh Reconnection
- How do we reconnect polygons when an implicit
surfaces topology changes? - How do we even detect when an implicit
surfacestopologychanges?
13Solution Morse Theory
- Determines the connectedness of a space from the
critical points of a real function - Critical point occur where the gradient ??f
(??f/?x, ?f/?y,) vanishes - Index of a critical point is of principal
directions where f decreases - Perturb to remove degeneracy
14Example Dunking a Donut
- Space is torus
- Function f is height
- Elevation gradient
- Connectedness of f ?? h
- Four critical points
- Index 0 minimum
- Index 1 saddle
- Index 1 saddle
- Index 2 maximum
15(No Transcript)
16(No Transcript)
17(No Transcript)
18(No Transcript)
19(No Transcript)
20How Does It Work?
- Need more serious topology
- Homotopy equivalence
- Deformation retraction
- Cells
21Homotopy Equivalence
- A B
- Same of components
- Same of holes
- Not necessarily same dimension
- Not same as homeomorphic
22Deformation Retraction
- Function that continuously reduces a set onto a
subset - Any shape is homotopic to any of its deformation
retracts - Skeleton is a deformation retract of the solids
it defines
23Cells
- Cells are dimensional primitives
- Cells are attached at their boundary
0-Cell
1-Cell
2-Cell
3-Cell
24How It Works
- Homotopy type changes only when height crosses a
critical point - Let A before critical point
- Let B after critical point
- Let l index of critical point
- Then B A with a l-cell attached (!)
25Building a Torus
26Oh Yeah,Implicit Surfaces
- Space is now 3-D
- Homotopy type of solid f(x,y,z) ?? 0
- Critical points
- Index 0 center of sphere
- Index 1 wasps waist
- Index 2 dimple
- Index 3 air bubble
27Finding Critical Points
- Search all of 3-D space
- Simple interval search
- Interval Newtons method
- Tracking
- Constrain particles to follow critical point
- Problem critical points appear out of nowhere
Degenerate
28Implicit Surface Topology Changes
Createð Minimum - ïDestroy
Attachð 1-Saddle - ïCut
Burstð Maximum - ïBubble
Spackleð 2-Saddle - ïPierce
29Cut/Spackle Example
Cut
Spackle
30(No Transcript)
31Blending
- Automatic, based on proximity
- Uncontrolled, based on proximity
32Controlled Blending
- Precise Contact Modeling
- Cani (Gascuel) SIGGRAPH 93
- Uses a graph to indicate blending
- Primitives mutually distorted if not blended
- Blending Graph
- Guy Wyvill IS96
- Uses a graph to indicate blending
- Primitives unioned (CSG) if not blended
- Results in C1 discontinuities
33Blend Graph Example
34(No Transcript)
35CW-Complex
- Created by attaching cells
- Generalizes graph to higher dimensions
- Vertices
- Edges
- Faces
- Volumes
- Represents the homotopy typeof the shape
36Example Torus
a
a
b
a
a
b
b
b
FundamentalDomain
Geometry
CW-Complex
37Morse CW-Complex
- A surface has the homotopy type of a CW-complex
with one l-cell for each critical point of index
l - But how do we construct this CW-complex for a
given shape?
38Follow the Separatrices
(a)
(a)
(b)
c
d
(c)
a
b
(a)
b
a
d
c
39Computing the CW-Complex of a Surface
- 0-cells (vertices)
- Surface search for all minima
- 1-cells (edges)
- Integrate ODE x ?v0(x) from saddles to minima
- 2-cells (faces)
- Seed particle system at 2-saddles
- Bound domain by 1-cell edges
40CW-Complex of a Solid
- Use cells to describe shape topology
- Vertex component
- Edge connection between components
- Ring of edges handle
- Face no hole
- Enclosure of faces hollow shell
- Volume solid
- CW-complex ?? shape
41Example Cube
42Computing the CW-Complex of a Solid
- 0-cells (vertices) minima
- 1-cells (edges)
- Integrate x ?v0(x) from 1-saddle to minima
- 2-cells (faces)
- Surface particles
- Additional constraint x? v2(x) 0
- 3-cells (volumes)
- Voxel region growing seeded at maximum
43Future Work
- Topological skeleton
- MATCW-complex of distance
- Removes geometric noise
- Crystallography
- Carroll Johnson salt molecule
- Critical net graph of CW-complex
- Meshing moving interface surfaces
- Fluid dynamics - droplets
- Level sets ODE surfaces
44The End, For Now
- Birth of a new field
- Morse theory is key
- Solves holy grail problems in implicits
- Interactive modeling
- Controlled blending
- Thanks NSF, Ulrike Axen, Bart Stander, Brian
Wyvill,Peter Schroeder