Differential Geometry - pmp-book. · PDF fileDifferential Geometry • Intrinsic geometry:...
Transcript of Differential Geometry - pmp-book. · PDF fileDifferential Geometry • Intrinsic geometry:...
Differential GeometryMark Pauly
Mark Pauly
Outline
• Differential Geometry– curvature– fundamental forms– Laplace-Beltrami operator
• Discretization
• Visual Inspection of Mesh Quality
2
Mark Pauly
Differential Geometry
• Continuous surface
• Normal vector
– assuming regular parameterization, i.e.
3
x(u, v) =
!
"
x(u, v)y(u, v)z(u, v)
#
$ , (u, v) ! IR2
n = (xu ! xv)/"xu ! xv"
xu ! xv "= 0
Mark Pauly
• Normal Curvature
Differential Geometry
4
n
p
n =
xu ! xv
"xu ! xv"
t
xu xv
t = cos !xu
!xu!+ sin!
xv
!xv!
Mark Pauly
• Normal Curvature
Differential Geometry
5
t
n
pc
n =
xu ! xv
"xu ! xv"
t = cos !xu
!xu!+ sin!
xv
!xv!
Mark Pauly
Differential Geometry
• Principal Curvatures– maximum curvature
– minimum curvature
• Euler Theorem:
• Mean Curvature
• Gaussian Curvature
6
K = !1 · !2
!n(t̄) = !n(") = !1 cos2 " + !2 sin2 "
H =!1 + !2
2=
1
2"
! 2!
0
!n(#)d#
!1 = max!
!n(")
!2 = min!
!n(")
Mark Pauly
Differential Geometry
• Normal curvature is defined as curvature of the normal curve at a point
• Can be expressed in terms of fundamental forms as
7
t
n
pc
p ! cc ! x(u, v)
!n(t̄) =t̄T II t̄
t̄T I t̄=
ea2 + 2fab + gb2
Ea2 + 2Fab + Gb2
t = axu + bxv
Mark Pauly
Differential Geometry
• First fundamental form
• Second fundamental form
8
I =
!
E F
F G
"
:=
!
xTu xu xT
u xv
xTu xv xT
v xv
"
II =
!
e ff g
"
:=
!
xTuun xT
uvn
xTuvn xT
vvn
"
Mark Pauly
Differential Geometry
• I and II allow to measure– length, angles, area, curvature– arc element
– area element
9
ds2
= Edu2
+ 2Fdudv + Gdv2
dA =
!
EG ! F 2dudv
Mark Pauly
Differential Geometry
• Intrinsic geometry: Properties of the surface that only depend on the first fundamental form– length– angles– Gaussian curvature (Theorema Egregium)
10
K = limr!0
6!r ! 3C(r)
!r3
Mark Pauly
• A point x on the surface is called– elliptic, if K > 0– parabolic, if K = 0– hyperbolic, if K < 0– umbilical, if
• Developable surface ⇔ K = 0
Differential Geometry
11
!1 = !2
Mark Pauly
Laplace Operator
12
!f = div!f =!
i
!2f
!x2i
Cartesiancoordinates
divergenceoperator
gradientoperator
Laplaceoperator
function in Euclidean space
2nd partialderivatives
Mark Pauly
Laplace-Beltrami Operator
• Extension of Laplace to functions on manifolds
13
divergenceoperator
gradientoperator
Laplace-Beltrami
function onmanifold
!Sf = divS !Sf
S
Mark Pauly
Laplace-Beltrami Operator
• Extension of Laplace to functions on manifolds
14
surfacenormal
meancurvature
divergenceoperator
gradientoperator
Laplace-Beltrami
coordinatefunction
!Sx = divS !Sx = "2Hn
Mark Pauly
Outline
• Differential Geometry– curvature– fundamental forms– Laplace-Beltrami operator
• Discretization
• Visual Inspection of Mesh Quality
15
Mark Pauly
Discrete Differential Operators
• Assumption: Meshes are piecewise linear approximations of smooth surfaces
• Approach: Approximate differential properties at point x as spatial average over local mesh neighborhood N(x), where typically– x = mesh vertex– N(x) = n-ring neighborhood or local geodesic ball
16
Mark Pauly
Discrete Laplace-Beltrami
• Uniform discretization
– depends only on connectivity → simple and efficient
– bad approximation for irregular triangulations
17
!unif (v) :=1
|N1 (v)|
!
vi!N1(v)
(f (vi) ! f (v))
Mark Pauly
Discrete Laplace-Beltrami
• Cotangent formula
18
!Sf(v) :=2
A(v)
!
vi!N1(v)
(cot !i + cot "i) (f(vi) ! f(v))
v
vi vi
vA(v) v
vi
!i
!i
Mark Pauly
Discrete Laplace-Beltrami
• Cotangent formula
• Problems– negative weights– depends on triangulation
19
!Sf(v) :=2
A(v)
!
vi!N1(v)
(cot !i + cot "i) (f(vi) ! f(v))
Mark Pauly
Discrete Curvatures
• Mean curvature
• Gaussian curvature
• Principal curvatures
20
G = (2! !
!
j
"j)/A
A
!j
!1 = H +
!
H2! G !2 = H !
!
H2! G
H = !!Sx!
Mark Pauly
Links & Literature• P. Alliez: Estimating Curvature Tensors
on Triangle Meshes (source code)– http://www-sop.inria.fr/geometrica/team/
Pierre.Alliez/demos/curvature/
• Wardetzky, Mathur, Kaelberer, Grinspun: Discrete Laplace Operators: No free lunch, SGP 2007
principal directions
21
Mark Pauly
Outline
• Differential Geometry– curvature– fundamental forms– Laplace-Beltrami operator
• Discretization
• Visual Inspection of Mesh Quality
22
Mark Pauly
Mesh Quality
• Smoothness– continuous differentiability of a surface (Ck)
• Fairness– aesthetic measure of “well-shapedness”– principle of simplest shape– fairness measures from physical models
23
!S
!2
1 + !2
2 dA
!
S
"
!"1
!t1
#2
+
"
!"2
!t2
#2
dA
strain energy variation of curvature
Mark Pauly
Mesh Quality
24
!S
!2
1 + !2
2 dA
!
S
"
!"1
!t1
#2
+
"
!"2
!t2
#2
dA
strain energy variation of curvature
Mark Pauly
Mesh Quality
• Visual inspection of “sensitive” attributes– Specular shading
25
Mark Pauly
Mesh Quality
• Visual inspection of “sensitive” attributes– Specular shading– Reflection lines
26
Mark Pauly
Mesh Quality
• Visual inspection of “sensitive” attributes– Specular shading– Reflection lines
• differentiability one order lower than surface• can be efficiently computed using graphics hardware
27
C0
C1
C2
Mark Pauly
Mesh Quality
• Visual inspection of “sensitive” attributes– Specular shading– Reflection lines– Curvature
• Mean curvature
28
Mark Pauly
Mesh Quality
• Visual inspection of “sensitive” attributes– Specular shading– Reflection lines– Curvature
• Mean curvature• Gauss curvature
29
Mark Pauly
• Smoothness– Low geometric noise
Mesh Quality Criteria
30
Mark Pauly
Mesh Quality Criteria
• Smoothness– Low geometric noise
• Adaptive tessellation– Low complexity
31
Mark Pauly
Mesh Quality Criteria
• Smoothness– Low geometric noise
• Adaptive tessellation– Low complexity
• Triangle shape– Numerical robustness
32
Mark Pauly
• Circum radius / shortest edge
• Needles and caps
Triangle Shape Analysis
33
Needle Cap
r1
e1r2
e2r1
e1
<r2
e2
Mark Pauly
Mesh Quality Criteria
• Smoothness– Low geometric noise
• Adaptive tessellation– Low complexity
• Triangle shape– Numerical robustness
• Feature preservation– Low normal noise
34
Mark Pauly
Normal Noise Analysis
35
Mark Pauly
Mesh Optimization
• Smoothness➡ Mesh smoothing
• Adaptive tessellation➡ Mesh decimation
• Triangle shape➡ Repair, remeshing
36