Download presentation
Presentation is loading. Please wait.
Published byKarin Little Modified over 9 years ago
1
Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga hamid@img.cs.titech.ac.jp http://www.img.cs.titech.ac.jp/~hamid/ Office: South 6- 401B-C Global Edge Institute Tokyo Institute of Technology
2
Overview – Introduction – applications – Geometry processing pipeline – Surface representations – Parametric surface representations (Spline surfaces, subdivision surfaces, triangle meshes) – Implicit surface representations (Regular grids, adaptive data structures) – Summary (conversion methods) – Mesh data structures – Considerations when choosing a mesh data structure – List of faces, Adjacency matrix, Half Edge data structure, Directed Edges. – Mesh libraries – Summary 2
3
Creating CG contents – Design the scene Create the geometry of the objects – This defines the shape of the object: Spherical, cylindrical, More complex shape Add appearance to the objects – Color, texture, transparency, material properties, etc Define their behavior – How a human-like character will move in the scene. Put the objects into the scene – Position, rotation with respect to a world coordinate system Add lights to the scene – After all we can’t see without light !! Render – Define the rendering mode, 3
4
Creating CG contents – Design the scene Create the geometry of the objects – This defines the shape of the object: Spherical, cylindrical, More complex shape Add appearance to the objects – Color, texture, transparency, material properties, etc Define their behavior – How a human-like character will move in the scene. Put the objects into the scene – Position, rotation with respect to a world coordinate system Add lights to the scene – After all we can’t see without light !! Render – Define the rendering mode, 4
5
Geometry modeling / processing – Computerized modeling of the geometry of 3D shapes – Representation Simple geometric primitives (sphere, cylinder, cube, …) – Creation 3D scanning, modeling software, – Manipulation Editing, animation, – Analysis (feature extraction, matching, decomposition, …) 5
6
Discrete geometry processing (DGP) – Processing of discrete (polygonal mesh) models – Typically points and triangles Why discrete? – Simplicity – ease of description & transfer – Base data for rendering (software/hardware) – Input to most simulation/analysis tools – Output of most acquisition tools (CT, MRI, laser, etc.) 6
7
Applications Medical Engineering Topography E-commerce Simulation Game & movies Art history 7
8
Geometry modeling pipeline 8
9
Overview – Introduction – applications – Geometry processing pipeline – Surface representations – Parametric surface representations (Spline surfaces, subdivision surfaces, triangle meshes) – Implicit surface representations (Regular grids, adaptive data structures) – Summary (conversion methods) – Mesh data structures – Considerations when choosing a mesh data structure – List of faces, Adjacency matrix, Half Edge data structure, Directed Edges. – Mesh libraries – Summary 9
10
Surface representations – Parametric representations – Spline – Subdivision – Triangular meshes – Polygon soup – Implicit representations – Regular grids – Adaptive data structures Others: – Volume representations – Point-based Each representation has its particular strengths and weaknesses. 10
11
General definitions Parametric representation – is a parameterization domain 2D in case of surfaces (1D for curves) – S is the surface – Example of a circle 11
12
General definitions Implicit representation – The zero set of a scalar valued function F: – F called Kernel. Implicit representation of a circle 12
13
Examples in 2D Circle – Parametric representation – Implicit representation 13
14
Examples in 2D – arbitrary shape 14
15
Examples in 2D – arbitrary shape 15
16
Examples in 3D Assignment 1 Sphere – Parametric representation – Implicit representation Cylinder – Parametric representation – Implicit representation 16
17
Parametric and implicit representations Main task – Choosing f (respectively F) for complex objects ? 17
18
Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy 18
19
Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy Piecewise representation 19 f1 f2 f3
20
Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy Piecewise representation 20 f1 f2 f3
21
Parametric representation B-Spline - a 1D case (curves) – Define a knot vector ti a value between 0 and 1 ti <= t(i+1) (m+1) values – Define control points {P0, …., Pn} (n + 1) control points Degree p = m-n-1 21
22
B-spline (1D case) – continued – Define basis functions as: j =1, 2, …, p (recall p is the degree) – The B-spline is the curve defined: 22
23
B-spline: the 2D case B-Spline: – Standard representation for CAD systems – Used for surface representation and deformation – N i n (.): B-spline basis functions – n: the degree of f. – P ij R 3 are control points We need ( m + 1) x ( n + 1) points, they define the control grid. 23
24
Parametric representations Spline: – N i n (.): B-spline basis functions N i n (u)>=0 and SUM i (N i n (u)) = 1 Each surface point f(u, v) is a convex combination of the control points – The surface lies within the convex hull of the control grid. Each control point has local influence only – spline surfaces closely follow the control grid. – modeling surfaces by adjusting its control points. – More complicated topological structures Several patches CAD models consist of a huge collection of surface patches. 24
25
Parametric representations Subdivision surfaces – Generalization of spline surfaces. – They can represent surfaces of arbitrary topology – Generated by repeated refinement of the control mesh Subdivision surfaces are generated by an iterative refinement of a coarse control mesh 25
26
Parametric representations Subdivision surfaces – Generalization of spline surfaces. – Generated by repeated refinement of the control mesh – They can represent surfaces of arbitrary topology They are not restricted by topological or geometric constraints. – Inherent hierarchical structure allows for highly efficient algorithms – Restrictions: Surfaces so-called semi-regular subdivision connectivity Preprocess 26
27
Parametric representations Triangular meshes – A set of vertices V. – A set of triangular faces F connecting them. – Can be seen as a graph: Vertices graph nodes Faces connections between nodes (edges) Polygons (vertices + faces) 27
28
Parametric representations Triangular meshes – A set of vertices V. – A set of triangular faces F connecting them. – Can be seen as a graph: Vertices graph nodes Faces connections between nodes (edges) Polygons (vertices + faces) V: Vertices (X, Y, Z) F: Faces (V1, V2, V3) 28
29
Parametric representations Triangular meshes – This is a type of piecewise parametric (linear) surface representation because: – Each triangle defines, via barycentric parameterization, a linear segment of a piecewise linear surface representation: – Given a triangle [a, b, c] a point p inside the triangle can be defined by: 29
30
Others Fourier & wavelets – There are works based on Fourier OR wavelet representation of 3D shapes Suitable for filtering, smoothing,.. operations – [NOT covered in this lecture] 30
31
Implicit representations Definition – The surface is the zero-level of a scalar valued function F. – Different levels define different surfaces F(x) = 0.5 F(x) = 0 F(x) = -1, … – These are called level-sets – F(x) = 0 is the zero-level called also iso-surface 31
32
Implicit representations Examples of implicit functions – Inside-outside function F(x) = 0 if x is exactly on the surface F(x) = +1 if x is outside the surface F(x) = -1 if x is inside the surface +1 0 32
33
Implicit representations Examples of implicit functions – Distance function Maps each 3D point to its minimal distance to the surface – Signed distance function Same as distance function Positive outside the surface Negative inside p2 p1 33
34
Advantages of implicit representations Constructive Solid Geometry (CSG) operations – Complex objects constructed with Boolean operations of simple ones. – Can be computed with min and max combinations of the objects’ implicit functions. +--= 34
35
Implicit representations Issues – Enumerating points on an implicit surface Given a surface S represented by a function F: – Does a point x belong to S ? Given a surface S represented by a function F: – List all the 3D points that belong to S 35
36
Implicit representations Regular grids – Discretize the scalar field F with a sufficiently dense grid uniform scalar grid of sampled values – Problem of memory consumption when we want to represent the surface with very high details 36
37
Implicit representations Adaptive data structures 37
38
Others Volume representations – Implicit representations are also called volumetric methods 38
39
Others Point-based – Another type of a parameterized representation 39
40
Summary - Choosing a representation Splines and Subdivision surfaces – Suitable for CAD systems – Splines: Topological constraints Large number of patches to represent complex shapes – Subdivision surfaces Can represent surfaces of arbitrary topology Triangular meshes – The most flexible representation since they can represent any type of surface Implicit / volumetric representations – Suitable for CSG operations – Used in medical applications (CT scans), fluid simulation, … There are many efficient algorithms for converting from one transformation to another 40
41
Summary - Choosing a representation Splines and Subdivision surfaces – Suitable for CAD systems – Splines: Topological constraints Large number of patches to represent complex shapes – Subdivision surfaces Can represent surfaces of arbitrary topology Triangular / polygon meshes – The most flexible representation since they can represent any type of surface Implicit / volumetric representations – Suitable for CSG operations – Used in medical applications (CT scans), fluid simulation, … There are many efficient algorithms for converting from one transformation to another 41
42
Online resources – This course website: http://www.img.cs.titech.ac.jp/~hamid/courses/cg2009 /cg_2009.php http://www.img.cs.titech.ac.jp/~hamid/courses/cg2009 /cg_2009.php Other resources: – Courses on Geometry Processing using polygonal meshes Siggraph 2007 and Eurographics 2006 : http://www.agg.ethz.ch/publications/course_notes – Alla Sheffer’s course on Digital Geometry Processing http://www.cs.ubc.ca/~sheffa/dgp/ 42
43
B-splines – Source Wikipedia 43
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.