Deforming meshes that split and merge

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

Deforming Meshes that Split and Merge

Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field

Overview of Traditional Surface Tracking Methods

10.1 Overview. Section 10.1: Overview. Section 10.2: Procedure for Generating Prisms. Section 10.3: Prism Meshing Options

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

Scalar Algorithms: Contouring

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

Shrinkwrap developments for computational electromagnetics in ICE NITe

Topological Issues in Hexahedral Meshing

All the Polygons You Can Eat. Doug Rogers Developer Relations

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

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2

Scientific Visualization. CSC 7443: Scientific Information Visualization

A Volumetric Method for Building Complex Models from Range Images

Volume Illumination, Contouring

Spectral Surface Reconstruction from Noisy Point Clouds

Section 8.3: Examining and Repairing the Input Geometry. Section 8.5: Examining the Cartesian Grid for Leakages

Water. Notes. Free surface. Boundary conditions. This week: extend our 3D flow solver to full 3D water We need to add two things:

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Topology Preserving Tetrahedral Decomposition of Trilinear Cell

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

Visualization. CSCI 420 Computer Graphics Lecture 26

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

Discrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Part I : Solid geometry

Viscous Hybrid Mesh Generation

Subdivision Curves and Surfaces: An Introduction

Hexahedral Meshing of Non-Linear Volumes Using Voronoi Faces and Edges

Geometric Representations. Stelian Coros

SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES

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

Visualization Computer Graphics I Lecture 20

Chapter 24. Creating Surfaces for Displaying and Reporting Data

Motivation. Freeform Shape Representations for Efficient Geometry Processing. Operations on Geometric Objects. Functional Representations

Level Set Extraction from Gridded 2D and 3D Data

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama

Visualization Computer Graphics I Lecture 20

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University

Mesh Decimation Using VTK

Generating 3D Meshes from Range Data

Scalar Field Visualization. Some slices used by Prof. Mike Bailey

Manipulating the Boundary Mesh

CGAL. Mesh Simplification. (Slides from Tom Funkhouser, Adam Finkelstein)

Introduction to ANSYS ICEM CFD

Processing 3D Surface Data

8 Special Models for Animation. Chapter 8. Special Models for Animation. Department of Computer Science and Engineering 8-1

Spatial Data Structures

v Mesh Generation SMS Tutorials Prerequisites Requirements Time Objectives

BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION

Processing 3D Surface Data

Geometry Vocabulary Math Fundamentals Reference Sheet Page 1

Mesh Decimation. Mark Pauly

Pseudo 3-D deposition and large-strain consolidation modeling of tailings deep deposits

LIQUID SIMULATION WITH MESH-BASED SURFACE TRACKING

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

9. Three Dimensional Object Representations

Geometry Processing & Geometric Queries. Computer Graphics CMU /15-662

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

Spatial Data Structures

VoroCrust: Simultaneous Surface Reconstruction and Volume Meshing with Voronoi cells

1.2 Numerical Solutions of Flow Problems

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

Volume Illumination and Segmentation

Saab. Kyle McDonald. Polygon Meshes

Contouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1

Ray Tracing Acceleration Data Structures

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

Spatial Data Structures

Lecture notes: Object modeling

Modeling 3D Objects: Part 2

CHAPTER 8 FINITE ELEMENT ANALYSIS

Subdivision Surfaces

Contours & Implicit Modelling 1

CS 231. Fluid simulation

Curve Corner Cutting

Tiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research

APPLICATION OF ALGORITHMS FOR AUTOMATIC GENERATION OF HEXAHEDRAL FINITE ELEMENT MESHES

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13

Mesh Morphing. Ligang Liu Graphics&Geometric Computing Lab USTC

Processing 3D Surface Data

Marching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed?

Digital Geometry Processing

Tutorial 2: Particles convected with the flow along a curved pipe.

MARCHING CUBES AND VARIANTS

Polygon Meshes and Implicit Surfaces

DATA MODELS IN GIS. Prachi Misra Sahoo I.A.S.R.I., New Delhi

Polygon Meshes and Implicit Surfaces

Surface Tension Approximation in Semi-Lagrangian Level Set Based Fluid Simulations for Computer Graphics

Topology Changes for Surface Meshes in Active Contours

Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine.

Polygonization of Implicit Surfaces

Character Modeling COPYRIGHTED MATERIAL

Selective Space Structures Manual

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Scanning Real World Objects without Worries 3D Reconstruction

Shape Modeling with Point-Sampled Geometry

Shape of Things to Come: Next-Gen Physics Deep Dive

Surface Reconstruction. Gianpaolo Palma

Extracting consistent and manifold interfaces from multi-valued volume data sets

Transcription:

Deforming meshes that split and merge Chris Wojtan Nils Th urey Markus Gross Greg Turk Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk

Introduction ž Presents a method for accurately tracking the moving surface of deformable materials that gracefully handles topological changes ž Why is this method useful: ž Model materials à water, toothpaste, bread dough, peanut butter, taffy, tar, clay, etc. 2 Seung-ho shin 2010/08/06 # 2

Introduction Continued Approach uses a triangular mesh to represent the surface of objects Benefit: allows the surface to move in Lagrangian manner Drawback: changing the topology of a mesh is very difficult Solution: completely avoids the difficulties by replacing the parts of the mesh that has topology changes with a simplified surface generated by marching cubes 3 Seung-ho shin 2010/08/06 # 3

Related Works Tracking surfaces with changing topologies Osher and Sethian [1988] Commonly used method for tracking such surfaces are level set method Enright et al. [2002] Particle level set methods, combine Lagrangian advection with Eulerian level set schemes Closely related to level sets are the socalled volumeof-fluid methods Seung-ho shin 2010/08/06 # 4

Related Works Strain [2001] formulated semi-lagrangian contouring èour method retains high resolution details by only locally resampling the surface where topological changes occur Point-based methods use unstructured Lagrangian marker particles to track the interface èstill require a continuous surface approximation which introduces smoothing Seung-ho shin 2010/08/06 # 5

Related Works [Reynolds 1992; Glimm et al. 1998; Jiao 2007] mesh based surface trackers Very difficult to account for topological changes Detecting and re-meshing self-intersections using a set of heuristic rules Mesh-based approach for topology changing interfaces that requires a tetrahedralization of the interface points. Ponsand Boissonat [2007] Slower than our method and its tetrahedralization makes topological control more difficult. Seung-ho shin 2010/08/06 # 6

Related Works [Bischoff and Kobbelt 2003] Control topology changes of level sets [Varadhan et al. 2004] Complex cell test We modify it to retain fine details on the tracked surface while merging undesired folded sheets Seung-ho shin 2010/08/06 # 7

Related Works Lagrangian finite element method we embed a high resolution mesh into a body-centered cubic (BCC) lattice Using Eulerian fluid simulator. Seung-ho shin 2010/08/06 # 8

Key attributes of the method Performs topological splits and merges Retains thin features and fine surface details Robust during complex topology changes Surface tracker can be tuned to allow/forbid particular kinds of topology changes Surface tracker does not depend upon any particular simulation technique Decouple physics, topological, and surface detail resolutions in simulator 9 Seung-ho shin 2010/08/06 # 9

Definitions Lagrangian mesh: Drawn on the body. The mesh deform with the body. Both the nodes and the material points change position as the body deforms, however the position of the material points relative to the nodes remains fixed. Seung-ho shin 2010/08/06 # 10

Eulerian mesh: background mesh, body flows though the mesh as it deforms. Nodes remain fixed and material points move though the mesh. The position relative to the nodes varies with motion. Seung-ho shin 2010/08/06 # 11

Approach Step 1 Step 2 Step 3 Step 4 Step 5 Input: closed manifold mesh M that represents the surface of the given material. 12 Seung-ho shin 2010/08/06 # 12

1) Surface tracker moves the vertices of the mesh according to the update rule given by the simulator: a) interpolation of simulation nodes b) numerical integration through a velocity field 2) Space around the mesh is finely sampled on a regular grid, and results in a signed distance field D. Where the sign of a sample in the distance field is determined by whether the sample is inside or outside of the mesh M, and the magnitude is the distance to the nearest part of the mesh. 3) Then the distance is field is traversed, and the eight distance samples at the corners of each cell are examined to determine whether a topological event may be taking place at the given cell. We look at the 8 corners of each cell, and using the deep cell test we determine where the topological events take place. 4) This results in a list of cells that are marked for modification. We clip the surface mesh M to the boundary of this collection of marked cells, retaining only the portions of the mesh that are outside of the marked cells. We then form new mesh components inside the marked cells using marching cubes. 5) The clipped exterior mesh is joined to the interior mesh components. The result is a new mesh that has been modified in regions of topological change Seung-ho shin 2010/08/06 # 13

Lagrangian mesh update Advantages: Inherently preserves surface details Other Methods: Level set method : leads to numerical smoothing of surface features, and impossible to represent a surface with details smaller than grid resolution Combined Eulerian and Lagrangian: difficult to retain sub-grid resolution surface details 14 Seung-ho shin 2010/08/06 # 14

Detection of topological events Signed Distance Field Calculation Calculate and place a signed distance function on a regular grid that encloses the mesh M Topological Event Detection Mechanisms Complex cell test Deep Cell and Self-Intersection Tests 15 Seung-ho shin 2010/08/06 # 15

What is a Complex Cell? Complex edge: edge in distance function D that intersects M, the surface mesh, more than once Complex face: square face in D that intersects M in the shape of a closed loop or touches a complex edge Complex cell: cubic cell in D that has any complex edges or complex faces, or any cell that has the same sign of D at all of its corners while also having explicit geometry from M embedded inside of it 16 Seung-ho shin 2010/08/06 # 16

why is the complex cell test not sufficient? Does not preserve sharp corners Complex Cell Test A straight-forward application of the complex cell test will al so mark detailed surfaces as topologically complex, and will not preserve surface details like sharp corners. 17 Seung-ho shin 2010/08/06 # 17

Deep cells Examples of co mplex cells: 18 Seung-ho shin 2010/08/06 # 18

Difference between complex and deep cells Deep cells èonly label geometry necessary for a topological change, while complex cells aggressively label important surface details, including sharp corners and highly detailed regions. Seung-ho shin 2010/08/06 # 19

Deep cell and self-intersection tests Method to preserve thin features: only allow merging and never split the topology 2 types of deep cells: Completely inside the implicit surface: merging Completely outside the implicit surface: splitting Mark cells that indicate significantly large selfintersections in the mesh 20 Seung-ho shin 2010/08/06 # 20

Self-intersections in the mesh Test performed while marching rays through the mesh in the voxelization phase, when distance field D is created. Dot product of the ray direction with the triangle Negative dot product: ray entering Positive dot product: ray leaving Initialize integer variable that stores the value of the ray entering. Seung-ho shin 2010/08/06 # 21

Cell-marching step Deep cells are marked March outward along complex edges and faces Topological cha nge after re-sa mpling 22 Seung-ho shin 2010/08/06 # 22

Cell-marching step a) All deep cells are marked b) March outward along complex edges and faces until the marked region is topologically simple c) Topological change after re-sampling marked cells Need to ensure that that every cell on the boundary of marked cell region has a topologically simple interface with marching cubes. Execute flood fill algorithm, starting with initially marked deep/complex cells and march outwards across the complex surface, until entire region of marked cells is bounded by simple cube faces. Seung-ho shin 2010/08/06 # 23

Altering mesh topology - Step1 Inside comple x region Outside comp lex region Mark the topologically complex cells 24 Seung-ho shin 2010/08/06 # 24

Altering mesh topology Step2 Type 1 vertex Find each triangle that intersects a cell edge on the boundary of the mark ed region. Calculate the intersection point between the triangle and edge and subdivide the triangle into 3 new triangles that share a vertex at the i ntersection point (type 1 vertex). 25 Seung-ho shin 2010/08/06 # 25

Altering mesh topology Step3 Type 2 vertex Find all triangle edges that intersect a cell face on the boundary of the marked region. Split each triangle edge at the point where it intersects t he face, subdividing the 2 original triangles into 4 and inserting a new v ertex on the face (type 2 vertex). 26 Seung-ho shin 2010/08/06 # 26

Altering mesh topology Step4 Simplify curve connecting type 1 and 2 vertices until it s a straight line bet ween type 1 vertices. Repeatedly collapse all type 2 vertices until they are removed. Afterwards, no triangles will cross the faces of any marked cell. E ach triangle will lie completely inside or outside of the region. 27 Seung-ho shin 2010/08/06 # 27

Altering mesh topology Step5 Delete all triangles that lie completely inside the marked region. Use marc hing cubes to generate a triangle mesh in the marked region, and connec t the meshes together at the type 1 vertices. 28 Seung-ho shin 2010/08/06 # 28

Robustness Ensure triangles are well-shaped Adaptively subdivide triangle edges when they get too long, and collapse edges when they become too short or possess a bad aspect ratio Perform edge flips after creating type 1 vertices if any newly created triangle has particularly small angles Maintain simple topology along boundary faces before sewing meshes together Delay edge collapses if it will prematurely connect other type 1 vertices Gridlock: where no safe edge collapse can be performed 29 Seung-ho shin 2010/08/06 # 29

Integration with Physics To integrated our surface tracker into both a finite element viscoelasticity solver and an Eulerian fluid solver. We chose to only calculate topological changes once per frame of the output animation. Seung-ho shin 2010/08/06 # 30

Results Level set: most of the surface d etails are lost with thi s method Particle level set: more surface details a re kept Proposed mesh-based tracker: detailed foldi ng over on flat region of the liquid 31 Seung-ho shin 2010/08/06 # 31

Comparison Results : Zalesak Sphere ž Paper s method ž Semi-Lagrangian contouring ž Particle level set žlevel set 32 Seung-ho shin 2010/08/06 # 32

Computation Time Out of the total time spent on our surface tracking algorithm, the core topology handling takes approximately 60% of the computation. The calculation of the signed distance field requires about 20%. Such as the mesh update, the mesh subdivision, and interfacing with the simulation code take the last 20%. Seung-ho shin 2010/08/06 # 33

12 thousand elements and 250 thousand surface triangles simulations took about 3 minutes per frame and spent less than 1% of the time on topological detection and meshing code 105 thousand elements and 206 thousand surface triangles Simulations took about 3 minutes per frame and spent less than 1% of the time on topological detection and meshing code Seung-ho shin 2010/08/06 # 34

Seung-ho shin 2010/08/06 # 35

Limitations Identifies topological events based on particular cell size of the distance field Topological classification will ignore small features that lie completely within a cell Extracted isosurface may not match the surface mesh at ambiguous marching cubes faces, leaving a quadrilateral hole in the mesh Proposed strategy for maintaining thin sheets doesn t preserve complicated regions that have both splitting and merging behavior Re-meshing depends only on the sampled distance field, and ignores the actual geometry of the mesh Changes to the mesh may result in changes to the volume of the material 36 Seung-ho shin 2010/08/06 # 36

Future work Couple surface tracking method to other kinds of simulators: Smoothed Particle Hydrodynamics, Lattice Boltzmann Method Use other isosurface creation methods besides marching cubes: dual contouring method of isosurface creation Using local mesh operations: edge collapses that recognize and preserve sharp features Other rules for triggering topology changes that can be used for additional materials 37 Seung-ho shin 2010/08/06 # 37

Conclusion Provides a technique for updating the surface of a deforming mesh that allows topological changes Surface tracker is the perfect balance between level set and deforming meshes that do not allow topological changes Robust: topology changes are carried out using marching cubes that only uses the sampled distance field Method many handle many different situations Motion of surface mesh can be guided by any velocity field/physics simulator 38 Seung-ho shin 2010/08/06 # 38