121
Shape Modeling and Geometry Processing Discrete Differential Geometry 252-0538-00L, Spring 2018 3/8/2018

Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

Shape Modeling and

Geometry Processing

Discrete Differential Geometry

252-0538-00L, Spring 2018

3/8/2018

Page 2: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry – Motivation

Formalize geometric properties of shapes

Roi Poranne 23/8/2018

Page 3: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry – Motivation

Formalize geometric properties of shapes

Smoothness

Roi Poranne 33/8/2018

Page 4: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry – Motivation

Roi Poranne 43/8/2018

Formalize geometric properties of shapes

Smoothness

Deformation

Page 5: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry – Motivation

Roi Poranne 53/8/2018

Formalize geometric properties of shapes

Smoothness

Deformation

Mappings

Page 6: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Roi Poranne 63/8/2018

Page 7: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 7

manifold point

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 8: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 8

manifold point

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 9: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 9

manifold point

continuous

1-1 mapping

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 10: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 10

manifold point

continuous

1-1 mapping non-manifold point

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 11: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 11

manifold point

continuous

1-1 mapping non-manifold point

x

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 12: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 123/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 13: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 13

continuous

1-1 mapping

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 14: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry Basics

Roi Poranne 14

continuous

1-1 mapping

u

v

If a sufficiently smooth

mapping can be

constructed, we can look

at its first and second

derivatives

Tangents, normals,

curvatures, curve

angles

Distances, topology

3/8/2018

Geometry of manifolds

Things that can be explored locally

point + neighborhood

Page 15: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

Differential Geometry of Curves

3/8/2018

Page 16: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Planar Curves

3/8/2018 Roi Poranne 16

𝛾 𝑡 =𝑥 𝑡𝑦 𝑡

, 𝑡 ∈ 𝑡0, 𝑡1

Page 17: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Planar Curves

Roi Poranne 173/8/2018

𝛾 𝑡 =𝑥 𝑡𝑦 𝑡

, 𝑡 ∈ 𝑡0, 𝑡1

Page 18: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Planar Curves

Roi Poranne 183/8/2018

𝛾 𝑡 =𝑡𝑡2

𝛾 𝑡 =𝑥 𝑡𝑦 𝑡

, 𝑡 ∈ 𝑡0, 𝑡1

Page 19: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Planar Curves

Roi Poranne 193/8/2018

𝛾 𝑡 =𝑡𝑡2

𝛾 𝑡 =𝑥 𝑡𝑦 𝑡

, 𝑡 ∈ 𝑡0, 𝑡1

𝛾 𝑡 = 𝑡2

𝑡4

Page 20: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Arc Length Parameterization

Same curve has many parameterizations!

Arc-length: equal speed of

the parameter along the curve

Roi Poranne 203/8/2018

𝐿(𝛾(𝑡1), 𝛾(𝑡2)) = |𝑡1 – 𝑡2|

Page 21: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Secant

A line through two points on the curve.

Roi Poranne 213/8/2018

Page 22: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Secant

A line through two points on the curve.

Roi Poranne 223/8/2018

Page 23: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Secant

A line through two points on the curve.

Roi Poranne 233/8/2018

Page 24: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangent

Roi Poranne 24

A line through two points on the curve.

3/8/2018

Page 25: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangent

Roi Poranne 25

The limit secant as two points come together.

3/8/2018

Page 26: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Secant and Tangent

Secant: line through 𝒑(𝑃) – 𝒑(𝑄)

Tangent:𝛾(𝑃) = (𝑥(𝑃), 𝑦(𝑃), … )𝑇

Roi Poranne 263/8/2018

Page 27: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Arc Length Parameterization

Same curve has many parameterizations!

Arc-length: equal speed of

the parameter along the curve

Roi Poranne 273/8/2018

𝐿(𝛾(𝑡1), 𝛾(𝑡2)) = |𝑡1 – 𝑡2|

𝛾′ 𝑡 = 1

Page 28: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Arc Length Parameterization

Same curve has many parameterizations!

Arc-length: equal speed of

the parameter along the curve

Roi Poranne 283/8/2018

𝐿(𝛾(𝑡1), 𝛾(𝑡2)) = |𝑡1 – 𝑡2|

𝛾′ 𝑡 = 1

What it 𝛾 𝑡 is not arc length?

Page 29: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Arc Length Parameterization

Roi Poranne 293/8/2018

Re

Curve

𝛾(𝑡) 𝛾(𝑝(𝑡))

Reparamterization

𝑝: 𝑡0, 𝑡1 → 𝑡0, 𝑡1𝑝′ 𝑡 ≠ 0

Arc length reparamterization

𝛾′ 𝑝 𝑡 = 1

Page 30: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Arc Length Parameterization

Roi Poranne 303/8/2018

Re

Arc length reparamterization

𝛾′ 𝑝 𝑡 = 1

Let

𝑞 𝑡 = න𝑡0

𝑡

𝛾′ 𝑡

Then

𝑝 𝑡 = 𝑞−1 𝑡

Page 31: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangent, normal, curvature

Roi Poranne 31

p

Osculating circle

3/8/2018

Page 32: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature

Circle through three points on the curve

Roi Poranne 323/8/2018

Page 33: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature

The limit circle as points come together.

Roi Poranne 333/8/2018

Page 34: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature

Roi Poranne 343/8/2018

The limit circle as points come together.

Curvature

𝜅 =1

𝑟

Page 35: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Signed Curvature

Curving left or right

Roi Poranne 35

+

3/8/2018

Page 36: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Gauss map ො𝑛(𝑡)

Point on curve maps to point on unit circle.

3/8/2018 Roi Poranne 36

ො𝑛 𝑡 → S1

Page 37: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature =

change in normal direction

Absolute curvature (assuming arc length)

via the Gauss map

Roi Poranne 37

curve Gauss map curve Gauss map

3/8/2018

Page 38: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature Normal

Assume t is arc-length parameter

Roi Poranne 38

)(ˆ)( tt np

“A multiresolution framework for variational subdivision”,

Kobbelt and Schröder, ACM TOG 17(4), 1998

p(t)

)(ˆ tn

p(t)

3/8/2018

Page 39: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature Normal

Assume t is arc-length parameter

Roi Poranne 39

)(ˆ)( tt np

p(t)

)(ˆ tn

p(t)

The curvature defines

the planar curve shape

3/8/2018

up to rotation and translation!

Page 40: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Turning Number, k

Roi Poranne 403/8/2018

Page 41: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Turning Number, k

Roi Poranne 413/8/2018

Page 42: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Turning Number Theorem

For a closed curve,

the integral of curvature is

an integer multiple of 2.

Roi Poranne 42

+2

–2

+4

0

3/8/2018

Page 43: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Planar Curves

Roi Poranne 433/8/2018

Page 44: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Planar Curves

Piecewise linear curves

Not smooth at vertices

Can’t take derivatives

Goal :Generalize notions

From the smooth world for

the discrete case

There is no one single way!

Roi Poranne 443/8/2018

Page 45: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Sampling

Connection between discrete and smooth

Finite number of vertices

each lying on the curve,

connected by straight edges.

Roi Poranne 453/8/2018

Page 46: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

p1

p2

p3

p4

The Length of a Discrete Curve

Sum of edge lengths

Roi Poranne 463/8/2018

Page 47: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

The Length of a Continuous Curve

limit over a refinement sequence

Roi Poranne 47

h = max edge length

3/8/2018

Page 48: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

tangent is the unit vector along edge

normal is the perpendicular vector

Roi Poranne 483/8/2018

On edges

Page 49: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

Many options…

Roi Poranne 493/8/2018

On vertices

Page 50: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

Average the adjacent edge normals

Roi Poranne 503/8/2018

On vertices

Many options…

Page 51: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

Average the adjacent edge normals

Weighting by edge lengths

Roi Poranne 513/8/2018

On vertices

Many options…

Page 52: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

Average the adjacent edge normals

Weighting by edge lengths

Roi Poranne 523/8/2018

On vertices

Many options…

Page 53: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Tangents, Normals

Average the adjacent edge normals

Weighting by edge lengths

Roi Poranne 533/8/2018

On vertices

Many options…

Page 54: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Again: change in normal direction

Roi Poranne 54

no change along each edge –

curvature is zero along edges

3/8/2018

Page 55: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Roi Poranne 553/8/2018

Again: change in normal direction

no change along each edge –

curvature is zero along edges

Page 56: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Roi Poranne 56

normal changes at vertices –

record the turning angle!

3/8/2018

Again: change in normal direction

Page 57: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Roi Poranne 573/8/2018

Again: change in normal direction

normal changes at vertices –

record the turning angle!

Page 58: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Roi Poranne 583/8/2018

Again: change in normal direction

normal changes at vertices –

record the turning angle!

Page 59: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Roi Poranne 59

same as the turning angle

between the edges

3/8/2018

Again: change in normal direction

Page 60: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature of a Discrete Curve

Zero along the edges

Turning angle at the vertices

= the change in normal direction

Roi Poranne 60

1, 2 > 0, 3 < 0

1 2

3

3/8/2018

Page 61: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Total Signed Curvature

Sum of turning

angles

Roi Poranne 61

1 2

3

3/8/2018

Page 62: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Gauss Map

Edges map to points, vertices map to arcs.

Roi Poranne 623/8/2018

Page 63: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Gauss Map

Turning number well defined for discrete

curves.

Roi Poranne 633/8/2018

Page 64: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Turning Number Theorem

For a closed curve,

the total signed curvature is

an integer multiple of 2.

proof: sum of exterior angles

Roi Poranne 643/8/2018

Page 65: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Turning Number Theorem

Roi Poranne 65

Continuous world Discrete world

k:

3/8/2018

Page 66: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Curvature is scale dependent

Roi Poranne 66

is scale-independent

3/8/2018

Page 67: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Curvature – Integrated Quantity!

Cannot view αi as

pointwise curvature

It is integrated

curvature over a local

area associated with

vertex i

Roi Poranne 67

1 2

3/8/2018

Page 68: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Curvature – Integrated Quantity!

Integrated over a local

area associated with

vertex i

Roi Poranne 68

1 2A1

3/8/2018

Page 69: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Curvature – Integrated Quantity!

Integrated over a local

area associated with

vertex i

Roi Poranne 69

1 2A1

A2

3/8/2018

Page 70: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Curvature – Integrated Quantity!

Integrated over a local

area associated with

vertex i

Roi Poranne 70

1 2A1

A2

The vertex areas Ai form a covering

of the curve.

They are pairwise disjoint (except

endpoints).

3/8/2018

Page 71: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete analogues

● Arbitrary discrete curve

▪ total signed curvature obeys

discrete turning number theorem

• even coarse mesh (curve)

▪ which continuous theorems to preserve?

• that depends on the application…

Roi Poranne 713/8/2018

Page 72: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Convergence

● length of sampled polygon approaches length of

smooth curve

● in general, discrete measures approaches

continuous analogues

● How to refine?

▪ depends on discrete operator

▪ pathological sequences may exist

▪ in what sense does the operator converge? (pointwise, L2; linear, quadratic)

Roi Poranne 723/8/2018

Page 73: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

Differential Geometry of Surfaces

3/8/2018

Page 74: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Surfaces, Parametric Form

Continuous surface

Tangent plane at point

p(u,v) is spanned by

3/8/2018 Roi Poranne

n

p(u,v)

pu

u

v

pv

These vectors don’t have to be orthogonal

74

Page 75: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Isoparametric Lines

Lines on the surface when

keeping one parameter fixed

3/8/2018 Roi Poranne

u

v

75

Page 76: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Surfaces, Parametric Form

Continuous surface

Tangent plane at point

p(u,v) is spanned by

3/8/2018 Roi Poranne

n

p(u,v)

pu

u

v

pv

These vectors don’t have to be orthogonal

76

Page 77: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Surface Normals

3/8/2018 Roi Poranne

n

p(u,v)

pu

u

v

pv

77

Surface normal:

Page 78: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Surface Normals

Surface normal:

3/8/2018 Roi Poranne

n

p(u,v)

pu

u

v

pv

78

Regular parameterization

Page 79: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Normal Curvature

3/8/2018 Roi Poranne 79

Page 80: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

n

p

pupv

t

Normal Curvature

3/8/2018 Roi Poranne

t in the tangent plane

(if pu and pv are orthogonal):

t

Tangent plane

80

Page 81: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Normal Curvature

3/8/2018 Roi Poranne

n

p

pupv

t

The curve is the intersection

of the surface with the plane

through n and t.

Normal curvature:

n() = ((p))

81

Page 82: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Surface Curvatures

● Principal curvatures

▪ Minimal curvature

▪ Maximal curvature

● Mean curvature

● Gaussian curvature

3/8/2018 Roi Poranne 82

Page 83: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Principal Directions

Principal directions:

tangent vectors

corresponding to

max and min

3/8/2018 Roi Poranne

min curvature max curvaturetangent

plane

min

t1

t2

83

Page 84: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Principal Directions

Principal directions:

tangent vectors

corresponding to

max and min

3/8/2018 Roi Poranne

min curvature max curvaturetangent

plane

min

t1

t2

84

What can we say about the principal directions?

Page 85: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Euler’s Theorem: Principal directions are orthogonal.

Principal Directions

3/8/2018 Roi Poranne 85

Page 86: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Principal Directions

3/8/2018 Roi Poranne 86

Page 87: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Mean Curvature

3/8/2018 Roi Poranne 87

Page 88: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Gaussian Curvature

A point p on the surface is called

● Elliptic, if K > 0

● Parabolic, if K = 0

● Hyperbolic, if K < 0

Developable surface

iff K = 0

3/8/2018 Roi Poranne 88

Classification

Page 89: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Local Surface Shape By Curvatures

3/8/2018 Roi Poranne

Isotropic:

all directions are

principal directions

spherical (umbilical) planar

K > 0, 1= 2

Anisotropic:

2 distinct

principal

directions

elliptic parabolic hyperbolic

1 > 0, 2 > 0

1= 0

2 > 0

K > 0 K = 0 K < 0

K = 0

1 < 0

2 > 0

89

Page 90: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Theorema Egregium

“Remarkable theorem”

3/8/2018 Roi Poranne 90

Page 91: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

For orientable meshes:

c = number of connected components

g = genus

b = number of boundary loops

Reminder: Euler-Poincaré Formula

3/8/2018 Roi Poranne 91

Page 92: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Gauss-Bonnet Theorem

For a closed surface M:

3/8/2018 Roi Poranne 92

Page 93: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Gauss-Bonnet Theorem

For a closed surface M:

Compare with planar curves:

3/8/2018 Roi Poranne 93

Page 94: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Fundamental Forms

First fundamental form

3/8/2018 Roi Poranne 94

Page 95: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Fundamental Forms

I is a generalization of the dot product

allows to measure

length, angles, area, curvature

arc element

area element

3/8/2018 Roi Poranne 95

Page 96: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Intrinsic Geometry

Properties of the surface that only depend

on the first fundamental form

length

angles

Gaussian curvature (Theorema Egregium)

3/8/2018 Roi Poranne 96

Page 97: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Fundamental Forms

First fundamental form

Second fundamental form

Together, they define a surface (if some

compatibility conditions hold)

3/8/2018 Roi Poranne 97

Page 98: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Laplace Operator

3/8/2018 Roi Poranne

Laplace

operator

gradient

operator2nd partial

derivatives

divergence

operator

function in

Euclidean space

98

Page 99: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Laplace-Beltrami Operator

Extension of Laplace to functions on manifolds

3/8/2018 Roi Poranne

Laplace-

Beltrami

gradient

operator

divergence

operator

function on

surface M

99

Page 100: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Laplace-Beltrami Operator

For coordinate functions: 𝐩 𝑥, 𝑦, 𝑧 = (𝑥, 𝑦, 𝑧)

3/8/2018 Roi Poranne

mean

curvature

unit

surface

normal

Laplace-

Beltrami

gradient

operator

divergence

operator

function on

surface M

100

Page 101: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Differential Geometry on Meshes

Assumption: meshes are piecewise linear

approximations of smooth surfaces

Can try fitting a smooth surface locally

(say, a polynomial) and find differential

quantities analytically

But: it is often too slow for interactive

setting and error prone

3/8/2018 Roi Poranne 101

Page 102: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Differential Operators

Approach: approximate differential

properties at point v as spatial average

over local mesh neighborhood N(v) where

typically

● v = mesh vertex

● Nk(v) = k-ring neighborhood

3/8/2018 Roi Poranne 102

Page 103: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

3/8/2018 Roi Poranne 103

vi

vj

Page 104: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Uniform discretization: L(v) or ∆v

Depends only on connectivity

= simple and efficient

Bad approximation for

irregular triangulations

3/8/2018 Roi Poranne

vi

vj

104

Page 105: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Intuition for uniform discretization

3/8/2018 Roi Poranne 105

Page 106: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Intuition for uniform discretization

3/8/2018 Roi Poranne

vi vi+1

vi-1

106

Page 107: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Intuition for uniform discretization

3/8/2018 Roi Poranne

vi

vj1 vj2

vj3

vj4vj5

vj6

107

Page 108: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Cotangent formula

3/8/2018 Roi Poranne

Aivi

vi

vj vj

ij

ij

vi

vj

108

Page 109: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Cotangent formula

Accounts for mesh

geometry

Potentially negative/

infinite weights

3/8/2018 Roi Poranne 109

Page 110: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

Cotangent formula

Can be derived using linear Finite Elements

Nice property: gives zero for planar 1-rings!

3/8/2018 Roi Poranne 110

Page 111: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

● Uniform Laplacian Lu(vi)

● Cotangent Laplacian Lc(vi)

● Normal

3/8/2018 Roi Poranne

vi

vj

111

Page 112: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

● Uniform Laplacian Lu(vi)

● Cotangent Laplacian Lc(vi)

● Normal

● For nearly equal edgelengthsUniform ≈ Cotangent

3/8/2018 Roi Poranne

vi

vj

112

Page 113: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Laplace-Beltrami

● Uniform Laplacian Lu(vi)

● Cotangent Laplacian Lc(vi)

● Normal

● For nearly equal edgelengthsUniform ≈ Cotangent

3/8/2018 Roi Poranne

vi

vj

Cotan Laplacian allows computing discrete normal

113

Page 114: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Curvatures

Mean curvature

Gaussian curvature

Principal curvatures

3/8/2018 Roi Poranne

Ai

j

114

Page 115: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Gauss-Bonnet Theorem

Total Gaussian curvature is fixed for a given

topology

3/8/2018 Roi Poranne 115

Page 116: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Gauss-Bonnet Theorem

Total Gaussian curvature is fixed for a given

topology

3/8/2018 Roi Poranne 116

Page 117: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Discrete Gauss-Bonnet Theorem

Total Gaussian curvature is fixed for a given

topology

3/8/2018 Roi Poranne 117

Page 118: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Example: Discrete Mean Curvature

3/8/2018 Roi Poranne 118

Page 119: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Links and Literature

● M. Meyer, M. Desbrun, P. Schroeder, A. Barr

Discrete Differential-Geometry Operators for

Triangulated 2-Manifolds, VisMath, 2002

3/8/2018 Roi Poranne 119

Page 120: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

#

Links and Literature

● libigl implements many

discrete differential

operators

● See the tutorial! ● http://libigl.github.io/libigl/tut

orial/tutorial.html

3/8/2018 Roi Poranne

principal directions

120

Page 121: Shape Modeling and Geometry Processingcrl.ethz.ch/teaching/shape-modeling-18/lectures/04_DDG.pdf · Differential Geometry Basics Roi Poranne 14 continuous 1-1 mapping u v If a sufficiently

Thank You

3/8/2018