41
© Frank Nielsen 2011 INF555 Fundamentals of 3D Lecture 8: Introduction to meshes Les maillages Frank Nielsen [email protected] 23 Novembre 2011

(slides 8) Visual Computing: Geometry, Graphics, and Vision

Embed Size (px)

DESCRIPTION

Those are the slides for the book: Visual Computing: Geometry, Graphics, and Vision. by Frank Nielsen (2005) http://www.sonycsl.co.jp/person/nielsen/visualcomputing/ http://www.amazon.com/Visual-Computing-Geometry-Graphics-Charles/dp/1584504277

Citation preview

Page 1: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

INF555

Fundamentals of 3DLecture 8: Introduction to meshes

Les maillages

Frank [email protected]

23 Novembre 2011

Page 2: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Polygons

Page 3: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Polygons: Star-shaped decomposition

Page 4: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Polygons: Star-shaped decomposition

Art gallery, illumination problems, robots'race, etc.Place guards...

Page 5: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

3D : Orienting the fact edges for outer normals

Polyhedron, convex polyhedra

Page 6: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Platonic solids: 5 convex polyhedra

Identical faces(group of symmetry)

Page 7: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Uniform polyhedra

rhombicosidodecahedronrhombicuboctahedron

●faces=regular polygons (not necessarily the same), ●isometry mapping of its vertices (=symmetry)

Page 8: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

75 uniform finite polyhedra/ if you like origami

Science Museum, London

Page 9: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Meshes: Notations ● vertices● edges● faces

Page 10: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Meshes: Connectivity (= structuring)

Page 11: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Meshes: Non-orientable surfaces

Möbius band Klein bottle

Page 12: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Textured meshes: Realistic computer graphics

Page 13: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Osculating circles and curvature

Curvature is the inverse of the radius of the osculating circle.

Page 14: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh: Sectional curvatures and principal directions

Minimum curvature Maximum curvature

Directions are perpendicular to each other

sectional curvatures.Intersection of a surface S with a plane containing point p and its normal:2D curve that can be analyzed using the osculating circles.

Page 15: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Gaussian curvature:Gaussian curvature:

Mean curvature:

Mesh: Gaussian and mean curvatures

→ In Riemannian geometry, many ways to define curvatures (and torsions)

Page 16: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh: Integral Gaussian curvature/angle excess(Deviation from flatness)

Page 17: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh: Ingredients of topology

Euler's formula is a topological invariant:

Closed triangulated manifold:

Page 18: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh topology: Genus, polyhedra with holes(topology=global property)

Genus 0

Genus1Genus 3

Page 19: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh: Primal/Dual graph representations

Page 20: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh: Primal/Dual graph representations

Primal Voronoi/Dual Delaunay triangulation

Page 21: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Simplicial complexes: Building blocks (LEGO-type)

Page 22: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Sketching meshes: Pen computingMeshes for the masses.→ Difficult to design

http://www.sonycsl.co.jp/person/nielsen/PT/vteddy/vteddy-desc.html

Page 23: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Triangulation meshes:

Always possible in 2D (but difficult)

NOT Always possible in 3D!!! (require additional Steiner points)

Schonhardt’s polyhedron Chazelle’s polyhedron

Untetrahedralizable Objects

Page 24: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Meshes: Procedural modeling/ city(buildings)

Page 25: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

L-system (Lindenmayer) process

Fibonacci's sequences

Grammar, language, parsing, etc.

Page 26: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

L-system (Lindenmayer) process / LOGO

Page 27: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Object Oriented Graphics Library (OOGL) / OFF format

Geomview.org viewer

Data-structures for meshes: Indexed face list(This is the PPM equivalent for 3D objects)

Page 28: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Data-structures for meshes: Indexed face list

→ If we change vertex coordinates, all faces updated simultaneously !

Page 29: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Optimizing bandwidth: Triangle/quad strips

Compress mesh vertices→ Compress mesh connectivity

Bunny with 150 strips

Page 30: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Many data-structures for meshes....

Winged edgesHalf edges Quad edges

Winged edgesHalf edges Quad edges

Page 31: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

(Discrete) Laplacian smoothing on meshes

Page 32: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Surface subdivision: Refining→ Limit surface is smooth

Page 33: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Surface subdivision: Dr Loop scheme

New vertex creation Vertex relocation

Simplified to

Page 34: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Limit position, smoothness properties

Page 35: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Kobbelt's subdivision (+edge flipping)

Page 36: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Mesh subdivision: Combinatorial explosion !

Page 37: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

RemeshingDecimating meshMesh simplification

Page 38: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Progressive mesh representations

Level of details/streaming...

Page 39: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Parameterization and texture mapping

Image texture is 2D

Page 40: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

Parameterization and texture mapping

Conformal mapping(preserve angles)

Minimize distortion

Atlas

Page 41: (slides 8) Visual Computing: Geometry, Graphics, and Vision

© Frank Nielsen 2011

H- and V- representations of polytopes

Half-spaces representation

Vertex representation (convex hull)

http://www.math.tu-berlin.de/polymake/index.html