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

Slides:



Advertisements
Similar presentations
Overview of 3D Object Representations Thomas Funkhouser Princeton University C0S 597D, Fall 2003.
Advertisements

CSE554Extrinsic DeformationsSlide 1 CSE 554 Lecture 9: Extrinsic Deformations Fall 2012.
Adapted from Min Chen’s Presentation in Dagstuhl Seminar Enriching Volume Modelling with Scalar Fields Min Chen, Andrew S Winter, David Rodgman and.
Extended Gaussian Images
CS-378: Game Technology Lecture #5: Curves and Surfaces Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic,
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
DEFINING OBJECTS - 3D REPRESENTATIONS Surface representations Polygon tables 3D curves and curved surfaces Sweep representations Constructive solid geometry.
Graphics Graphics Korea University cgvr.korea.ac.kr 3D Object Representation 고려대학교 컴퓨터 그래픽스 연구실.
Shape from Contours and Multiple Stereo A Hierarchical, Mesh-Based Approach Hendrik Kück, Wolfgang Heidrich, Christian Vogelgsang.
HCI 530 : Seminar (HCI) Damian Schofield.
Asst. Prof. Yusuf Sahillioğlu
Advanced Computer Graphics (Spring 2006) COMS 4162, Lecture 8: Intro to 3D objects, meshes Ravi Ramamoorthi
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 4: 3D Objects and Meshes Ravi Ramamoorthi
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
Representing Geometry in Computer Graphics Rick Skarbez, Instructor COMP 575 September 18, 2007.
Feature Sensitive Surface Extraction from Volume Data Leif P. Kobbelt Mario Botsch Ulrich Schwanecke Hans-Peter Seidel Computer Graphics Group, RWTH-Aachen.
ENDS 375 Foundations of Visualization Geometric Representation 10/5/04.
Smooth Geometry Images Frank Losasso, Hugues Hoppe, Scott Schaefer, Joe Warren.
Introduction to Modeling. What is CG Modeling? Combination of Sculpting, Architecture, Drafting, and Painting. The core component of computer animation.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Curves and Surfaces (cont’) Amy Zhang. Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:
Volumetric and Blobby Objects Lecture 8 (Modelling)
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
Grid Generation.
3D Object Representations 2005, Fall. Course Syllabus Image Processing Modeling Rendering Animation.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
A Survey on FFD Reporter: Gang Xu Mar 15, Overview Volumn-based FFD Surface-based FFD Curve-based FFD Point-based FFD Accurate FFD Future Work Outline.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
2D/3D Shape Manipulation, 3D Printing Shape Representations Slides from Olga Sorkine February 20, 2013 CS 6501.
1 Surface Applications Fitting Manifold Surfaces To 3D Point Clouds, Cindy Grimm, David Laidlaw and Joseph Crisco. Journal of Biomechanical Engineering,
Quadratic Surfaces. SPLINE REPRESENTATIONS a spline is a flexible strip used to produce a smooth curve through a designated set of points. We.
1 Adding charts anywhere Assume a cow is a sphere Cindy Grimm and John Hughes, “Parameterizing n-holed tori”, Mathematics of Surfaces X, 2003 Cindy Grimm,
Geometric Modeling. Volumetric o Collection device obtains regular grid of measurement values Examples: CT, MRI, PET, Ultrasound o Values are interpreted/visualized.
CS559: Computer Graphics Lecture 24: Shape Modeling Li Zhang Spring 2010.
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
3D Object Representations
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
Geometric Modeling How to design a graphical model? How to create a digital description of a real-world object? Design Digitize.
GPH 338 Computer Animation Survey
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
1 CS 430/585 Computer Graphics I 3D Modeling: Subdivision Surfaces & Solid Modeling Week 9, Lecture 17 David Breen, William Regli and Maxim Peysakhov Geometric.
In the name of God Computer Graphics Bastanfard. Curve Function(2) Other method is approximate it using a poly-line. Just locate a set of points along.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall D Object Representations Greg Humphreys University of Virginia CS 445, Fall 2003.
Three-Dimensional Object Representation
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
In the name of God Computer Graphics. Introduction Modeling techniques modeling techniques managements Some renderings.
3D Object Representations 2011, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
Solid Modeling Dr. Scott Schaefer.
3D Object Representations. Introduction Line and circle and polygon algorithms- represented simple and smooth object. Some Natural object are neither.
Slide 1Lecture Fall ‘00 Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Introduction to Parametric Curve and Surface Modeling.
1 Spherical manifolds for hierarchical surface modeling Cindy Grimm.
Catalogs contain hundreds of millions of objects
3D MODELLING PART-3 Wikitechy.
Introduction to Graphics Modeling
3D Object Representations
3D Object Representation
© University of Wisconsin, CS559 Spring 2004
Introduction to Parametric Curve and Surface Modeling
3D Object Representation
Overview of Modeling 김성남.
Presentation transcript:

Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South B-C Global Edge Institute Tokyo Institute of Technology

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

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

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

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

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

Applications Medical Engineering Topography E-commerce Simulation Game & movies Art history 7

Geometry modeling pipeline 8

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

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

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

General definitions Implicit representation – The zero set of a scalar valued function F: – F called Kernel. Implicit representation of a circle 12

Examples in 2D Circle – Parametric representation – Implicit representation 13

Examples in 2D – arbitrary shape 14

Examples in 2D – arbitrary shape 15

Examples in 3D  Assignment 1 Sphere – Parametric representation – Implicit representation Cylinder – Parametric representation – Implicit representation 16

Parametric and implicit representations Main task – Choosing f (respectively F) for complex objects ? 17

Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy 18

Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy Piecewise representation 19 f1 f2 f3

Parametric representations Challenge – Complex shapes cannot be represented with a single function with sufficient accuracy Piecewise representation 20 f1 f2 f3

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Implicit representations Adaptive data structures 37

Others Volume representations – Implicit representations are also called volumetric methods 38

Others Point-based – Another type of a parameterized representation 39

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

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

Online resources – This course website: /cg_2009.php /cg_2009.php Other resources: – Courses on Geometry Processing using polygonal meshes Siggraph 2007 and Eurographics 2006 : – Alla Sheffer’s course on Digital Geometry Processing 42

B-splines – Source Wikipedia 43