Compression and Streaming of Polygon Meshes

Total Page:16

File Type:pdf, Size:1020Kb

Compression and Streaming of Polygon Meshes Compression and Streaming of Polygon Meshes by Martin Isenburg A dissertation submitted to the faculty of the University of North Carolina at Chapel Hill in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science. Chapel Hill 2005 Approved by: Jack Snoeyink, Advisor Craig Gotsman, Reader Peter Lindstrom, Reader Dinesh Manocha, Committee Member Ming Lin, Committee Member ii iii ABSTRACT MARTIN ISENBURG: Compression and Streaming of Polygon Meshes (Under the direction of Jack Snoeyink) Polygon meshes provide a simple way to represent three-dimensional surfaces and are the de-facto standard for interactive visualization of geometric models. Storing large polygon meshes in standard indexed formats results in files of substantial size. Such formats allow listing vertices and polygons in any order so that not only the mesh is stored but also the particular ordering of its elements. Mesh compression rearranges vertices and polygons into an order that allows more compact coding of the incidence between vertices and predictive compression of their positions. Previous schemes were designed for triangle meshes and polygonal faces were triangulated prior to compression. I show that polygon models can be encoded more compactly by avoiding the initial triangulation step. I describe two compression schemes that achieve better compression by encoding meshes directly in their polygonal representation. I demonstrate that the same holds true for volume meshes by extending one scheme to hexahedral meshes. Nowadays scientists create polygonal meshes of incredible size. Ironically, com- pression schemes are not capable|at least not on common desktop PCs|to deal with giga-byte size meshes that need compression the most. I describe how to compress such meshes on a standard PC using an out-of-core approach. The compressed mesh allows streaming decompression with minimal memory requirements while providing seamless connectivity along the advancing decompression boundaries. I show that this type of mesh access allows the design of IO-efficient out-of-core mesh simplification algorithms. In contrast, the mesh access provided by today's indexed formats complicates sub- sequent processing because of their IO-inefficiency in de-referencing (in resolving all polygon to vertex references). These mesh formats were designed years ago and do not take into account that a mesh may not fit into main memory. When operating on large data sets that mostly reside on disk, the data access must be consistent with its layout. I extract the essence of our compressed format to design a general streaming format that provides concurrent access to coherently ordered elements while documenting their coherence. This eliminates the problem of IO-inefficient de-referencing. Furthermore, it allows to re-design mesh processing tasks to work as streaming, possibly pipelined, modules on large meshes, such as on-the-fly compression of simplified mesh output. iv v ACKNOWLEDGMENTS Five years have passed since I arrived in Chapel Hill and each one of them has been great. While I am super happy that my dissertation is now complete, I am also a little bit sad that my time here is coming to an end. Whenever asked why I had not yet defended my thesis, my supervisor would answer \Martin is just having too much fun." But he never mentioned that in fact he was to blame for that. After all, he was the one who made sure that those years were so much fun. So let me set the record straight. As a visiting student at UBC in 1996 I enrolled in the \Computational Geometry" class that was taught by then associate professor Jack Snoeyink. He excited all of us about the material and the final course project with Marie-Claude was my first \real research experience" with polygon meshes. Shortly afterward, Jack took me, academically speaking, under his wing. First, he helped me to get into the Masters program at UBC, then became my thesis advisor, and eventually brought me along to UNC, where he would ultimately guide me to complete my doctorate. Jack gave me the best guidance a student could hope for. He always had an open door when I needed advise but also let me do my thing when I was on a roll; yet he was immediately available when I ran into an unforeseen obstacle, wanted to share an exciting result, or simply needed reassurance that I was on the right track. He always encouraged me to pursue all opportunities, be it working for a summer in industry, spending time in other research labs, or attending academic meetings. He also knew to motivate me with the occasional conference trip to more \exotic" places. Jack always kept a good balance between hard work and good fun. There was time for a game of foosball, an ultimate match, or an evening in the brew pub. His support extended well beyond academic affairs. He helped me move from Vancouver to Chapel Hill, sent someone to the airport to pick me up, registered and drove me to the \unavoidable" GRE test in Greensboro, and much more. He also sprang into action to save our SIGGRAPH 2000 presentation virtually in the last minute with a high-speed cab ride back the hotel. Yes, I was having fun. Thank you for all this, Jack! vi There are two other people who directly contributed to the work presented here. Ste- fan Gumhold single-handedly implemented the Out-of-Core Mesh described in Chap- ter 7 and Peter Lindstrom wrote most of the streaming simplification algorithms de- scribed in Chapter 8 and the out-of-core mesh re-ordering tools from Chapter 9. I also want to thank Craig Gotsman who invited me to work for half a year with Stefan Gumhold at the Technion in Haifa in 2000. This cooperation was quite synergetic and resulted in a fun paper. I enjoyed many espressos that \Chaim" prepared for me in his office with his high-tech coffee maker. I also thank Pierre Alliez and Olivier Deviller who welcomed me to their group at INRIA Sophia-Antipolis and helped me in a thousand ways to get settled there. They are ultimately to blame that I now speak some basic French. I also thank Peter Lindstrom for being so excited about streaming and for inviting me to California for six month of enjoyable joint-work. Peter also did an excellent job in reviewing this manuscript and finding many little mistakes. Big thanks go to Anveesh, Miguel, and Adrian who lived for six month with my mattress in their hallway, to Michael North who stood with my name on a sign at RDU airport when I first arrived, to Zachi Karni who was a good friend during my time in Israel, to Ming for challenging me repeatedly with pointed questions during my defense, to Dinesh for not being too angry about me reading the \Daily Tar Heel" during his lectures, to Janet Jones for loaning me her antique furniture and for infinite patience despite my chronic slack with filing paperwork, to my co-workers at EAI, Intel, and Nvidia for making my work experiences in the \real-world" so enjoyable, to all the baristas around town that kept my research going with numerous free coffee refills, to my fellow students with whom I spent fun times in the department and in local coffee shops, bars, and parties around Chapel Hill and Carrboro, to Scott who has been a true friend and a great roommate in 20B Davie Circle for fun roadtrips and those \burned" week-old Driade pastries that kept me going under SIGGRAPH submission stress, to my childhood friends Marcus and Oliver for supplying me with hometown gossip, to all my fellow hikers on backpacking and hot spring trips in California and Oregon, to Henna who ironed the tie that made me look so distinguished during my defense talk, and to the five highly-educated scientists that it took to get it properly tied. And finally, big thanks go to my mom, my dad, and my sister for their everlasting love and support from far away. Sometimes weeks went by without a note from me during the crazy rush to meet some conference deadline. But they would always be there for me to relieve some of that stress, to share joyous moments of accomplishment, and to come for the occasional visit no matter where I happened to be. vii CONTENTS LIST OF FIGURES xi LIST OF TABLES xiii 1 Introduction 1 1.1 Compression . 3 1.2 Streaming . 5 1.3 Overview . 8 2 Mesh Compression 11 2.1 Preliminaries . 14 2.2 Arithmetic Coding . 14 2.3 Connectivity Compression . 15 2.4 Coding Planar Graphs . 17 2.5 Coding Triangle Mesh Connectivity . 20 2.6 Optimal Coding of Planar Triangulations . 25 2.7 Extensions to Polygonal Connectivity . 27 3 Edge-based Connectivity Coding 29 3.1 Encoding and Decoding . 30 3.2 Compression . 33 3.3 Quadrilateral Grids . 34 3.4 Coding Triangular and Quadrangular Meshes . 35 3.5 Coding Stripified Triangle Meshes . 36 3.5.1 Triangle Strips . 37 3.5.2 Encoding Connectivity and Stripification . 38 3.5.3 Encoding the Stripification separately . 42 3.6 Summary . 42 viii 3.7 Hindsights . 45 4 Degree-based Connectivity Coding 47 4.1 Coding with Vertex and Face Degrees . 48 4.2 Compressing with Duality Prediction . 50 4.2.1 Compressing Face Degrees . 52 4.2.2 Compressing Vertex Degrees . 53 4.2.3 Compressing Offsets and Indices . 53 4.3 Coding Non-Manifold Meshes . 53 4.4 Reducing the Number of Splits . 55 4.5 Counts and Invariants . 56 4.6 Results . 58 4.7 Splits and Split Offsets .
Recommended publications
  • Studio Toolkit for Flexibles 14 User Guide
    Studio Toolkit for Flexibles 14 User Guide 06 - 2015 Studio Toolkit for Flexibles Contents 1. Copyright Notice.......................................................................................................................................................................... 4 2. Introduction.....................................................................................................................................................................................6 2.1 About Studio....................................................................................................................................................................... 6 2.2 Workflow and Concepts................................................................................................................................................. 7 2.3 Quick-Start Tutorial...........................................................................................................................................................8 3. Creating a New Bag.................................................................................................................................................................12 3.1 Pillow Bags........................................................................................................................................................................13 3.1.1 Panel Order and Fin vs. Lap Seals.............................................................................................................14 3.2 Gusseted Bags.................................................................................................................................................................15
    [Show full text]
  • Mesh Compression
    Mesh Compression Dissertation der Fakult¨at f¨ur Informatik der Eberhard-Karls-Universit¨at zu T¨ubingen zur Erlangung des Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) vorgelegt von Dipl.-Inform. Stefan Gumhold aus Tubingen¨ Tubingen¨ 2000 Tag der m¨undlichen Qualifikation: 19.Juli 2000 Dekan: Prof. Dr. Klaus-J¨orn Lange 1. Berichterstatter: Prof. Dr.-Ing. Wolfgang Straßer 2. Berichterstatter: Prof. Jarek Rossignac iii Zusammenfassung Die Kompression von Netzen ist eine weitgef¨acherte Forschungsrichtung mit Anwen- dungen in den verschiedensten Bereichen, wie zum Beispiel im Bereich der Hand- habung extrem großer Modelle, beim Austausch von dreidimensionalem Inhaltuber ¨ das Internet, im elektronischen Handel, als anpassungsf¨ahige Repr¨asentation f¨ur Vo- lumendatens¨atze usw. In dieser Arbeit wird das Verfahren der Cut-Border Machine beschrieben. Die Cut-Border Machine kodiert Netze, indem ein Teilbereich durch das Netz w¨achst (region growing). Kodiert wird die Art und Weise, wie neue Netzele- mente dem wachsenden Teilbereich einverleibt werden. Das Verfahren der Cut-Border Machine kann sowohl auf Dreiecksnetze als auch auf Tetraedernetze angewendet wer- den. Trotz der einfachen Struktur des Verfahrens kann eine sehr hohe Kompression- srate erzielt werden. Im Falle von Tetraedernetzen erreicht die Cut-Border Machine die beste Kompressionsrate von allen bekannten Verfahren. Die einfache Struktur der Cut-Border Machine erm¨oglicht einerseits die Realisierung direkt in Hardware und ist auch als Implementierung in Software extrem schnell. Auf der anderen Seite erlaubt die Einfachheit eine theoretische Analyse des Algorithmus. Gezeigt werden konnte, dass f¨ur ebene Triangulierungen eine leicht modifizierte Version der Cut-Border Machine lineare Laufzeiten in der Zahl der Knoten erzielt und dass die komprimierte Darstellung nur linearen Speicherbedarf ben¨otigt, d.h.
    [Show full text]
  • Meshes and More CMSC425.01 Fall 2019 Administrivia
    Meshes and More CMSC425.01 fall 2019 Administrivia • Google form distributed for grading issues Today’s question How to represent objects Polygonal meshes • Standard representation of 3D assets • Questions: • What data and how stored? • How generate them? • How color and render them? Data structure • Geometric information • Vertices as 3D points • Topology information • Relationships between vertices • Edges and faces Vertex and fragment shaders • Mapping triangle to screen • Map and color vertices • Vertex shaders in 3D • Assemble into fragments • Render fragments • Fragment shaders in 2D Normals and shading – shading equation • Light eQuation • k terms – color of object • L terms – color of light • Ambient term - ka La • Constant at all positions • Diffuse term - kd (n • l) • Related to light direction • Specular term - (v • r)Q • Related to light, viewer direction Phong exponent • Powers of cos (v • r)Q • v and r normalized • Tightness of specular highlights • Shininess of object Normals and shading • Face normal • One per face • Vertex normal • One per vertex. More accurate • Interpolation • Gouraud: Shade at vertices, interpolate • Phong: Interpolate normals, shade Texture mapping • Vary color across figure • ka, kd and ks terms • Interpolate position inside polygon to get color • Not trivial! • Mapping complex Bump mapping • “Texture” map of • Perturbed normals (on right) • Perturbed height (on left) Summary – full polygon mesh asset • Mesh can have vertices, faces, edges plus normals • Material shader can have • Color (albedo) •
    [Show full text]
  • MASTER THESIS Generating Hollow Offset Surface Meshes From
    Department of Information and Computing Sciences Utrecht University The Netherlands MASTER THESIS ICA-3746356 Generating hollow offset surface meshes from segmented CT volumes using distance fields Submitted on 20th August 2019 By M.F.A. Martens Project supervisor (first examiner): prof. dr. R.C. Veltkamp Second examiner: dr. ir. A.F. van der Stappen Daily supervisor: Jan de Vaan Abstract We propose a method to generate hollow offset surface meshes from CT data using distance fields, in general and in the context of the 3mensio software package. Our method improves on several shortcomings of the currently implemented morpholo- gical offsetting method, like a blocky appearance of the offset surface, and uneven distance between the original surface and the offset surface. Our distance field ap- proach is very robust, and performs consistently for a wide range of tested anatomy and across different levels of CT voxel scaling. Our new method is able to return an offset mesh from CT segmentation data in an acceptable amount of time: mostly below 20 seconds, even for very large segmentations. Acknowledgements I want to thank 3mensio Medical Imaging B.V, and my daily supervisor Jan de Vaan in particular, for providing the opportunity to do an internship at their company, and for the support throughout the writing of this thesis report. I also want to thank my main supervisor and first examiner, prof. dr. Remco Veltkamp, for the help with all of my questions and for the feedback on earlier versions of this report. Also I would like to thank dr. ir. Frank van der Stappen, who agreed to by my second examiner.
    [Show full text]
  • Notes on Polygon Meshes 1 Basic Definitions
    CMSC 23700 Introduction to Computer Graphics Handout 2 Autumn 2015 November 12 Notes on polygon meshes 1 Basic definitions Definition 1 A polygon mesh (or polymesh) is a triple (V; E; F ), where V a set of vertices (points in space) E ⊂ (V × V ) a set of edges (line segments) F ⊂ E∗ a set of faces (convex polygons) with the following properties: 1. for any v 2 V , there exists (v1; v2) 2 E such that v = v1 or v = v2. 2. for and e 2 E, there exists a face f 2 F such that e is in f. 3. if two faces intersect in space, then the vertex or edge of intersection is in the mesh. If all of the faces of a polygon mesh are triangles, then we call it a triangle mesh (trimesh). Polygons can be tessellated to form triangle meshes. Definition 2 We classify edges in a mesh based on the number of faces they are part of: • A boundary edge is part of exactly one face. • An interior edge is part of two or more faces. • A manifold edge is part of exactly two faces. • A junction edge is part of three or more faces. Junction edges are to be avoided; they can cause cracks when rendering the mesh. Definition 3 A polymesh is connected if the undirected graph G = (VF ;EE), called the dual graph, is connected, where • VF is a set of graph vertices corresponding to the faces of the mesh and • EE is a set of graph edges connecting adjacent faces.
    [Show full text]
  • Creating Simplified 3D Models with High Quality Textures
    University of Wollongong Research Online Faculty of Engineering and Information Sciences - Faculty of Engineering and Information Sciences Papers: Part A 2015 Creating Simplified 3D oM dels with High Quality Textures Song Liu University of Wollongong, [email protected] Wanqing Li University of Wollongong, [email protected] Philip O. Ogunbona University of Wollongong, [email protected] Yang-Wai Chow University of Wollongong, [email protected] Publication Details Liu, S., Li, W., Ogunbona, P. & Chow, Y. (2015). Creating Simplified 3D Models with High Quality Textures. 2015 International Conference on Digital Image Computing: Techniques and Applications, DICTA 2015 (pp. 264-271). United States of America: The Institute of Electrical and Electronics Engineers, Inc.. Research Online is the open access institutional repository for the University of Wollongong. For further information contact the UOW Library: [email protected] Creating Simplified 3D oM dels with High Quality Textures Abstract This paper presents an extension to the KinectFusion algorithm which allows creating simplified 3D models with high quality RGB textures. This is achieved through (i) creating model textures using images from an HD RGB camera that is calibrated with Kinect depth camera, (ii) using a modified scheme to update model textures in an asymmetrical colour volume that contains a higher number of voxels than that of the geometry volume, (iii) simplifying dense polygon mesh model using quadric-based mesh decimation algorithm, and (iv) creating and mapping 2D textures to every polygon in the output 3D model. The proposed method is implemented in real-Time by means of GPU parallel processing. Visualization via ray casting of both geometry and colour volumes provides users with a real-Time feedback of the currently scanned 3D model.
    [Show full text]
  • Modeling: Polygonal Mesh, Simplification, Lod, Mesh
    The Modeling-Rendering Paradigm Modeler: Renderer: EECS 487: Interactive Modeling complex shapes Vertex data • no equation For a chair, Face, etc. Fixed function transForm and Vertex shader • instead, achieve complexity using lighting Computer Graphics simple pieces • polygons, parametric surfaces, or Clip, homogeneous divide and viewport Lecture 36: implicit surfaces scene graph Rasterize • Polygonal mesh simplification • with arbitrary precision, in principle Texture stages Fragment shader Fragment merging: stencil, depth 3D Geometry Representations 2D: Range Image Represent different kinds oF inFormation: Image with depth inFormation point data, surface data, volumetric data • acquired From range scanner, incl. MicrosoFt Kinect and Google Tango Points Solids • not a complete 3D description: does not include • 2D: range image • Constructive Solid Geometry part oF object occluded From viewpoint • 3D: point cloud • Voxels Surfaces Procedural • Polygonal mesh • Particle system • Parametric surfaces • Spring-mass system Cyberware • Subdivision surfaces • Fractals • Implicit surfaces Curless Range image Tessellation Range surface Funkhouser Funkhouser, Ramamoorthi 3D: Point Cloud Surfaces Unstructured set oF 3D Boundary representation (B-reps) point samples • sometimes we only care about the surface, e.g., when Acquired From range finder rendering opaque objects and performing geometric computations Disadvantage: no structural inFo • adjacency/connectivity have to use e.g., k-nearest neighbors to compute Increasingly hot topic in graphics/vision
    [Show full text]
  • Polygonal Meshes
    Polygonal Meshes COS 426 3D Object Representations Points Solids Range image Voxels Point cloud BSP tree CSG Sweep Surfaces Polygonal mesh Subdivision High-level structures Parametric Scene graph Implicit Application specific 3D Object Representations Points Solids Range image Voxels Point cloud BSP tree CSG Sweep Surfaces Polygonal mesh Subdivision High-level structures Parametric Scene graph Implicit Application specific 3D Polygonal Mesh Set of polygons representing a 2D surface embedded in 3D Isenberg 3D Polygonal Mesh Geometry & topology Face Edge Vertex (x,y,z) Zorin & Schroeder Geometry background Scene is usually approximated by 3D primitives Point Vector Line segment Ray Line Plane Polygon 3D Point Specifies a location Represented by three coordinates Infinitely small typedef struct { Coordinate x; Coordinate y; Coordinate z; } Point; (x,y,z) Origin 3D Vector Specifies a direction and a magnitude Represented by three coordinates Magnitude ||V|| = sqrt(dx dx + dy dy + dz dz) Has no location typedef struct { (dx,dy,dz) Coordinate dx; Coordinate dy; Coordinate dz; } Vector; 3D Vector Dot product of two 3D vectors V1·V2 = ||V1 || || V2 || cos(Θ) (dx1,dy1,dz1) Θ (dx2,dy2 ,dz2) 3D Vector Cross product of two 3D vectors V1·V2 = (dy1dx2 - dz1dy2, dz1dx2 - dx1dz2, dx1dy2 - dy1dx2) V1xV2 = vector perpendicular to both V1 and V2 ||V1xV2|| = ||V1 || || V2 || sin(Θ) (dx1,dy1,dz1) Θ (dx2,dy2 ,dz2) V1xV2 3D Line Segment Linear path between two points Parametric representation: » P = P1 + t (P2 - P1),
    [Show full text]
  • Part 2 – Chapter 4: Modelling and Rendering of 3D Objects
    Part 2 – Chapter 4: Modelling and Rendering of 3D Objects 4.1 3D Shape Representations 4.2 Example: Rendering 3D objects using OpenGL 4.3 Depth Buffer - Handling occlusion in 3D 4.4 Double Buffering - Rendering animated objects 4.5 Vertex colours & colour interpolation - Increasing realism 4.6 Backface culling – Increasing efficiency 4.7 Modelling and Animation Tools © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 2 Polygonmesh The most suitable shape representation Parametric Surface depends on the application => IMPORTANT DESIGN DECISION Subdivison Surface Implicit Surface Constructive Solid Geometry Point Cloud © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 3 Defined by a set of vertices and a set of faces Faces are (usually) quadrilaterals or triangles The illusion of a solid 3D object is achieved by representing the object’s boundary surface with a polygon mesh © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 4 Advantages Disadvantages • Easy to define - just • Impractical for everything but the define vertex positions most basic meshes and connectivity • Time-consuming • No control over shape properties (e.g. curvature, smoothness) 1’ 10’ 8’ 6 56’5’ 1 10 8 7 3 3’ 9 2 2’ 4’ 4 © 2017 Burkhard Wuensche Dept. of Computer Science, University of Auckland COMPSCI 373 Computer Graphics & Image Processing 5 Defined as function p(s,t)=(x(s,t), y(s,t), z(s,t)) Direct definition is difficult, but we can use spline surfaces where surfaces are defined using control points, e.g.
    [Show full text]
  • Voronoi Meshing Without Clipping
    VoroCrust: Voronoi Meshing Without Clipping AHMED ABDELKADER, University of Maryland, College Park CHANDRAJIT L. BAJAJ, University of Texas, Austin MOHAMED S. EBEIDA∗, Sandia National Laboratories AHMED H. MAHMOUD, University of California, Davis SCOTT A. MITCHELL, Sandia National Laboratories JOHN D. OWENS, University of California, Davis AHMAD A. RUSHDI, Sandia National Laboratories 0.00 0.99 0.41 1.00 0.0 0.2 0.4 0.6 0.8 1.0 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Fig. 1. State-of-the-art methods for conforming Voronoi meshing clip Voronoi cells at the bounding surface. The Restricted Voronoi Diagram [Yan et al. 2013] (left) is sensitive to the input tessellation and produces surface elements of very low quality, per the shortest-to-longest edge ratio distribution shown in the inset. In contrast, VoroCrust (right) generates an unclipped Voronoi mesh conforming to a high-quality surface mesh. Polyhedral meshes are increasingly becoming an attractive option algorithm that can handle broad classes of domains exhibiting with particular advantages over traditional meshes for certain arbitrarily curved boundaries and sharp features. In addition, the applications. What has been missing is a robust polyhedral meshing power of primal-dual mesh pairs, exemplified by Voronoi-Delaunay meshes, has been recognized as an important ingredient in numerous ∗ Correspondence address: [email protected]. Author names are listed in alphabetical order. formulations. The VoroCrust algorithm is the first provably-correct This material is based upon work supported by the U.S. Department algorithm for conforming polyhedral Voronoi meshing for non- of Energy, Office of Science, Office of Advanced Scientific Computing convex and non-manifold domains with guarantees on the quality Research (ASCR), Applied Mathematics Program, and the Laboratory of both surface and volume elements.
    [Show full text]
  • Topological Issues in Hexahedral Meshing
    Topological Issues in Hexahedral Meshing David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 Outline I. What is meshing? Problem statement — Types of mesh — Quality issues — Duality II. What can we mesh? Necessary conditions — Sufficient conditions for topological mesh — Geometric existence problem — bicuboid III. How well can we mesh? Mesh complexity — Provable quality IV. How can we make our meshes better? Point placement — topological changes — flipping — flip graph connectivity — bicuboid revisited Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 I. What is Meshing? Given an input domain (manifold with boundary or possibly non-manifold geometry) Partition it into simple cells (triangles, quadrilaterals, tetrahedra, cuboids) Essential preprocessing step for finite element method (numerical solution of differential equations e.g. airflow) Other applications e.g. computer graphics Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 Triangle mesh of Lake Superior [Ruppert] Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 Quadrilateral mesh of an irregular polygon (all quadrilaterals kite-shaped) Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 Triangle mesh on three-dimensional surface [Chew] Topological issues in hexahedral meshing D. Eppstein, UC Irvine, ATMCS 2001 Tetrahedral mesh of a cube Topological issues in hexahedral
    [Show full text]
  • Computational Meshing for CFD Simulations
    Chapter 6 Computational Meshing for CFD Simulations Andreas Lintermann1 The original article is available under https://10.1007/978-981-15-6716-2_6 Abstract In computational fluid dynamics modelling, small cells or elements are created to fill the volume to simulate the flow in. They constitute a mesh where each cell represents a discrete space that represents the flow locally. Mathematical equations that represent the flow physics are then applied to each cell of the mesh. Generating a high quality mesh is extremely important to obtain reliable solutions and to guarantee numerical stability. This chapter begins with a basic introduction to a typical workflow and guidelines for generating high quality meshes, and concludes with some more advanced topics, i.e., how to generate meshes in parallel, a discussion on mesh quality, and examples on the application of lattice-Boltzmann methods to simulate flow without any turbulence modelling on highly-resolved meshes. 6.1 Introduction The segmented airway region from CT/MRI scans provides surface boundary informa- tion (see Chapter 5). The internal space, where inhaled air or particles pass through, is an enclosed volume formed by the surface boundaries. In computational fluid dynamics CFD modelling, small cells or elements are created to fill this volume. They constitute a mesh and thereby discretise the space. The mathematical equations that represent the flow physics (Chapter 6, and 7) are then applied to each cell of the mesh. The end result is the ability to store time-dependent flow properties such as pressure, velocity, or temperature in each individual cell. 1A. Lintermann Forschungszentrum Jülich GmbH email:[email protected] 85 86 CHAPTER 6.
    [Show full text]