Presentation is loading. Please wait.

Presentation is loading. Please wait.

Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South.

Similar presentations


Presentation on theme: "Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South."— Presentation transcript:

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


Download ppt "Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South."

Similar presentations


Ads by Google