54
CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo 05 - Surfaces Acknowledgements: Olga Sorkine-Hornung

05 - Surfacespanozzo/gp18/05 - Surfaces.pdf · 2019. 1. 31. · Usage example: define fair surfaces • FiberMesh s.t. M interpolates the curves Andrew Nealen, Takeo Igarashi, Olga

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    05 - Surfaces

    Acknowledgements: Olga Sorkine-Hornung

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Reminder – Curves

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Turning Number TheoremContinuous world Discrete world

    k:

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Curvature is scale dependent

    is scale-independent

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Curvature – Integrated Quantity!

    • Cannot view αi as pointwise curvature

    • It is integrated curvature over a local area associated with vertex i

    α1 α2

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Curvature – Integrated Quantity!

    • Integrated over a local area associated with vertex i α1 α2

    A1

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Curvature – Integrated Quantity!

    • Integrated over a local area associated with vertex i α1 α2

    A1 A2

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Curvature – Integrated Quantity!

    • Integrated over a local area associated with vertex i α1 α2

    A1 A2

    The vertex areas Ai form a covering of the curve.
They are pairwise disjoint (except endpoints).

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Structure Preservation

    • 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…

    discrete analogue of continuous theorem

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Recap

    ConvergenceStructure- 
preservation

    In the limit of a refinement sequence, discrete measures of length and curvature agree with continuous measures.

    For an arbitrary (even coarse) discrete curve, the discrete measure of curvature obeys the discrete turning number theorem.

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Surfaces

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Surfaces, Parametric Form• Continuous surface

    • Tangent plane at point 
p(u,v) is spanned by

    n

    p(u,v)pu

    u

    v

    pv

    These vectors don’t have to be orthogonal

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Isoparametric Lines• Lines on the surface when 


    keeping one parameter fixed

    u

    v

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Surface Normals

    • Surface normal:

    • Assuming regular 
parameterization, i.e.,

    n

    p(u,v)

    pu

    u

    v

    pv

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    n

    p

    pu pv

    t

    Normal Curvature

    Unit-length direction t in the 
tangent plane (if pu and pv are orthogonal):

    Tangent plane

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Normal Curvature

    n

    p

    pu pv

    The curve γ is the intersection 
of the surface with the plane 
through n and t.

    Normal curvature:

    κn(ϕ) = κ(γ(p))

    Tangent plane

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Surface Curvatures

    • Principal curvatures • Minimal curvature

    • Maximal curvature

    • Mean curvature

    • Gaussian curvature

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Principal Directions

    • Principal directions: 
tangent vectors 
corresponding to 
 ϕmax and ϕmin


    min curvature max curvaturetangent plane

    ϕ min

    t1t2

    Pierre Alliez, David Cohen-Steiner, Olivier Devillers, Bruno Lévy, and Mathieu Desbrun. 2003. Anisotropic polygonal remeshing. ACM Trans. Graph. 22, 3 (July 2003), 485-493. DOI: http://dx.doi.org/10.1145/882262.882296

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Euler’s Theorem: Planes of principal curvature are orthogonal and independent of parameterization.

    Principal Directions

    By Eric Gaba (Sting) - Based upon a drawing in a book, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=1325452

    https://commons.wikimedia.org/w/index.php?curid=1325452

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Principal Directions

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Mean Curvature

    • Intuition for mean curvature

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Classification

    • 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

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Local Surface Shape By Curvatures

    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

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Usage example: define fair surfaces

    • FiberMesh

    s.t. M interpolates the curves

    Andrew Nealen, Takeo Igarashi, Olga Sorkine and Marc Alexa, "FiberMesh: Designing Freeform Surfaces with 3D Curves", ACM Transactions on Computer Graphics, ACM SIGGRAPH 2007, San Diego, USA, 2007

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Gauss-Bonnet Theorem

    • For a closed surface M:

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Gauss-Bonnet Theorem

    • For a closed surface M:

    • Compare with planar curves:

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Fundamental Forms

    • First fundamental form

    • Second fundamental form

    • Together, they define a surface (if some compatibility conditions hold)

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Fundamental Forms

    • I allows to measure • length, angles, area, curvature • arc element

    • area element

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Intrinsic Geometry

    • Properties of the surface that only depend on the first fundamental form • length • angles • Gaussian curvature (Theorema Egregium)

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Interesting examples

    • Hyperbolic geometry – spaces with constant negative Gauss curvature

    • Constant mean curvature surfaces • Minimal surfaces (H = 0)

    Lobachevsky plane Soap surfaces (minimal surfaces)

    By Anders Sandberg - Own work, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=21537940

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Laplace Operator

    Laplace
operator

    gradient 
operator

    2nd partial
derivatives

    Cartesian 
coordinatesdivergence 


    operator

    function in
Euclidean space

    Intuitive Explanation

    The Laplacian Δf(p) of a function f at a point p, up to a constant depending on the dimension, is the rate at which the average value of f over spheres centered at p deviates from f(p) as the radius of the sphere grows.

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Laplace-Beltrami Operator• Extension of Laplace to functions on manifolds

    Laplace-
Beltrami

    gradient 
operator

    divergence 
operator

    function on
surface M

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Laplace-Beltrami Operator

    • For coordinate functions:

    mean 
curvature

    unit 
surface
normal

    Laplace-
Beltrami

    gradient 
operator

    divergence 
operator

    function on
surface M

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    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

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    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

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Uniform discretization:

    • Depends only on connectivity 
= simple and efficient

    • Bad approximation for 
irregular triangulations

    vi

    vj

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Intuition for uniform discretization

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Intuition for uniform discretization

    vi vi+1vi-1

    γ

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    vi

    vj1 vj2

    vj3

    vj4vj5

    vj6

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Cotangent formula

    Aivi

    vi

    vj vj

    αij

    βij

    vi

    vj

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Voronoi Vertex Area

    • Unfold the triangle flap onto the plane (without distortion)

    θ

    vi

    vj

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Voronoi Vertex Area

    θ

    vi

    cjvj

    cj+1

    Flattened flapvi

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Cotangent formula

    • Accounts for mesh 
geometry

    • Potentially negative/
infinite weights

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Cotangent formula

    • Can be derived using linear Finite Elements • Nice property: gives zero for planar 1-rings!

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Uniform Laplacian Lu(vi) • Cotangent Laplacian Lc(vi) • Normal

    vi

    vjα

    β

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Uniform Laplacian Lu(vi) • Cotangent Laplacian Lc(vi) • Normal

    • For nearly equal edge lengths
Uniform ≈ Cotangent

    vi

    vjα

    β

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Laplace-Beltrami

    • Uniform Laplacian Lu(vi) • Cotangent Laplacian Lc(vi) • Normal

    • For nearly equal edge lengths
Uniform ≈ Cotangent

    vi

    vjα

    β

    Cotan Laplacian allows computing discrete normal

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Curvatures

    • Mean curvature (sign defined according to normal)

    • Gaussian curvature

    • Principal curvatures

    Ai

    θj

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Discrete Gauss-Bonnet Theorem

    • Total Gaussian curvature is fixed for a given topology

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Example: Discrete Mean Curvature

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Links and Literature

    • M. Meyer, M. Desbrun, P. Schroeder, A. Barr 
Discrete Differential-Geometry Operators for Triangulated 2-Manifolds, VisMath, 2002

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Links and Literature

    https://www.cs.cmu.edu/~kmcrane/Projects/DGPDEC/

    Discrete Differential Geometry: An Applied Introduction Keenan Crane

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Links and Literature

    • libigl implements many discrete differential operators

    • See the tutorial! • http://libigl.github.io/libigl/tutorial/tutorial.html

    Principal Directions

    http://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.htmlhttp://libigl.github.io/libigl/tutorial/tutorial.html

  • CSCI-GA.3033-018 - Geometric Modeling - Daniele Panozzo

    Thank you