: Mesh Processing. Chapter 2

Size: px
Start display at page:

Download ": Mesh Processing. Chapter 2"

Transcription

1 : Mesh Processing Chapter 2

2 Data Structures Polygon/Triangle Soup Indexed Polygon/Triangle Set Winged-Edge Half-Edge Directed-Edge

3 List of faces Polygon Soup Each face represented independently If polygon soup, vertex count per face Polygon Soup: Polygons F k 1 : x 11, y 11, z 11,, x 1k1, y 1k1, z 1k1 k 2 : x 21, y 21, z 21,, x 2k1, y 2k1, z 2k1 k F : x F1, y F1, z F1,, x FkF, y FkF, z FkF Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex? (E-F+V=2-2g)

4 List of faces Triangle Soup Each face represented independently Triangle Soup: Triangles F x 11, y 11, z 11, x 12, y 12, z 12, x 13, y 13, z 13 x 21, y 21, z 21, x 22, y 22, z 22, x 23, y 23, z 23 x F1, y F1, z F1, x F2, y F2, z F2, x F3, y F3, z F3 Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex?

5 Polygon/Triangle Soup Advantage: General Disadvantages: Redundant storage No (chance for) connectivity information [Polygon] variable-size data structures

6 Structure of Meshes Common: Connected (small # of connected components) Two-manifolds Water-Tight (?) Orientable (?) Triangle meshes (?)

7 Indexed Polygon Set (Take 1) Lists of vertices, faces Each vertex stores geometry Each face points to its vertices Vertex List: Vertices V x 11, y 11, z 11 x V1, y V1, z V1 Polygon List: Polygons F k 1 : v 11,, v 1k1 k F : v F1,, v FkF Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex?

8 Indexed Triangles Set (Take 1) Lists of vertices, faces Each vertex stores geometry Each face points to its vertices Vertex List: Vertices V x 11, y 11, z 11 x V1, y V1, z V1 Triangle List: Triangles F v 11, v 12, v 13 v F1, v F2, v F3 Q: If the mesh is manifold with low genus, what is the storage cost, per vertex?

9 Indexed Triangles Set (Take 1) Lists of vertices, faces Each vertex stores geometry Each face points to its vertices Vertex List: Vertices V x 11, y 11, z 11 x V1, y V1, z V1 Triangle List: Triangles F v 11, v 12, v 13 v F1, v F2, v F3 Q: If the mesh is completely disconnected, what is the storage cost, per vertex?

10 Indexed Polygon/Triangle Set (Take 1) Advantage: Reduced storage Disadvantages: Doesn t leverage manifold structure No (explicit) connectivity information Can t store per-edge information [Polygon] variable-size data structures Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes

11 Indexed Triangles Set (Take 2) Lists of vertices, faces Each vertex stores geometry + neighbor face Each face points to its vertices + neighbor faces Vertex List: Vertices V x 11, y 11, z 11 ; f 1 x V1, y V1, z V1 ; f V Triangle List: Triangles F i 11, i 12, i 13 ; f 11, f 12, f 13 i F1, i F2, i F3 ; f F1, f F2, f F3 Q: If the mesh is manifold with low genus, what is the storage cost, per vertex?

12 Indexed Triangles Set (Take 2) Q: Given a vertex, how do we enumerate all of the vertices in its one-ring?

13 Indexed Polygon/Triangle Set (Take 2) Advantages: Reduced storage Explicit connectivity information Disadvantages: Partially leverages manifold structure Messy connectivity information Can t store per-edge information [Polygon] variable-size data structures Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes Indexed P. Set (2) Yes/No Yes Yes Yes

14 Winged-Edge Mesh Lists of vertices, edges, faces Each vertex stores geometry + neighbor edge Each face stores neighbor edge Each edge points to vertices (x2), faces (x2), next edge (x2), and previous edge (x2) Vertex List: Vertices V x 11, y 11, z 11 ; e 1 x V1, y V1, z V1 ; e V Edge List: Edges E v 11, v 12 ; f 11, f 12 ; n 11, n 12, p 11, p 12 v E1, v E2 ; f E1, f E2 ; n E1, n E2, p E1, p E2 Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex? Face List: Faces F e 1 e F

15 Winged-Edge Mesh

16 Winged-Edge Mesh Example: e 4 e 1 e 3 e 5 e 7 e 2 e 6

17 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

18 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

19 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

20 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

21 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

22 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

23 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

24 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

25 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

26 Winged-Edge Mesh Example: Find vertices adjacent to v 2. e 4 e 1 e 3 e 5 e 7 e 2 e 6

27 Winged-Edge Mesh Advantages: Reduced storage Explicit connectivity information Can store per-edge information Fixed-size data-structures Disadvantage: Messy connectivity information Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes Indexed P. Set (2) Yes/No Yes Yes Yes Winged-Edge No Yes Yes Yes

28 Half-Edge Mesh (Take 1) Lists of vertices, half-edges, faces Each vertex stores geometry + half-edge Each face stores neighbor half-edge Each half-edge points to start vertex, face, opposite/next/previous half-edge Vertex List: Vertices V x 11, y 11, z 11 ; e 1 x V1, y V1, z V1 ; e V Half-Edge List: Edges E v 1 ; f 1 ; o 1, n 1, p 1 v E ; f E ; o E, n E, p E Face List: Faces F e 1 Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex? e F

29 Half-Edge Mesh (Take 1) Q: Given a vertex, how do we enumerate all of the vertices in its one-ring?

30 Half-Edge Mesh (Take 1) Advantages: Reduced storage Connectivity information is easy Fixed-size data structures Disadvantage: Cannot store per-edge information Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes Indexed P. Set (2) Yes/No Yes Yes Yes Winged-Edge No Yes Yes Yes Half-Edge (1) No No Yes Yes

31 Half-Edge Mesh (Take 2) Lists of vertices, pairs of half-edges, faces Each vertex stores geometry + half-edge Each face stores neighbor half-edge Each half-edge points to start vertex, face, and next half-edge Vertex List: Vertices V x 11, y 11, z 11 ; e 1 x V1, y V1, z V1 ; e V Half-Edge List: Edges E v 1 ; f 1 ; n 1 v E ; f E ; n E Face List: Faces F e 1 Q: If the mesh is manifold, triangular with low genus, what is the storage cost, per vertex? e F

32 Half-Edge Mesh (Take 2) Q: Given a vertex, how do we enumerate all of the vertices in its one-ring?

33 Half-Edge Mesh (Take 2) Advantage: Reduced storage Connectivity information is easy Can store per-edge information Fixed-size data structures Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes Indexed P. Set (2) Yes/No Yes Yes Yes Winged-Edge No Yes Yes Yes Half-Edge (1) No No Yes Yes Half-Edge (2) No No Yes Yes

34 Directed-Edge Triangle Mesh Lists of vertices, half-edges Each vertex stores geometry + half-edge Each half-edge points to start vertex and opposite half-edge Vertex List: Vertices V x 11, y 11, z 11 ; e 1 x V1, y V1, z V1 ; e V Half-Edge List: Edges E v 1 ; o 1 v E ; o E Q: If the mesh is manifold with low genus, what is the storage cost, per vertex?

35 Directed-Edge Triangle Mesh Q: Given a vertex, how do we enumerate all of the vertices in its one-ring?

36 Directed-Edge Triangle Mesh Advantages: Reduced storage Connectivity information is easy Disadvantage: Cannot store per-edge information Non-Manifold Non-Orientable General Polygons Boundaries Indexed P. Set (1) Yes Yes Yes Yes Indexed P. Set (2) Yes/No Yes Yes Yes Winged-Edge No Yes Yes Yes Half-Edge (1) No No Yes Yes Half-Edge (2) No No Yes Yes Directed-Edge No Yes No No

Meshes. Mesh elements

Meshes. Mesh elements Meshes polygonal soup polygons specified one-by-one with no explicit information on shared vertices polygonal nonmanifold connectivity information is provided (which vertices are shared) no restrictions

More information

Geometry: 3D coordinates Attributes. e.g. normal, color, texture coordinate. Connectivity

Geometry: 3D coordinates Attributes. e.g. normal, color, texture coordinate. Connectivity Mesh Data Structures res Data Structures What should be stored? Geometry: 3D coordinates Attributes eg normal, color, texture coordinate Per vertex, per face, per edge Connectivity Adjacency relationships

More information

Lecture 3 Mesh. Dr. Shuang LIANG. School of Software Engineering Tongji University Spring 2013

Lecture 3 Mesh. Dr. Shuang LIANG. School of Software Engineering Tongji University Spring 2013 Lecture 3 Mesh Dr. Shuang LIANG School of Software Engineering Tongji University Spring 2013 Today s Topics Overview Mesh Acquisition Mesh Data Structures Subdivision Surfaces Today s Topics Overview Mesh

More information

polygon meshes polygon meshes representation

polygon meshes polygon meshes representation polygon meshes computer graphics polygon meshes 2009 fabio pellacini 1 polygon meshes representation which representation is good? often triangles/quads only will work on triangles compact efficient for

More information

Polygonal Mesh. Geometric object made of vertices, edges and faces. Faces are polygons. Polyhedron. Triangular mesh Quad mesh. Pyramid Cube Sphere (?

Polygonal Mesh. Geometric object made of vertices, edges and faces. Faces are polygons. Polyhedron. Triangular mesh Quad mesh. Pyramid Cube Sphere (? 1 Mesh Modeling Polygonal Mesh Geometric object made of vertices, edges and faces Polyhedron Pyramid Cube Sphere (?) Can also be 2D (although much less interesting) Faces are polygons Triangular mesh Quad

More information

: Mesh Processing. Chapter 8

: Mesh Processing. Chapter 8 600.657: Mesh Processing Chapter 8 Handling Mesh Degeneracies [Botsch et al., Polygon Mesh Processing] Class of Approaches Geometric: Preserve the mesh where it s good. Volumetric: Can guarantee no self-intersection.

More information

Surface reconstruction Introduction. Florent Lafarge Inria Sophia Antipolis - Mediterranee

Surface reconstruction Introduction. Florent Lafarge Inria Sophia Antipolis - Mediterranee Surface reconstruction Introduction Florent Lafarge Inria Sophia Antipolis - Mediterranee Outline Contents Introduction Smooth/piecewise-smooth reconstruction methods Primitive-based reconstruction methods

More information

3D Mesh Compression in Open3DGC. Khaled MAMMOU

3D Mesh Compression in Open3DGC. Khaled MAMMOU 3D Mesh Compression in Open3DGC Khaled MAMMOU OPPORTUNITIES FOR COMPRESSION Indexed Face Set Geometry: positions Connectivity: of triangles Requires 192 bits per vertex! Redundancy Indexes repeated multiple

More information

Convex Hulls (3D) O Rourke, Chapter 4

Convex Hulls (3D) O Rourke, Chapter 4 Convex Hulls (3D) O Rourke, Chapter 4 Outline Polyhedra Polytopes Euler Characteristic (Oriented) Mesh Representation Polyhedra Definition: A polyhedron is a solid region in 3D space whose boundary is

More information

Saab. Kyle McDonald. Polygon Meshes

Saab. Kyle McDonald. Polygon Meshes Saab Kyle McDonald Polygon Meshes Siddhartha Chaudhuri http://www.cse.iitb.ac.in/~cs749 What is a polygon mesh? Like a point cloud, it is a discrete sampling of a surface... but, it adds linear (flat)

More information

CS 532: 3D Computer Vision 12 th Set of Notes

CS 532: 3D Computer Vision 12 th Set of Notes 1 CS 532: 3D Computer Vision 12 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Meshes Slides

More information

Notation. Triangle meshes. Topology/geometry examples. Validity of triangle meshes. n T = #tris; n V = #verts; n E = #edges

Notation. Triangle meshes. Topology/geometry examples. Validity of triangle meshes. n T = #tris; n V = #verts; n E = #edges Notation n T = #tris; n V = #verts; n E = #edges Triangle meshes Euler: n V n E + n T = 2 for a simple closed surface and in general sums to small integer argument for implication that n T :n E :n V is

More information

Mesh Basics: Definitions, Topology & Data Structures. Standard Graph Definitions

Mesh Basics: Definitions, Topology & Data Structures. Standard Graph Definitions Mesh : Definitions, Topology & Data Structures 1 Standard Graph Definitions G = V = vertices = {A,B,C,D,E,F,G,H,I,J,K,L} E = edges = {(A,B),(B,C),(C,D),(D,E),(E,F),(F,G), (G,H),(H,A),(A,J),(A,G),(B,J),(K,F),

More information

13 - Meshes. Acknowledgement: Enrico Puppo. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo

13 - Meshes. Acknowledgement: Enrico Puppo. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo 13 - Meshes Acknowledgement: Enrico Puppo What is a mesh? A surface made of polygonal faces glued at common edges Origin of Meshes In nature, meshes arise in a variety of contexts: Cells in organic tissues

More information

Mesh Repairing and Simplification. Gianpaolo Palma

Mesh Repairing and Simplification. Gianpaolo Palma Mesh Repairing and Simplification Gianpaolo Palma Mesh Repairing Removal of artifacts from geometric model such that it becomes suitable for further processing Input: a generic 3D model Output: (hopefully)a

More information

Computer Graphics. Prof. Feng Liu. Fall /14/2016

Computer Graphics. Prof. Feng Liu. Fall /14/2016 Computer Graphics Prof. Feng Liu Fall 2016 http://www.cs.pdx.edu/~fliu/courses/cs447/ 11/14/2016 Last time Texture Mapping 2 Mid-term 3 Today Mesh and Modeling 4 The Story So Far We ve looked at images

More information

Meshes. CS4620/5620: Lecture 17. Announcements. Prelim next Thursday. In the evening, closed book Including material of this week.

Meshes. CS4620/5620: Lecture 17. Announcements. Prelim next Thursday. In the evening, closed book Including material of this week. CS4620/5620: Lecture 17 Meshes 1 Announcements Prelim next Thursday In the evening, closed book Including material of this week 2 Representations for triangle meshes Separate triangles Indexed triangle

More information

Level of Details in Computer Rendering

Level of Details in Computer Rendering Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

More information

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles Mesh Simplification Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies for efficient

More information

Meshes and Manifolds. Computer Graphics CMU /15-662

Meshes and Manifolds. Computer Graphics CMU /15-662 Meshes and Manifolds Computer Graphics CMU 15-462/15-662 Fractal Quiz Last time: overview of geometry Many types of geometry in nature Geometry Demand sophisticated representations Two major categories:

More information

CS 177 Homework 1. Julian Panetta. October 22, We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F:

CS 177 Homework 1. Julian Panetta. October 22, We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F: CS 177 Homework 1 Julian Panetta October, 009 1 Euler Characteristic 1.1 Polyhedral Formula We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F: V E + F = 1 First,

More information

Triangle meshes COMP575/COMP 770

Triangle meshes COMP575/COMP 770 Triangle meshes COMP575/COMP 770 1 [Foley et al.] Notation n T = #tris; n V = #verts; n E = #edges Euler: n V n E + n T = 2 for a simple closed surface and in general sums to small integer argument for

More information

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass University of California, Davis, USA http://www.cs.ucdavis.edu/~koehl/ims2017/ What is a shape? A shape is a 2-manifold with a Riemannian

More information

Mgr. ubomíra Tomková GEOMETRY

Mgr. ubomíra Tomková GEOMETRY GEOMETRY NAMING ANGLES: any angle less than 90º is an acute angle any angle equal to 90º is a right angle any angle between 90º and 80º is an obtuse angle any angle between 80º and 60º is a reflex angle

More information

CS Object Representation. Aditi Majumder, CS 112 Slide 1

CS Object Representation. Aditi Majumder, CS 112 Slide 1 CS 112 - Object Representation Aditi Majumder, CS 112 Slide 1 What is Graphics? Modeling Computer representation of the 3D world Analysis For efficient rendering For catering the model to different applications..

More information

Handles. The justification: For a 0 genus triangle mesh we can write the formula as follows:

Handles. The justification: For a 0 genus triangle mesh we can write the formula as follows: Handles A handle in a 3d mesh is a through hole. The number of handles can be extracted of the genus of the 3d mesh. Genus is the number of times we can cut 2k edges without disconnecting the 3d mesh.

More information

Mesh Representations & Geometry Processing

Mesh Representations & Geometry Processing Lecture 10/11: Mesh Representations & Geometry Processing Computer Graphics and Imaging UC Berkeley A Small Triangle Mesh 8 vertices, 12 triangles A Large Triangle Mesh David Digital Michelangelo Project

More information

Orientable Closed/ Boundary-less 2-manifold This wireframe study of a chalice was painted by the Italian Renaissance artist Paolo Uccello around 1460. Today 3D polygonal meshes are the dominant representation

More information

Curve Corner Cutting

Curve Corner Cutting Subdivision ision Techniqueses Spring 2010 1 Curve Corner Cutting Take two points on different edges of a polygon and join them with a line segment. Then, use this line segment to replace all vertices

More information

Triangle meshes 2. CS 4620 Lecture Steve Marschner. Cornell CS4620 Fall 2018 Lecture 3

Triangle meshes 2. CS 4620 Lecture Steve Marschner. Cornell CS4620 Fall 2018 Lecture 3 Triangle meshes 2 CS 4620 Lecture 3 2018 Steve Marschner 1 Practical encoding of meshes OBJ file format widely used format for polygon meshes supports the usual attributes: position, normal, texture coordinate

More information

Introduction to Geometry

Introduction to Geometry Introduction to Geometry Objective A: Problems involving lines and angles Three basic concepts of Geometry are: Points are a single place represented by a dot A Lines are a collection of points that continue

More information

Mesh and Mesh Simplification

Mesh and Mesh Simplification Slide Credit: Mirela Ben-Chen Mesh and Mesh Simplification Qixing Huang Mar. 21 st 2018 Mesh DataStructures Data Structures What should bestored? Geometry: 3D coordinates Attributes e.g. normal, color,

More information

Modeling. Simulating the Everyday World

Modeling. Simulating the Everyday World Modeling Simulating the Everyday World Three broad areas: Modeling (Geometric) = Shape Animation = Motion/Behavior Rendering = Appearance Page 1 Geometric Modeling 1. How to represent 3d shapes Polygonal

More information

Triangle meshes. Computer Graphics CSE 167 Lecture 8

Triangle meshes. Computer Graphics CSE 167 Lecture 8 Triangle meshes Computer Graphics CSE 167 Lecture 8 Examples Spheres Andrzej Barabasz Approximate sphere Rineau & Yvinec CGAL manual Based on slides courtesy of Steve Marschner 2 Examples Finite element

More information

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece Parallel Computation of Spherical Parameterizations for Mesh Analysis Th. Athanasiadis and I. Fudos, Greece Introduction Mesh parameterization is a powerful geometry processing tool Applications Remeshing

More information

Geometric Modeling in Graphics

Geometric Modeling in Graphics Geometric Modeling in Graphics Part 1: Polygonal Meshes Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Geometric object Set of connected points in space Usually inside Euclidean space (orthonormal

More information

Triangle meshes I. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2017

Triangle meshes I. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2017 Triangle meshes I CS 4620 Lecture 2 2017 Steve Marschner 1 spheres Andrzej Barabasz approximate sphere Rineau & Yvinec CGAL manual 2017 Steve Marschner 2 finite element analysis PATRIOT Engineering 2017

More information

Joint Advanced Student School 2007 Martin Dummer

Joint Advanced Student School 2007 Martin Dummer Sierpiński-Curves Joint Advanced Student School 2007 Martin Dummer Statement of the Problem What is the best way to store a triangle mesh efficiently in memory? The following points are desired : Easy

More information

Subdivision Curves and Surfaces: An Introduction

Subdivision Curves and Surfaces: An Introduction Subdivision Curves and Surfaces: An Introduction Corner Cutting De Casteljau s and de Boor s algorithms all use corner-cutting procedures. Corner cutting can be local or non-local. A cut is local if it

More information

Cross-Parameterization and Compatible Remeshing of 3D Models

Cross-Parameterization and Compatible Remeshing of 3D Models Cross-Parameterization and Compatible Remeshing of 3D Models Vladislav Kraevoy Alla Sheffer University of British Columbia Authors Vladislav Kraevoy Ph.D. Student Alla Sheffer Assistant Professor Outline

More information

Triangle meshes I. CS 4620 Lecture 2

Triangle meshes I. CS 4620 Lecture 2 Triangle meshes I CS 4620 Lecture 2 2014 Steve Marschner 1 spheres Andrzej Barabasz approximate sphere Rineau & Yvinec CGAL manual 2014 Steve Marschner 2 finite element analysis PATRIOT Engineering 2014

More information

Algorithms for GIS. Spatial data: Models and representation (part I) Laura Toma. Bowdoin College

Algorithms for GIS. Spatial data: Models and representation (part I) Laura Toma. Bowdoin College Algorithms for GIS Spatial data: Models and representation (part I) Laura Toma Bowdoin College Outline Spatial data in GIS applications Point data Networks Terrains Planar maps and meshes Data structures

More information

Convex Polygon Generation

Convex Polygon Generation Convex Polygon Generation critterai.org /projects/nmgen_study/polygen.html This page describes the forth stage in building a navigation mesh, the generation of convex polygons from the simple polygons

More information

Solid Modeling. Ron Goldman Department of Computer Science Rice University

Solid Modeling. Ron Goldman Department of Computer Science Rice University Solid Modeling Ron Goldman Department of Computer Science Rice University Solids Definition 1. A model which has a well defined inside and outside. 2. For each point, we can in principle determine whether

More information

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Copyright 2010 Gotsman, Pauly Page 1 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies

More information

Random volumes from matrices

Random volumes from matrices Random volumes from matrices Naoya Umeda (Kyoto Univ.) 2016.2.15 @ 京都産業大学益川塾 Based on the work with Masafumi Fukuma and Sotaro Sugishita (Kyoto Univ.) [arxiv:1503.08812][jhep 1507 (2015) 088] Random volumes

More information

CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher

CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher http://alice.loria.fr/index.php/publications.html?redirect=0&paper=vsdm@2011&author=levy CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher µ R 3 µ R 2 http://upload.wikimedia.org/wikipedia/commons/b/bc/double_torus_illustration.png

More information

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations Subdivision Surfaces Adam Finkelstein Princeton University COS 426, Spring 2003 Course Syllabus I. Image processing II. Rendering III. Modeling IV. Animation Image Processing (Rusty Coleman, CS426, Fall99)

More information

Surface Topology ReebGraph

Surface Topology ReebGraph Sub-Topics Compute bounding box Compute Euler Characteristic Estimate surface curvature Line description for conveying surface shape Extract skeletal representation of shapes Morse function and surface

More information

Advanced Computer Graphics

Advanced Computer Graphics Advanced Computer Graphics Lecture 2: Modeling (1): Polygon Meshes Bernhard Jung TU-BAF, Summer 2007 Overview Computer Graphics Icon: Utah teapot Polygon Meshes Subdivision Polygon Mesh Optimization high-level:

More information

Outline. Visualization Discretization Sampling Quantization Representation Continuous Discrete. Noise

Outline. Visualization Discretization Sampling Quantization Representation Continuous Discrete. Noise Fundamentals Data Outline Visualization Discretization Sampling Quantization Representation Continuous Discrete Noise 2 Data Data : Function dependent on one or more variables. Example Audio (1D) - depends

More information

Alex Li 11/20/2009. Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk

Alex Li 11/20/2009. Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk Alex Li 11/20/2009 Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk duction Overview of Lagrangian of Topological s Altering the Topology 2 Presents a method for accurately tracking the moving surface

More information

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface.

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface. Example: Loop Scheme What makes a good scheme? recursive application leads to a smooth surface 200, Denis Zorin Example: Loop Scheme Refinement rule 200, Denis Zorin Example: Loop Scheme Two geometric

More information

Mesh data structures. Abstract. 1 Introduction. 2 Method. 2.1 Implement the half edge mesh LIU TNM

Mesh data structures. Abstract. 1 Introduction. 2 Method. 2.1 Implement the half edge mesh LIU TNM Mesh data structures Fredrik Salomonsson fresa517@student.liu.se LIU TNM079 2010-05-28 Abstract When dealing with meshes containing large amount of triangles or quadrilaterals one need to have some kind

More information

Today. Types of graphs. Complete Graphs. Trees. Hypercubes.

Today. Types of graphs. Complete Graphs. Trees. Hypercubes. Today. Types of graphs. Complete Graphs. Trees. Hypercubes. Complete Graph. K n complete graph on n vertices. All edges are present. Everyone is my neighbor. Each vertex is adjacent to every other vertex.

More information

Computing 3D Geometry Directly From Range Images

Computing 3D Geometry Directly From Range Images Computing 3D Geometry Directly From Range Images Sarah F. Frisken and Ronald N. Perry Mitsubishi Electric Research Laboratories Geometry from Range Data A Classic Approach Subject Range images Range surfaces

More information

Introduction to Solid Modeling

Introduction to Solid Modeling Introduction to Solid Modeling Hongxin Zhang and Jieqing Feng 2007-01-15 State Key Lab of CAD&CG Zhejiang University Contents Solid Representations: An Introduction Wireframe Models Boundary Representations

More information

Polygonal Meshes. 3D Object Representations. 3D Object Representations. 3D Polygonal Mesh. 3D Polygonal Mesh. Geometry background

Polygonal Meshes. 3D Object Representations. 3D Object Representations. 3D Polygonal Mesh. 3D Polygonal Mesh. Geometry background 3D Object Representations Polygonal Meshes Adam Finkelstein & Tim Weyrich Princeton University C0S 426, Spring 2008 Points o Range image o Point cloud Surfaces o Polygonal mesh o Subdivision o Parametric

More information

B-rep for Triangle Meshes. Gino van den Bergen Dtecta

B-rep for Triangle Meshes. Gino van den Bergen Dtecta B-rep for Triangle Meshes Gino van den Bergen Dtecta To the memory of Jan Paul van Waveren (1977-2017) B-reps in Games Mesh cutting, e.g. Woodcutting in Farming Simulator 15 and Farming Simulator 17. B-reps

More information

The Quality Of 3D Models

The Quality Of 3D Models The Quality Of 3D Models Problems and Solutions for Applications Post-Design Fathi El-Yafi Senior Product Engineer Product Department of EXA Corporation 1 : Overview Status Problems Identified Defect Sources

More information

Scanning Real World Objects without Worries 3D Reconstruction

Scanning Real World Objects without Worries 3D Reconstruction Scanning Real World Objects without Worries 3D Reconstruction 1. Overview Feng Li 308262 Kuan Tian 308263 This document is written for the 3D reconstruction part in the course Scanning real world objects

More information

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005 A Developer s Survey of Polygonal Simplification algorithms CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005 Some questions to ask Why simplification? What are my models like? What matters

More information

3 Dimensional Geometry Chapter Questions. 1. What are the differences between prisms and pyramids? Cylinders and cones?

3 Dimensional Geometry Chapter Questions. 1. What are the differences between prisms and pyramids? Cylinders and cones? 3 Dimensional Geometry Chapter Questions 1. What are the differences between prisms and pyramids? Cylinders and cones? 2. What is volume and how is it found? 3. How are the volumes of cylinders, cones

More information

Surface Simplification Using Quadric Error Metrics

Surface Simplification Using Quadric Error Metrics Surface Simplification Using Quadric Error Metrics Authors: Michael Garland & Paul Heckbert Presented by: Niu Xiaozhen Disclaimer: Some slides are modified from original slides, which were designed by

More information

Isotopic Approximation within a Tolerance Volume

Isotopic Approximation within a Tolerance Volume Isotopic Approximation within a Tolerance Volume Manish Mandad David Cohen-Steiner Pierre Alliez Inria Sophia Antipolis - 1 Goals and Motivation - 2 Goals and Motivation Input: Tolerance volume of a surface

More information

CS3621 Midterm Solution (Fall 2005) 150 points

CS3621 Midterm Solution (Fall 2005) 150 points CS362 Midterm Solution Fall 25. Geometric Transformation CS362 Midterm Solution (Fall 25) 5 points (a) [5 points] Find the 2D transformation matrix for the reflection about the y-axis transformation (i.e.,

More information

Geometric Modeling Based on Polygonal Meshes: OpenMesh

Geometric Modeling Based on Polygonal Meshes: OpenMesh Geometric Modeling Based on Polygonal Meshes: OpenMesh Prof. Dr. Mario Botsch Computer Graphics & Geometry Processing 2 OpenMesh 1.1.0 Developed at RWTH Aachen C++ library for polygonal / triangle meshes

More information

CS 283: Assignment 1 Geometric Modeling and Mesh Simplification

CS 283: Assignment 1 Geometric Modeling and Mesh Simplification CS 283: Assignment 1 Geometric Modeling and Mesh Simplification Ravi Ramamoorthi 1 Introduction This assignment is about triangle meshes as a tool for geometric modeling. As the complexity of models becomes

More information

GEOMETRY BASIC GEOMETRICAL IDEAS. 3) A point has no dimensions (length, breadth or thickness).

GEOMETRY BASIC GEOMETRICAL IDEAS. 3) A point has no dimensions (length, breadth or thickness). CLASS 6 - GEOMETRY BASIC GEOMETRICAL IDEAS Geo means Earth and metron means Measurement. POINT 1) The most basic shape in geometry is the Point. 2) A point determines a location. 3) A point has no dimensions

More information

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees Geometry Vocabulary acute angle-an angle measuring less than 90 degrees angle-the turn or bend between two intersecting lines, line segments, rays, or planes angle bisector-an angle bisector is a ray that

More information

Physically-Based Modeling and Animation. University of Missouri at Columbia

Physically-Based Modeling and Animation. University of Missouri at Columbia Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids

More information

EECS 487: Interactive Computer Graphics

EECS 487: Interactive Computer Graphics EECS 487: Interactive Computer Graphics Lecture 36: Polygonal mesh simplification The Modeling-Rendering Paradigm Modeler: Modeling complex shapes no equation for a chair, face, etc. instead, achieve complexity

More information

THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION

THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION Dan Englesson danen344@student.liu.se Sunday 12th April, 2011 Abstract In this lab assignment which was done in the course TNM079, Modeling and animation,

More information

Adjacency Data Structures

Adjacency Data Structures Last Time? Simple Transformations Adjacency Data Structures material from Justin Legakis Classes of Transformations Representation homogeneous coordinates Composition not commutative Orthographic & Perspective

More information

An Introduction to Geometric Modeling using Polygonal Meshes

An Introduction to Geometric Modeling using Polygonal Meshes An Introduction to Geometric Modeling using Polygonal Meshes Joaquim Madeira Version 0.2 October 2014 U. Aveiro, October 2014 1 Main topics CG and affine areas Geometric Modeling Polygonal meshes Exact

More information

Shading Techniques Denbigh Starkey

Shading Techniques Denbigh Starkey Shading Techniques Denbigh Starkey 1. Summary of shading techniques 2 2. Lambert (flat) shading 3 3. Smooth shading and vertex normals 4 4. Gouraud shading 6 5. Phong shading 8 6. Why do Gouraud and Phong

More information

Luiz Fernando Martha André Pereira

Luiz Fernando Martha André Pereira IRSES Project TUG - Graz, Austria June 2014 Numerical simulation in technical sciences Computer Graphics for Engineering Luiz Fernando Martha André Pereira Speakers A little bit about us Research Group

More information

Triangle meshes I. CS 4620 Lecture Kavita Bala (with previous instructor Marschner) Cornell CS4620 Fall 2015 Lecture 2

Triangle meshes I. CS 4620 Lecture Kavita Bala (with previous instructor Marschner) Cornell CS4620 Fall 2015 Lecture 2 Triangle meshes I CS 4620 Lecture 2 1 Shape http://fc00.deviantart.net/fs70/f/2014/220/5/3/audi_r8_render_by_smiska333-d7u9pjt.jpg spheres Andrzej Barabasz approximate sphere Rineau & Yvinec CGAL manual

More information

Parameterization with Manifolds

Parameterization with Manifolds Parameterization with Manifolds Manifold What they are Why they re difficult to use When a mesh isn t good enough Problem areas besides surface models A simple manifold Sphere, torus, plane, etc. Using

More information

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces Using Semi-Regular 8 Meshes for Subdivision Surfaces Luiz Velho IMPA Instituto de Matemática Pura e Aplicada Abstract. Semi-regular 8 meshes are refinable triangulated quadrangulations. They provide a

More information

This controller extract information about Faces,Edges and Vertices of an Editable Mesh or Editable Poly object.

This controller extract information about Faces,Edges and Vertices of an Editable Mesh or Editable Poly object. Mesh Controller How to use: Filtering methods: Geometry: Pick Object: Reference Object: Use Sub-Object Selection: Use methods of : Search in: Vertex: Scalar Output: Vector Output: Matrix outputs: Edge

More information

Geometric Modeling. CSE 872 Fall TriangularMeshBasics parameterization. Scene-graph Objectrepresentations B-rep,CSG

Geometric Modeling. CSE 872 Fall TriangularMeshBasics parameterization. Scene-graph Objectrepresentations B-rep,CSG Geometric Modeling 1 Modeling TriangularMeshBasics parameterization Scene-graph Objectrepresentations B-rep,CSG Spatialorganizations i i Octree,kd-tree,BSP 2 How to represent objects/scenes meshes Scenegraphs

More information

Week 7 Convex Hulls in 3D

Week 7 Convex Hulls in 3D 1 Week 7 Convex Hulls in 3D 2 Polyhedra A polyhedron is the natural generalization of a 2D polygon to 3D 3 Closed Polyhedral Surface A closed polyhedral surface is a finite set of interior disjoint polygons

More information

Zipper Unfoldings of Polyhedral Complexes

Zipper Unfoldings of Polyhedral Complexes Zipper Unfoldings of Polyhedral Complexes Erik D. Demaine Martin L. Demaine Anna Lubiw Arlo Shallit Jonah L. Shallit Abstract We explore which polyhedra and polyhedral complexes can be formed by folding

More information

CSE 163: Assignment 2 Geometric Modeling and Mesh Simplification

CSE 163: Assignment 2 Geometric Modeling and Mesh Simplification CSE 163: Assignment 2 Geometric Modeling and Mesh Simplification Ravi Ramamoorthi 1 Introduction This assignment is about triangle meshes as a tool for geometric modeling. As the complexity of models becomes

More information

Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds

Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Block Meshes: Topologically Robust Shape Modeling with Graphs Embedded on 3-Manifolds Ergun Akleman a, Jianer Chen b, Jonathan L. Gross c a Departments of Visualization & Computer Science and Engineering,

More information

3D Object Representation. Michael Kazhdan ( /657)

3D Object Representation. Michael Kazhdan ( /657) 3D Object Representation Michael Kazhdan (601.457/657) 3D Objects How can this object be represented in a computer? 3D Objects This one? H&B Figure 10.46 3D Objects This one? H&B Figure 9.9 3D Objects

More information

Geometric Algorithms in Three Dimensions Tutorial. FSP Seminar, Strobl,

Geometric Algorithms in Three Dimensions Tutorial. FSP Seminar, Strobl, Geometric Algorithms in Three Dimensions Tutorial FSP Seminar, Strobl, 22.06.2006 Why Algorithms in Three and Higher Dimensions Which algorithms (convex hulls, triangulations etc.) can be generalized to

More information

Lesson 01 Polygon Basics 17. Lesson 02 Modeling a Body 27. Lesson 03 Modeling a Head 63. Lesson 04 Polygon Texturing 87. Lesson 05 NURBS Basics 117

Lesson 01 Polygon Basics 17. Lesson 02 Modeling a Body 27. Lesson 03 Modeling a Head 63. Lesson 04 Polygon Texturing 87. Lesson 05 NURBS Basics 117 Table of Contents Project 01 Lesson 01 Polygon Basics 17 Lesson 02 Modeling a Body 27 Lesson 03 Modeling a Head 63 Lesson 04 Polygon Texturing 87 Project 02 Lesson 05 NURBS Basics 117 Lesson 06 Modeling

More information

February Regional Geometry Team: Question #1

February Regional Geometry Team: Question #1 February Regional Geometry Team: Question #1 A = area of an equilateral triangle with a side length of 4. B = area of a square with a side length of 3. C = area of a regular hexagon with a side length

More information

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO Solid Modelling Graphics Systems / Computer Graphics and Interfaces 1 Solid Modelling In 2D, one set 2D line segments or curves does not necessarily form a closed area. In 3D, a collection of surfaces

More information

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Alexander Greß gress@cs.uni-bonn.de Reinhard Klein rk@cs.uni-bonn.de University of Bonn Institute of Computer Science II

More information

Study on Delaunay Triangulation with the Islets Constraints

Study on Delaunay Triangulation with the Islets Constraints Intelligent Information Management, 2010, 2, 375-379 doi:10.4236/iim.2010.26045 Published Online June 2010 (http://www.scirp.org/journal/iim) Study on Delaunay Triangulation with the Islets Constraints

More information

Subdivision Curves and Surfaces

Subdivision Curves and Surfaces Subdivision Surfaces or How to Generate a Smooth Mesh?? Subdivision Curves and Surfaces Subdivision given polyline(2d)/mesh(3d) recursively modify & add vertices to achieve smooth curve/surface Each iteration

More information

Advanced Graphics

Advanced Graphics 320491 Advanced Graphics Prof. Dr.-Ing. Lars Linsen Spring 2015 0. Introduction 320491: Advanced Graphics - Chapter 1 2 0.1 Syllabus 320491: Advanced Graphics - Chapter 1 3 Course Website http://www.faculty.jacobsuniversity.de/llinsen/teaching/320491.htm

More information

Half-edge Collapse Simplification Algorithm Based on Angle Feature

Half-edge Collapse Simplification Algorithm Based on Angle Feature International Conference on Automation, Mechanical Control and Computational Engineering (AMCCE 2015) Half-edge Collapse Simplification Algorithm Based on Angle Feature 1,2 JunFeng Li, 2 YongBo Chen, 3

More information

CLASSIFICATION OF SURFACES

CLASSIFICATION OF SURFACES CLASSIFICATION OF SURFACES JUSTIN HUANG Abstract. We will classify compact, connected surfaces into three classes: the sphere, the connected sum of tori, and the connected sum of projective planes. Contents

More information

Line segment intersection. Family of intersection problems

Line segment intersection. Family of intersection problems CG Lecture 2 Line segment intersection Intersecting two line segments Line sweep algorithm Convex polygon intersection Boolean operations on polygons Subdivision overlay algorithm 1 Family of intersection

More information

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati Subdivision Surfaces Surfaces Having arbitrary Topologies Tensor Product Surfaces Non Tensor Surfaces We can t find u-curves and v-curves in general surfaces General Subdivision Coarse mesh Subdivision

More information

Mesh Decimation. Mark Pauly

Mesh Decimation. Mark Pauly Mesh Decimation Mark Pauly Applications Oversampled 3D scan data ~150k triangles ~80k triangles Mark Pauly - ETH Zurich 280 Applications Overtessellation: E.g. iso-surface extraction Mark Pauly - ETH Zurich

More information