(Discrete) Differential Geometry Motivation
• Understand the structure of the surface – Properties: smoothness, “curviness”, important directions • How to modify the surface to change these properties • What properties are preserved for different modifications • The math behind the scenes for many geometry processing applications
2 Motivation
• Smoothness ➡ Mesh smoothing
• Curvature ➡ Adaptive simplification
➡ Parameterization
3 Motivation
• Triangle shape ➡ Remeshing
• Principal directions ➡ Quad remeshing
4 Differential Geometry
• M.P. do Carmo: Differential Geometry of Curves and Surfaces, Prentice Hall, 1976
Leonard Euler (1707 - 1783) Carl Friedrich Gauss (1777 - 1855)
5 Parametric Curves
“velocity” of particle on trajectory
6 Parametric Curves A Simple Example
α1(t)() = (a cos(t), a s(sin(t)) t t ∈ [0,2π] a α2(t) = (a cos(2t), a sin(2t)) t ∈ [0,π]
7 Parametric Curves A Simple Example
α'(t) α(t))( = (cos(t), sin (t)) t
α'(t) = (-sin(t), cos(t))
α'(t) - direction of movement ⏐α'(t)⏐ - speed of movement
8 Parametric Curves A Simple Example
α2'(t)
α1'(t) α (t)() = (cos(t), sin (t)) t 1
α2(t) = (cos(2t), sin(2t))
Same direction, different speed
• Let and
10 Length of a Curve
• Chord length
Euclidean norm
11 Length of a Curve
• Chord length
12 Examples
y(t) x(t) • Straight line – x(t)=() = (t,t), t∈[0,∞) – x(t) = (2t,2t), t∈[0,∞) – x(t) = (t2,t2), t∈[0,∞) x(t)
• Circle y(t) – x(t) = (cos(t),sin(t)), t∈[0,2π) x(t)
x(t)
13 Examples
α(t) = (a cos(t), a sin(t)), t ∈ [0,2π] α'(t) = (-a sin(t), a cos(t))
Many possible parameterizations Length of the curve does not depend on parameterization!
14 Arc Length Parameterization
• Re‐parameterization
• Arc length parameterization
– parameter value s for x(s) equals length of curve from x(a) to x(s)
15 Curvature x(t) a curve parameterized by arc length The curvature of x at t:
– the tangent vector at t – the change in the tangent vector at t
R(t) = 1/κ (t) is the radius of curvature at t
16 Examples
Straight line α(s)=) = us + v , uvu,v∈ R2 α'(s) = u α''(s) = 0 → ⏐α''(s)⏐ = 0
Circle α(s) = (a cos(s/a), a sin(s/a)), s ∈ [0,2πa] α'(s) = (-sin(s/a), cos(s/a)) α''(s)() = (-cos(s/a)/a, -si(in(s/a)/a) → ⏐α''(s)⏐ = 1/a 17 The Normal Vector
x'(t) x'(t) = T(t) ‐ tangent vector |x'(t)| ‐ arc length x''(t) x''(t)=) = T'(t) ‐ normal direction |x''(t)| ‐ curvature x'(t)
If |x''(t)| ≠ 0, define N(t) = T'(t)/|T'(t)| x''(t)
Then x''(t) = T'(t) = κ(t)N(t)18 The Osculating Plane
The plane determined by the unit tangent and normal vectors T T(s) and N(s) is called the N osculating plane at s N T
19 The Binormal Vector
For points s, s.t. κ(s) ≠ 0, the binormal vector B(s) is defined as:
B(s) = T(s) × N(s) T B B N N The binormal vector defines the osculating plane T
20 The Frenet Frame
tangent normal binormal
21 The Frenet Frame
{T(s), N(s), B(s)} form an orthonormal basis for R3 calle d the Frenet frame
How does the frame change when the particle moves?
Wha t are T', N', B' in terms of T, N, B ?
22 The Frenet Frame
• Frenet‐Serret formulas
• curvature
• torsion
(arc-lenggpth parameterization )
23 Curvature and Torsion
• Curvature: Deviation from straight line • Torsion: Deviation from planarity • Independent of parameterization – intrinsic properties of the curve • Invariant under rigid (li(translation+rotat i)ion) motion • Define curve uniquely up to rigid motion
24 Curvature and Torsion
• Planes defined by x and two vectors: – osculating plane: vectors T and N – normal plane: vectors N and B – rectifying plane: vectors T and B x • Osculilating cilircle – second order contact with curve – center
– radius C
R
25 Differential Geometry: Surfaces
26 Differential Geometry: Surfaces
• Continuous surface
• NlNormal vector
– assuming regular p,parameterization, i.e.
27 Normal Curvature
If xxuv and are orthogonal:
28 Normal Curvature
29 Surface Curvature
• Principal Curvatures – maximum curvature – minimum curvature
Euler’s Theorem: Planes of principal curvature are orthogonal and independent of parameterization.
31 Curvature
32 Surface Classification
k1= k2 > 0
k1 = k2= 0 Isotropic
Equal in all directions
spherical planar
k2 = 0 k > 0 k2 < 0 Anisotropic 2 k1 > 0
k1> 0 k > 0 Distinct principal 1 directions
elliptic parabolic hyperbolic K > 0 K = 0 K < 0 dlbldevelopable
33 Principal Directions
k 2 k1
34 Gauss‐Bonnet Theorem
For ANY closed manifold surface with Euler number χ=2-2g:
∫K()( ) =∫K()( ) =∫K()( ) =4π
35 Gauss‐Bonnet Theorem Example
Sphere
k1 = k2= 1/r
2 K = k1k2 = 1/r
Manipulate sphere
New positive + negative curvature
ClCancel out!
36 Fundamental Forms
37 Fundamental Forms
• I and II allow to measure – length, angles, area, curvature – arc element
– area element
38 Fundamental Forms
• Normal curvature = curvature of the normal curve at point • Can be expressed in terms of fundamental forms as
39 Intrinsic Geometry
• Properties of the surface that only depend on the first fundamental form – length – angles – Gaussian curvature (Theorema Egregium)
gradient Laplace operator 2nd partial operator derivatives
∈ R
Cartesian scalar function in divergence coordinates Euclidean space operator
41 Laplace‐Beltrami Operator
• Extension to functions on manifolds
Laplace- gradient Beltrami operator
scalar function divergence on manifold operator
42 Laplace‐Beltrami Operator
• For coordinate function(s)
Laplace- gradient operator mean BltBeltrami curvature
surface coordinate divergence normal function operator
43 Discrete Differential Operators
• Assumption: Meshes are piecewise linear approximations of smooth surfaces • Approach: Approximate differential ppproperties at point v as finite differences over local mesh
neighborhood N(v) v – v = mesh vertex
– Nd(v) = d‐ring neighborhood N1(v) • Disclaimer: many possible discretizations, none is “perfect”
44 Functions on Meshes
• Function f given at mesh vertices f(vi) = f(xi) = fi • Linear interpolation to triangle
1 Bi (x)
xk xi
xj
45 Gradient of a Function
1 Steepest ascent direction Bi (x) perpendicu lar to opposite edge xk xi
xj Constant in the triangle
46 Gradient of a Function
47 Discrete Laplace‐Beltrami First Approach
• Laplace operator:
• In 2D:
• On a grid – finite differences discretization:
48 Discrete Laplace‐Beltrami Uniform Discretization
v
N1(v)
Normalized:
49 Discrete Laplace‐Beltrami Second Approach
• Laplace‐Beltrami operator: • Compute integral around vertex Divergence theorem
50 Discrete Laplace‐Beltrami Cotangent Formula Plugging in expression for gradients gives:
51 The Averaging Region
Edge midpoint
θ
Barycentric cell Voronoi cell Mixed cell
ci = btbarycenter ci = citircumcenter of triangle of triangle
52 The Averaging Region Mixed Cell
If θ < π/2, ci is the circumcenter of the triangle (vi , v, vi+1 )
θ
If θ ≥ π/2, ci is the midpo int of the edge (vi , vi+1 )
53 Discrete Normal
n()x
54 Discrete Curvatures
• Mean curvature
• Gaussian curvature
• Principal curvatures
55 Example: Mean Curvature
56 Example: Gaussian Curvature
original smoothed
Discrete Gauss-Bonnet (Descartes) theorem:
57 References
• “Discrete Differential‐Geometry Operators for Triangulated 2‐ Manifolds”, Meyer et al., ’02 • “Restricted Delaunay triangulations and normal cycle”, Cohen‐Steiner et al., SoCG ‘03 • “On the convergence of metric and geometric properties of polyhedral surfaces”, Hildebrandt et al., ’06 • “Discrete Laplace operators: No free lunch”, Wardetzky et al., SGP ‘07
58