CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint...

71
CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher http://alice.loria.fr/index.php/publications.html?redirect=0&Paper=VSDM@2011&Author=levy

Transcript of CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint...

Page 1: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA

CS 468, Spring 2013 Differential Geometry for Computer Science

Justin Solomon and Adrian Butscher

http://alice.loria.fr/index.php/publications.html?redirect=0&Paper=VSDM@2011&Author=levy

Page 2: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Not suitable for implementation http://upload.wikimedia.org/wikipedia/commons/b/bc/Double_torus_illustration.png

µ R3µ R2

Page 3: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

What is a discrete surface? How do you store it?

http://graphics.stanford.edu/data/3Dscanrep/stanford-bunny-cebal-ssh.jpg http://www.stat.washington.edu/wxs/images/BUNMID.gif

Page 4: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

1. Each edge is incident to one or two faces

2. Faces incident to a vertex form a closed or open fan

http://www.cs.mtu.edu/~shene/COURSES/cs3621/SLIDES/Mesh.pdf

Page 5: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

1. Each edge is incident to one or two faces

2. Faces incident to a vertex form a closed or open fan

http://www.cs.mtu.edu/~shene/COURSES/cs3621/SLIDES/Mesh.pdf

Page 6: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://www.pmp-book.org/download/slides/Representations.pdf

Page 7: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

f(t) f(t+ h)

f

P

Page 8: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

f(t) f(t+ h)

f

P

f(t¤)

Page 9: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

O(h2)

f(t) f(t+ h)

f

P

f(t¤)

Page 10: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Piecewise linear faces are reasonable building blocks.

Page 11: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Simple to render

Arbitrary topology possible

Basis for subdivision, refinement

Page 12: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Topology [tuh-pol-uh-jee]:

The study of geometric properties that remain invariant under certain transformations

http://dictionary.reference.com/browse/topology?s=t

Page 13: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://upload.wikimedia.org/wikipedia/commons/f/fb/Dolphin_triangle_mesh.png

Geometry: “This vertex is at (x,y,z).”

Page 14: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://upload.wikimedia.org/wikipedia/commons/f/fb/Dolphin_triangle_mesh.png

Topology: “These vertices are connected.”

Page 15: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

V = fv1; v2; : : : ; vng ½ Rn

E = fe1; e2; : : : ; ekg ½ V £ V

F = ff1; f2; : : : ; fmg ½ V £ V £ V

Easy to generalize to non-triangles

Page 16: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Valence = 6

Page 17: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

V ¡E+F = ÂÂ= 2¡ 2g

g = 0 g = 1 g = 2

Page 18: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

V ¡E+F = ÂÂ= 2¡ 2g

g = 0 g = 1 g = 2

Page 19: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Closed mesh: Easy estimates!

V ¡E+F = Â

“Each edge is adjacent to two faces. Each face has three edges.”

2E = 3F

Page 20: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Closed mesh: Easy estimates!

V ¡ 1

2F = Â

“Each edge is adjacent to two faces. Each face has three edges.”

2E = 3F

Page 21: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Closed mesh: Easy estimates!

F ¼ 2V

V ¡ 1

2F = Â

Page 22: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

General estimates

E ¼ 3V

F ¼ 2V

average valence ¼ 6

Page 23: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://www.cse.ohio-state.edu/~tamaldey/isotopic.html

Page 24: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Normal field isn’t continuous

Page 25: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Normal field isn’t continuous

Page 26: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Must represent geometry and topology of surface.

Page 27: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Triangle soup CS 468 2011 (M. Ben-Chen), other slides

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

Page 28: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Triangle soup CS 468 2011 (M. Ben-Chen), other slides

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

x1 y1 z1 / x2 y2 z2 / x3 y3 z3

glBegin(GL_TRIANGLES)

Page 29: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Shared vertex structure CS 468 2011 (M. Ben-Chen), other slides

f 1 5 3

f 5 1 2

v 0.2 1.5 3.2

v 5.2 4.1 8.9

… v1

v5

v3 v2f1 f2

Page 30: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

for i=1 to n

for each vertex v

v = .5*v +

.5*(average of neighbors);

Page 31: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Neighboring vertices to a vertex

Neighboring faces to an edge

Edges adjacent to a face

Edges adjacent to a vertex

Mostly localized

Page 32: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Neighboring vertices to a vertex

Neighboring faces to an edge

Edges adjacent to a face

Edges adjacent to a vertex

Mostly localized

Page 33: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertices Faces Half-edges

Structure tuned for meshes

Page 34: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Oriented edge

Page 35: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertex stores: • Arbitrary

outgoing halfedge

Page 36: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Face stores: • Arbitrary

adjacent halfedge

Page 37: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Halfedge stores: • Flip • Next • Face • Vertex

Page 38: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

https://sympa.inria.fr/sympa/arc/cgal-discuss/2008-05/msg00054.html

Iterate(v):

startEdge = v.out;

e = startEdge;

do

process(e.flip.from)

e = e.flip.next

while e != startEdge

Page 39: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 40: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertex Dimension 0

Edge Dimension 1

Face Dimension 2

Page 41: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertex Dimension 0

Edge Dimension 1

Face Dimension 2

@ @

Page 42: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertex Dimension 0

Edge Dimension 1

Face Dimension 2

@ @

Page 43: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Vertex Dimension 0

Edge Dimension 1

Face Dimension 2

@ @

@2 ´ 0

Page 44: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://www.ieeta.pt/polymeco/Screenshots/PolyMeCo_OneView.jpg

f : ! R

Map points to real numbers

Page 45: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://www.ieeta.pt/polymeco/Screenshots/PolyMeCo_OneView.jpg

Map vertices to real numbers

f 2 RjV j

Page 46: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

What is the integral of f? Z

M

f dA

Page 47: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Use hat functions to interpolate http://brickisland.net/cs177/wp-content/uploads/2011/11/ddg_hat_function.svg

Page 48: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Discrete version of 𝒅𝑨

­i

vi

Page 49: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Discrete version of 𝒅𝑨

­i

vi

Z

­i

f dA = fij­ij

Page 50: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 51: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 52: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://www.grasshopper3d.com/group/kangaroo/forum/topics/isosurface-dynamic-remeshing

Page 53: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 54: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

???

?

Page 55: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 56: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

e!Rot!Rot = e!Flip

Page 57: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://johnrichie.com/V2/richie/simp/images/types1.jpg

Page 58: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://johnrichie.com/V2/richie/simp/images/types1.jpg

Page 59: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Complex data structures enable simpler traversal at cost of more bookkeeping.

Page 60: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Implicit surfaces http://www.cs.umd.edu/class/spring2005/cmsc828v/papers/mpu_implicits.pdf ftp://ftp-sop.inria.fr/geometrica/alliez/signing.pdf

Page 61: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Smoothed-particle hydrodynamics

http://www.itsartmag.com/features/cgfluids/ https://developer.nvidia.com/content/fluid-simulation-alice-madness-returns

Page 62: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry
Page 63: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Cleanest: Design software http://www.cad-sourcing.com/wp-content/uploads/2011/12/free-cad-software.jpg

Page 64: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Cleanest: Design software

Page 65: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Volumetric extraction http://www.colin-studholme.net/software/rview/rvmanual/morphtool5.gif

Page 66: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Volumetric extraction http://en.wikipedia.org/wiki/Marching_cubes

Page 67: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Point clouds http://www.engineeringspecifier.com/public/primages/pr1200.jpg

Page 68: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Well-behaved dual mesh http://en.wikipedia.org/wiki/Delaunay_triangulation

Page 69: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

Tangent plane Derive local triangulation from tangent projection

Restricted Delaunay Usual Delaunay strategy but in smaller part of 𝑅3

Inside/outside labeling Find inside/outside labels for tetrahedra

Empty balls Require existence of sphere around triangle with no other point

Delaunay Triangulation Based Surface Reconstruction: Ideas and Algorithms Cazals and Giesen 2004

Page 70: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

http://faculty.cs.tamu.edu/schaefer/teaching/689_Fall2006/poissonrecon.pdf

Page 71: CS 468, spring 2012 - Computer Graphics€¦ · TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA CS 468, Spring 2013 Differential Geometry

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA

CS 468, Spring 2013 Differential Geometry for Computer Science

Justin Solomon and Adrian Butscher

http://alice.loria.fr/index.php/publications.html?redirect=0&Paper=VSDM@2011&Author=levy