Streaming Construction of Delaunay Triangulations

Size: px
Start display at page:

Download "Streaming Construction of Delaunay Triangulations"

Transcription

1 Streaming Construction of Delaunay Triangulations Jonathan Shewchuk University of California at Berkeley Joint work with Martin Isenburg, Yuanxin Liu, & Jack Snoeyink

2 Streaming Construction of Delaunay Triangulations Or, How we compute supercomputer sized Delaunay triangulations on an ordinary laptop computer.

3 The Delaunay Triangulation Every point set has a Delaunay triangulation. Think of it as a function that takes a set of points and outputs a triangulation.

4 The Delaunay Triangulation...is a triangulation whose triangles are all Delaunay. An triangle is Delaunay if it has an empty circumscribing circle one that encloses no vertex.

5 The Delaunay Triangulation The circumcircle of every Delaunay triangle is empty.

6 Applications of Triangulations Contouring Rendering Terrain Databases and Geographical Information Systems

7 Elevation Collection by LIDAR

8 Related Work Amenta, Choi, & Rote [2003] use biased randomized insertion orders to improve virtual memory performance of 3D Delaunay triangulation construction.

9 Related Work Amenta, Choi, & Rote [2003] use biased randomized insertion orders to improve virtual memory performance of 3D Delaunay triangulation construction. Agarwal, Arge, and Yi [200] implemented an external memory 2D triangulator based on randomized divide and conquer. ( billion triangles on desktop machine.)

10 Related Work Amenta, Choi, & Rote [2003] use biased randomized insertion orders to improve virtual memory performance of 3D Delaunay triangulation construction. Agarwal, Arge, and Yi [200] implemented an external memory 2D triangulator based on randomized divide and conquer. ( billion triangles on desktop machine.) Blandford, Blelloch, and Kadow [200] implemented a 3D parallel triangulator. (0 billion tetrahedra on 4 processors.)

11 Streaming Delaunay

12 Streaming Computation A restricted version of out of core computation. Algorithm makes one (or a few) pass(es) over input stream, and writes output stream.

13 Streaming Computation A restricted version of out of core computation. Algorithm makes one (or a few) pass(es) over input stream, and writes output stream. Processes data in memory buffer much smaller than the stream sizes.

14 Streaming Computation A restricted version of out of core computation. Algorithm makes one (or a few) pass(es) over input stream, and writes output stream. Processes data in memory buffer much smaller than the stream sizes. Nothing is stored temporarily to disk.

15 Advantages of Streaming Streaming tools can run concurrently in a pipeline. Often much faster than other out of core algorithms!

16 Our Accomplishments 9 billion triangles in. hours on a laptop.

17 Our Accomplishments 9 billion triangles in. hours on a laptop. 2 times faster than Agarwal Arge Yi.

18 Our Accomplishments 9 billion triangles in. hours on a laptop. 2 times faster than Agarwal Arge Yi. 800 million tetrahedra in under 3 hours.

19 Algorithm Choice The incremental insertion algorithm for constructing Delaunay triangulations.

20 Algorithm Choice The incremental insertion algorithm for constructing Delaunay triangulations. Why? We have little control over the order of points in the input stream.

21 Algorithm Choice The incremental insertion algorithm for constructing Delaunay triangulations. Why? We have little control over the order of points in the input stream. We modified existing, sequential Delaunay triangulation codes (2D & 3D) for streaming.

22 Bowyer Watson Algorithm Insert one vertex at a time.

23 Bowyer Watson Algorithm Insert one vertex at a time. Remove all triangles/tetrahedra that are no longer Delaunay.

24 Bowyer Watson Algorithm Insert one vertex at a time. Remove all triangles/tetrahedra that are no longer Delaunay. Retriangulate the cavity with a fan around the new vertex.

25 Spatial Finalization

26 Spatial Finalization Subdivide space into finalization regions.

27 Spatial Finalization Subdivide space into finalization regions. Inject into the stream spatial finalization tags that indicate there are no more points in this region. Point stream Finalized point stream

28 Spatial Finalization: Why? Triangles whose circumscribing circles lie entirely in finalized space can be written to disk immediately. Regions not yet finalized Finalized space

29 Regions not yet finalized Triangles whose circumscribing circles intersect an unfinalized region remain in memory. Finalized space

30 Streaming Delaunay Pipeline Finalizer Triangulator

31 The Finalizer

32 How to Finalize Compute bounding box.

33 How to Finalize Compute bounding box.

34 How to Finalize Compute bounding box.

35 How to Finalize Compute bounding box.

36 How to Finalize Compute bounding box.

37 How to Finalize Compute bounding box.

38 How to Finalize Compute bounding box.

39 How to Finalize Compute bounding box.

40 How to Finalize 2 Compute bounding box. Finalization grid.

41 How to Finalize Compute bounding box. Finalization grid. Count points.

42 How to Finalize Compute bounding box. Finalization grid. Count points. 3 4

43 How to Finalize 2 Compute bounding box. Finalization grid. Count points

44 How to Finalize Compute bounding box. Finalization grid. Count points.

45 How to Finalize 2 Compute bounding box. Finalization grid. Count points

46 How to Finalize Compute bounding box. Finalization grid. Count points. 2

47 How to Finalize Compute bounding box. Finalization grid. Count points. Store sprinkle points

48 How to Finalize 2 Compute bounding box. Finalization grid Count points. Store sprinkle points. 4 3 Output finalized points Release chunks. Inject finalization tags.

49 How to Finalize Compute bounding box. Finalization grid Count points. Store sprinkle points. 4 3 Output finalized points Release chunks. Inject finalization tags.

50 How to Finalize Compute bounding box. Finalization grid Count points. Store sprinkle points. 4 3 Output finalized points Release chunks. Inject finalization tags.

51 How to Finalize 2 2 Compute bounding box. Finalization grid Count points. Store sprinkle points. 3 3 Output finalized points Release chunks. Inject finalization tags.

52 How to Finalize 2 2 Compute bounding box. Finalization grid Count points. Store sprinkle points Output finalized points Release chunks. Inject finalization tags.

53 How to Finalize 2 2 Compute bounding box. Finalization grid Count points. Store sprinkle points Output finalized points Release chunks. Inject finalization tags.

54 How to Finalize 2 2 Compute bounding box. Finalization grid Count points. Store sprinkle points. 4 3 Output finalized points Release chunks. Inject finalization tags.

55 How to Finalize 2 Compute bounding box. Finalization grid Count points. Store sprinkle points. 4 3 Output finalized points Release chunks. Inject finalization tags.

56 Streaming Point Format # npoints 224 # bb_min_f # bb_max_f # datatype SP_FLOAT v v chunk v of v points v v x cell 232 v v v v v v v x cell 240 finalization tag chunk of points finalization tag

57 Spatial Coherence The correlation between the proximity of points in space and their proximity in the stream.

58 Spatial Coherence The correlation between the proximity of points in space and their proximity in the stream.

59 Spatial Coherence The correlation between the proximity of points in space and their proximity in the stream.

60 Spatial Coherence The correlation between the proximity of points in space and their proximity in the stream.

61 Danger: Potential Quadratic Time

62 Danger: Potential Quadratic Time

63 Danger: Potential Quadratic Time

64 Danger: Potential Quadratic Time

65 Danger: Potential Quadratic Time

66 Danger: Potential Quadratic Time

67 Danger: Potential Quadratic Time

68 Point Reordering by Finalizer Chunking: Buffering points in a region until all points arrive, then releasing them together. Points in a chunk are randomly reordered.

69 Point Reordering by Finalizer Chunking: Buffering points in a region until all points arrive, then releasing them together. Points in a chunk are randomly reordered. Sprinkling: Promoting a small random sample of sprinkle points to earlier in the stream. Circumvents danger of quadratic behavior.

70 The Triangulator

71 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Update triangulation. Regions not yet finalized Finalized space

72 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Update triangulation. When tag arrives: Identify final triangles. Write them out & free their memory. Regions not yet finalized

73 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Start at newest triangle.

74 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Start at newest triangle. Walk to point.

75 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Start at newest triangle. Walk to point.

76 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Start at newest triangle. Walk to point. If that fails, restart from cell triangle. If that fails, do exhaustive search.

77 Streaming Delaunay Triangulation When point arrives: Locate enclosing triangle. Update triangulation.

78 Streaming Delaunay Triangulation When tag arrives: Identify final triangles. Only these triangles need to be checked: New triangles (since last tag). Triangles waiting for this tag.

79 Streaming Delaunay Triangulation When tag arrives: Identify final triangles. Checked triangles that aren t final are assigned a tag to wait for.

80 Results

81 Results Us: 2 min finalize + 3 min triang. = 48 min. Agarwal Arge Yi: 3 hr sort +. hr triang. = 0. hr.

82 Results 0 min finalize + 28 min triang. = hr 2 min. 42 MB finalize + MB triang. = 43 MB.

83 3D

84 3D Streaming Delaunay 8 million tetrahedra in 2:4 hrs & 9 MB. (Pre finalized points.)

85 3D Streaming Delaunay Does not work for surface scans. Circumspheres are too big.

86 3D Streaming Delaunay Future work: spherical finalization regions from Delaunay triangulation of a random sample.

87 3D Streaming Delaunay Future work: spherical finalization regions from Delaunay triangulation of a random sample.

88 Conclusions

89 Conclusions Most real world points sets have lots of spatial coherence sorting doesn t help.

90 Conclusions Most real world points sets have lots of spatial coherence sorting doesn t help. Like aikido: Use your opponent s spatial coherence against him.

91 Conclusions Most real world points sets have lots of spatial coherence sorting doesn t help. Like aikido: Use your opponent s spatial coherence against him. Not an external memory algorithm! No temporary storage to disk.

92 Conclusions Most real world points sets have lots of spatial coherence sorting doesn t help. Like aikido: Use your opponent s spatial coherence against him. Not an external memory algorithm! No temporary storage to disk. 2 times faster than best previous 2D approach.

93 Conclusions Most real world points sets have lots of spatial coherence sorting doesn t help. Like aikido: Use your opponent s spatial coherence against him. Not an external memory algorithm! No temporary storage to disk. 2 times faster than best previous 2D approach. Streaming triangulation can be piped directly to another streaming application.

94 Streaming Digital Elevation Maps

95 Streaming Contour Extraction

96 Thanks Kevin Yi at Duke supplied the Neuse River Basin data. Martin Isenburg & Yuanxin Leo Liu did most of the programming.

Hot topics and Open problems in Computational Geometry. My (limited) perspective. Class lecture for CSE 546,

Hot topics and Open problems in Computational Geometry. My (limited) perspective. Class lecture for CSE 546, Hot topics and Open problems in Computational Geometry. My (limited) perspective Class lecture for CSE 546, 2-13-07 Some slides from this talk are from Jack Snoeyink and L. Kavrakis Key trends on Computational

More information

Storage and analysis of massive TINs in a DBMS

Storage and analysis of massive TINs in a DBMS Storage and analysis of massive TINs in a DBMS Hugo Ledoux April 8, 2010 Abstract Advances in technologies to collect elevation data are far superior to the advances to store and process the resulting

More information

Storage and analysis of massive TINs in a DBMS

Storage and analysis of massive TINs in a DBMS Storage and analysis of massive TINs in a DBMS H. Ledoux TU Delft, GIS technology group, the Netherlands Abstract Advances in technologies to collect elevation data are far superior to the advances to

More information

Outline of the presentation

Outline of the presentation Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz Outline of the presentation My work up to now Surfaces of Building Practice

More information

Insertions and Deletions in Delaunay Triangulations using Guided Point Location. Kevin Buchin TU Eindhoven

Insertions and Deletions in Delaunay Triangulations using Guided Point Location. Kevin Buchin TU Eindhoven Insertions and Deletions in Delaunay Triangulations using Guided Point Location Kevin Buchin TU Eindhoven Heraklion, 21.1.2013 Guide - Example Construct Delaunay triangulation of convex polygon in linear

More information

Tight Cocone DIEGO SALUME SEPTEMBER 18, 2013

Tight Cocone DIEGO SALUME SEPTEMBER 18, 2013 Tight Cocone DIEGO SALUME SEPTEMBER 18, 2013 Summary Problem: The Cocone algorithm produces surfaces with holes and artifacts in undersampled areas in the data. Solution: Extend the Cocone algorithm to

More information

Point Location in Delaunay Triangulations

Point Location in Delaunay Triangulations Point Location in Delaunay Triangulations Inspiration: Graphics software wants to light a model and needs to know which face a light ray hits You moved the mouse and the windowing system would like to

More information

Massive Data Algorithmics

Massive Data Algorithmics In the name of Allah Massive Data Algorithmics An Introduction Overview MADALGO SCALGO Basic Concepts The TerraFlow Project STREAM The TerraStream Project TPIE MADALGO- Introduction Center for MAssive

More information

Voronoi Diagrams. A Voronoi diagram records everything one would ever want to know about proximity to a set of points

Voronoi Diagrams. A Voronoi diagram records everything one would ever want to know about proximity to a set of points Voronoi Diagrams Voronoi Diagrams A Voronoi diagram records everything one would ever want to know about proximity to a set of points Who is closest to whom? Who is furthest? We will start with a series

More information

Delaunay Triangulations

Delaunay Triangulations Delaunay Triangulations (slides mostly by Glenn Eguchi) Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally approximate height of points not

More information

Delaunay Triangulations. Presented by Glenn Eguchi Computational Geometry October 11, 2001

Delaunay Triangulations. Presented by Glenn Eguchi Computational Geometry October 11, 2001 Delaunay Triangulations Presented by Glenn Eguchi 6.838 Computational Geometry October 11, 2001 Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally

More information

Correctness. The Powercrust Algorithm for Surface Reconstruction. Correctness. Correctness. Delaunay Triangulation. Tools - Voronoi Diagram

Correctness. The Powercrust Algorithm for Surface Reconstruction. Correctness. Correctness. Delaunay Triangulation. Tools - Voronoi Diagram Correctness The Powercrust Algorithm for Surface Reconstruction Nina Amenta Sunghee Choi Ravi Kolluri University of Texas at Austin Boundary of a solid Close to original surface Homeomorphic to original

More information

Compression of Tetrahedral Meshes

Compression of Tetrahedral Meshes Compression of Tetrahedral Meshes Geometry Processing CS 7960 Louis Bavoil 01/19/2006 Outline Corner Table Edgebreaker Efficiency Edgebreaker with Boundary Corner Table Two arrays of integers: V and O

More information

Computational Geometry

Computational Geometry Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains

More information

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud International Journal of Computer Systems (ISSN: 2394-1065), Volume 03 Issue 02, February, 2016 Available at http://www.ijcsonline.com/ A Constrained Delaunay Triangle Mesh Method for Three-Dimensional

More information

Resampling Scattered Data into a Regular Grid

Resampling Scattered Data into a Regular Grid Resampling Scattered Data into a Regular Grid Mike Bailey mjb@cs.oregonstate.edu The Problem Oftentimes data points are located irregularly, that is, they are not in nice, neat rectilinear grids. This

More information

Modeling & Analyzing Massive Terrain Data Sets (STREAM Project) Pankaj K. Agarwal. Workshop on Algorithms for Modern Massive Data Sets

Modeling & Analyzing Massive Terrain Data Sets (STREAM Project) Pankaj K. Agarwal. Workshop on Algorithms for Modern Massive Data Sets Modeling & Analyzing Massive Terrain Data Sets (STREAM Project) Pankaj K. Agarwal Workshop on Algorithms for Modern Massive Data Sets Diverse elevation point data: density, distribution, accuracy Photogrammetry

More information

Introduction to Voronoi Diagrams and Delaunay Triangulations

Introduction to Voronoi Diagrams and Delaunay Triangulations Introduction to Voronoi Diagrams and Delaunay Triangulations Solomon Boulos Introduction to Voronoi Diagrams and Delaunay Triangulations p.1 Voronoi Diagrams Voronoi region: V (p i ) = {x R n p i x p j

More information

View-dependent fast real-time generating algorithm for large-scale terrain

View-dependent fast real-time generating algorithm for large-scale terrain Procedia Earth and Planetary Science 1 (2009) 1147 Procedia Earth and Planetary Science www.elsevier.com/locate/procedia The 6 th International Conference on Mining Science & Technology View-dependent

More information

Course 16 Geometric Data Structures for Computer Graphics. Voronoi Diagrams

Course 16 Geometric Data Structures for Computer Graphics. Voronoi Diagrams Course 16 Geometric Data Structures for Computer Graphics Voronoi Diagrams Dr. Elmar Langetepe Institut für Informatik I Universität Bonn Geometric Data Structures for CG July 27 th Voronoi Diagrams San

More information

Voronoi diagrams Delaunay Triangulations. Pierre Alliez Inria

Voronoi diagrams Delaunay Triangulations. Pierre Alliez Inria Voronoi diagrams Delaunay Triangulations Pierre Alliez Inria Voronoi Diagram Voronoi Diagram Voronoi Diagram The collection of the non-empty Voronoi regions and their faces, together with their incidence

More information

Delaunay Triangulation

Delaunay Triangulation Delaunay Triangulation Steve Oudot slides courtesy of O. Devillers MST MST MST use Kruskal s algorithm with Del as input O(n log n) Last: lower bound for Delaunay Let x 1, x 2,..., x n R, to be sorted

More information

Parallel Quality Meshes for Earth Models

Parallel Quality Meshes for Earth Models Parallel Quality Meshes for Earth Models John Burkardt Department of Scientific Computing Florida State University... 04 October 2016, Virginia Tech... http://people.sc.fsu.edu/ jburkardt/presentations/......

More information

arxiv: v1 [cs.cg] 22 May 2018

arxiv: v1 [cs.cg] 22 May 2018 Received: 00 Month 0000 Revised: 00 Month 0000 Accepted: 00 Month 0000 DOI: xxx/xxxx ARTICLE TYPE One machine, one minute, three billion tetrahedra Célestin Marot* Jeanne Pellerin Jean-François Remacle

More information

Module 4: Index Structures Lecture 16: Voronoi Diagrams and Tries. The Lecture Contains: Voronoi diagrams. Tries. Index structures

Module 4: Index Structures Lecture 16: Voronoi Diagrams and Tries. The Lecture Contains: Voronoi diagrams. Tries. Index structures The Lecture Contains: Voronoi diagrams Tries Delaunay triangulation Algorithms Extensions Index structures 1-dimensional index structures Memory-based index structures Disk-based index structures Classification

More information

Möbius Transformations in Scientific Computing. David Eppstein

Möbius Transformations in Scientific Computing. David Eppstein Möbius Transformations in Scientific Computing David Eppstein Univ. of California, Irvine School of Information and Computer Science (including joint work with Marshall Bern from WADS 01 and SODA 03) Outline

More information

THE METHODS OF TRIANGULATION

THE METHODS OF TRIANGULATION THE METHODS OF TRIANGULATION Abstract M. Varshosaz, Assistant Professor, Faculty of Geodesy & Geomatics Eng., K.N. Toosi University of Technology K.N. Toosi University of Technology, Vali_Asr St, Tehran,

More information

Storing and analysing massive TINs in a DBMS with a star-based data structure. Technical report Hugo Ledoux

Storing and analysing massive TINs in a DBMS with a star-based data structure. Technical report Hugo Ledoux 3D geoinformation Department of Urbanism Faculty of Architecture and the Built Environment Delft University of Technology Storing and analysing massive TINs in a DBMS with a star-based data structure Technical

More information

Computational Geometry Exercise Duality

Computational Geometry Exercise Duality Computational Geometry Exercise Duality LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Guido Brückner 20.07.2018 1 Duality Transforms We have seen duality for

More information

Point clouds and DEMs

Point clouds and DEMs Point clouds and DEMs J Ramón Arrowsmith School of Earth and Space Exploration Arizona State University Christopher J. Crosby UNAVCO Tutorial notes (April 2016) Point clouds and DEMs 1. Download tahoe.las

More information

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry Computational Geometry Algorithm Design (10) Computational Geometry Graduate School of Engineering Takashi Chikayama Algorithms formulated as geometry problems Broad application areas Computer Graphics,

More information

Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1

Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1 Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1 Matthew Carlberg James Andrews Peiran Gao Avideh Zakhor University of California, Berkeley; Video and Image

More information

CS133 Computational Geometry

CS133 Computational Geometry CS133 Computational Geometry Voronoi Diagram Delaunay Triangulation 5/17/2018 1 Nearest Neighbor Problem Given a set of points P and a query point q, find the closest point p P to q p, r P, dist p, q dist(r,

More information

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

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

More information

Big Spatial Data Performance With Oracle Database 12c. Daniel Geringer Spatial Solutions Architect

Big Spatial Data Performance With Oracle Database 12c. Daniel Geringer Spatial Solutions Architect Big Spatial Data Performance With Oracle Database 12c Daniel Geringer Spatial Solutions Architect Oracle Exadata Database Machine Engineered System 2 What Is the Oracle Exadata Database Machine? Oracle

More information

Automatic Delineation of Drainage Basins from Contour Elevation Data Using Skeleton Construction Techniques

Automatic Delineation of Drainage Basins from Contour Elevation Data Using Skeleton Construction Techniques Summer School in New York, USA, Polytechnic University, July 21 25, 28 p. 1/16 Automatic Delineation of Drainage Basins from Contour Elevation Data Using Skeleton Construction Techniques Giovanni Moretti

More information

Constrained Delaunay Tetrahedralizations and Provably Good Boundary Recovery

Constrained Delaunay Tetrahedralizations and Provably Good Boundary Recovery Constrained Delaunay Tetrahedralizations and Provably Good Boundary Recovery Jonathan Richard Shewchuk University of California at Berkeley, Berkeley, CA, U.S.A. jrs@cs.berkeley.edu Abstract In two dimensions,

More information

Ray Genealogy. Raytracing: Performance. Bounding Volumes. Bounding Volume. Acceleration Classification. Acceleration Classification

Ray Genealogy. Raytracing: Performance. Bounding Volumes. Bounding Volume. Acceleration Classification. Acceleration Classification Raytracing: Performance OS 4328/5327 Scott. King Ray Genealogy 1 Ray/pixel at 1k 1k image = 1M? rays rays. Say on avg. 6 secondary rays = 7M?rays rays 100k objects with 10 ops for intersection =? Operations

More information

A Keypoint Descriptor Inspired by Retinal Computation

A Keypoint Descriptor Inspired by Retinal Computation A Keypoint Descriptor Inspired by Retinal Computation Bongsoo Suh, Sungjoon Choi, Han Lee Stanford University {bssuh,sungjoonchoi,hanlee}@stanford.edu Abstract. The main goal of our project is to implement

More information

Decimation of 2D Scalar Data with Error Control

Decimation of 2D Scalar Data with Error Control Decimation of 2D Scalar Data with Error Control Daniel R. Schikore Chandrajit L. Bajaj Department of Computer Sciences Purdue University West Lafayette, IN 47907 drs@cs.purdue.edu bajaj@cs.purdue.edu Abstract

More information

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker)

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker) Visible Surface Detection (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker) 1 Given a set of 3D objects and a viewing specifications, determine which lines or surfaces of the objects should be visible. A

More information

COMPUTING CONSTRAINED DELAUNAY

COMPUTING CONSTRAINED DELAUNAY COMPUTING CONSTRAINED DELAUNAY TRIANGULATIONS IN THE PLANE By Samuel Peterson, University of Minnesota Undergraduate The Goal The Problem The Algorithms The Implementation Applications Acknowledgments

More information

GEOGRAPHIC INFORMATION SYSTEMS Lecture 02: Feature Types and Data Models

GEOGRAPHIC INFORMATION SYSTEMS Lecture 02: Feature Types and Data Models GEOGRAPHIC INFORMATION SYSTEMS Lecture 02: Feature Types and Data Models Feature Types and Data Models How Does a GIS Work? - a GIS operates on the premise that all of the features in the real world can

More information

Engineering a Compact Parallel Delaunay Algorithm in 3D

Engineering a Compact Parallel Delaunay Algorithm in 3D Engineering a Compact Parallel Delaunay Algorithm in 3D Daniel K. Blandford Carnegie Mellon University dkb1@cs.cmu.edu Guy E. Blelloch Carnegie Mellon University blelloch@cs.cmu.edu Clemens Kadow Carnegie

More information

Overview of Unstructured Mesh Generation Methods

Overview of Unstructured Mesh Generation Methods Overview of Unstructured Mesh Generation Methods Structured Meshes local mesh points and cells do not depend on their position but are defined by a general rule. Lead to very efficient algorithms and storage.

More information

Optimizing Irregular Adaptive Applications on Multi-threaded Processors: The Case of Medium-Grain Parallel Delaunay Mesh Generation

Optimizing Irregular Adaptive Applications on Multi-threaded Processors: The Case of Medium-Grain Parallel Delaunay Mesh Generation Optimizing Irregular Adaptive Applications on Multi-threaded rocessors: The Case of Medium-Grain arallel Delaunay Mesh Generation Filip Blagojević The College of William & Mary CSci 710 Master s roject

More information

3D Terrain Modelling of the Amyntaio Ptolemais Basin

3D Terrain Modelling of the Amyntaio Ptolemais Basin 2nd International Workshop in Geoenvironment and 1 3D Terrain Modelling of the Amyntaio Ptolemais Basin G. Argyris, I. Kapageridis and A. Triantafyllou Department of Geotechnology and Environmental Engineering,

More information

Contents of Lecture. Surface (Terrain) Data Models. Terrain Surface Representation. Sampling in Surface Model DEM

Contents of Lecture. Surface (Terrain) Data Models. Terrain Surface Representation. Sampling in Surface Model DEM Lecture 13: Advanced Data Models: Terrain mapping and Analysis Contents of Lecture Surface Data Models DEM GRID Model TIN Model Visibility Analysis Geography 373 Spring, 2006 Changjoo Kim 11/29/2006 1

More information

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams in the Plane Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams As important as convex hulls Captures the neighborhood (proximity) information of geometric objects

More information

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.

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. 1 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. Three parts to this talk. A lot of content, so I

More information

9. Visible-Surface Detection Methods

9. Visible-Surface Detection Methods 9. Visible-Surface Detection Methods More information about Modelling and Perspective Viewing: Before going to visible surface detection, we first review and discuss the followings: 1. Modelling Transformation:

More information

Guaranteed Quality Parallel Delaunay Refinement for Restricted Polyhedral Domains

Guaranteed Quality Parallel Delaunay Refinement for Restricted Polyhedral Domains Guaranteed Quality Parallel Delaunay Refinement for Restricted Polyhedral Domains Démian Nave a,,1, Nikos Chrisochoides b,,2 L. Paul Chew c,3 a Pittsburgh Supercomputing Center, Carnegie Mellon University,

More information

Guaranteed Delaunay Mesh Generation

Guaranteed Delaunay Mesh Generation Theoretically 1 Guaranteed Delaunay Mesh Generation In Practice Jonathan Richard Shewchuk Short Course Thirteenth International Meshing Roundtable Williamsburg, 19 September 2004 UC Berkeley Goal 2 To

More information

The Crust and Skeleton Applications in GIS

The Crust and Skeleton Applications in GIS The Crust and Skeleton Applications in GIS Christopher Gold and Maciek Dakowicz School of Computing, University of Glamorgan Pontypridd CF37 1DL Wales UK christophergold@voronoi.com Abstract This paper

More information

Tools, Tips, and Workflows Breaklines, Part 4 Applying Breaklines to Enforce Constant Elevation

Tools, Tips, and Workflows Breaklines, Part 4 Applying Breaklines to Enforce Constant Elevation Breaklines, Part 4 Applying Breaklines to l Lewis Graham Revision 1.0 In the last edition of LP360 News, we discussed the creation of 3D breaklines. Recall that, for our purposes, a 3D breakline is a vector

More information

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

Lecture overview. Visualisatie BMT. Fundamental algorithms. Visualization pipeline. Structural classification - 1. Structural classification - 2 Visualisatie BMT Fundamental algorithms Arjan Kok a.j.f.kok@tue.nl Lecture overview Classification of algorithms Scalar algorithms Vector algorithms Tensor algorithms Modeling algorithms 1 2 Visualization

More information

Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1

Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1 Fast Surface Reconstruction and Segmentation with Ground-Based and Airborne LIDAR Range Data 1 Matthew Carlberg James Andrews Peiran Gao Avideh Zakhor University of California, Berkeley; Video and Image

More information

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem Chapter 8 Voronoi Diagrams 8.1 Post Oce Problem Suppose there are n post oces p 1,... p n in a city. Someone who is located at a position q within the city would like to know which post oce is closest

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

Scan Conversion of Polygons. Dr. Scott Schaefer

Scan Conversion of Polygons. Dr. Scott Schaefer Scan Conversion of Polygons Dr. Scott Schaefer Drawing Rectangles Which pixels should be filled? /8 Drawing Rectangles Is this correct? /8 Drawing Rectangles What if two rectangles overlap? 4/8 Drawing

More information

Terrain Rendering Research for Games. Jonathan Blow Bolt Action Software

Terrain Rendering Research for Games. Jonathan Blow Bolt Action Software Terrain Rendering Research for Games Jonathan Blow Bolt Action Software jon@bolt-action.com Lecture Agenda Introduction to the problem Survey of established algorithms Problems with established algorithms

More information

Mesh Generation through Delaunay Refinement

Mesh Generation through Delaunay Refinement Mesh Generation through Delaunay Refinement 3D Meshes Mariette Yvinec MPRI 2009-2010, C2-14-1, Lecture 4b ENSL Winter School, january 2010 Input : C : a 2D PLC in R 3 (piecewise linear complex) Ω : a bounded

More information

Geometric Computation: Introduction. Piotr Indyk

Geometric Computation: Introduction. Piotr Indyk Geometric Computation: Introduction Piotr Indyk Welcome to 6.850! Overview and goals Course Information Closest pair Signup sheet Geometric Computation Geometric computation occurs everywhere: Robotics:

More information

As-Built 3D Modeling of Large Facilities Based on Interactive Feature Editing

As-Built 3D Modeling of Large Facilities Based on Interactive Feature Editing 1 As-Built 3D Modeling of Large Facilities Based on Interactive Feature Editing H. Masuda 1 and Ichiro Tanaka 2 1 The University of Tokyo, masuda@nakl.t.u-tokyo.ac.jp 2 Tokyo Denki University, tanaka@cck.dendai.ac.jp

More information

Motivation for B-Trees

Motivation for B-Trees 1 Motivation for Assume that we use an AVL tree to store about 20 million records We end up with a very deep binary tree with lots of different disk accesses; log2 20,000,000 is about 24, so this takes

More information

Scientific Computing WS 2018/2019. Lecture 12. Jürgen Fuhrmann Lecture 12 Slide 1

Scientific Computing WS 2018/2019. Lecture 12. Jürgen Fuhrmann Lecture 12 Slide 1 Scientific Computing WS 2018/2019 Lecture 12 Jürgen Fuhrmann juergen.fuhrmann@wias-berlin.de Lecture 12 Slide 1 Recap For more discussion of mesh generation, see J.R. Shewchuk: Lecture Notes on Delaunay

More information

Fast Surface Reconstruction and Segmentation with Terrestrial LiDAR Range Data by Matthew Carlberg. Research Project

Fast Surface Reconstruction and Segmentation with Terrestrial LiDAR Range Data by Matthew Carlberg. Research Project Fast Surface Reconstruction and Segmentation with Terrestrial LiDAR Range Data by Matthew Carlberg Research Project Submitted to the Department of Electrical Engineering and Computer Sciences, University

More information

The Right Read Optimization is Actually Write Optimization. Leif Walsh

The Right Read Optimization is Actually Write Optimization. Leif Walsh The Right Read Optimization is Actually Write Optimization Leif Walsh leif@tokutek.com The Right Read Optimization is Write Optimization Situation: I have some data. I want to learn things about the world,

More information

Surface Creation & Analysis with 3D Analyst

Surface Creation & Analysis with 3D Analyst Esri International User Conference July 23 27 San Diego Convention Center Surface Creation & Analysis with 3D Analyst Khalid Duri Surface Basics Defining the surface Representation of any continuous measurement

More information

Introduction to GIS 2011

Introduction to GIS 2011 Introduction to GIS 2011 Digital Elevation Models CREATING A TIN SURFACE FROM CONTOUR LINES 1. Start ArcCatalog from either Desktop or Start Menu. 2. In ArcCatalog, create a new folder dem under your c:\introgis_2011

More information

Week 8 Voronoi Diagrams

Week 8 Voronoi Diagrams 1 Week 8 Voronoi Diagrams 2 Voronoi Diagram Very important problem in Comp. Geo. Discussed back in 1850 by Dirichlet Published in a paper by Voronoi in 1908 3 Voronoi Diagram Fire observation towers: an

More information

Fast Segment Insertion and Incremental Construction of Constrained Delaunay Triangulations

Fast Segment Insertion and Incremental Construction of Constrained Delaunay Triangulations Fast Segment Insertion and Incremental Construction of Constrained Delaunay Triangulations Jonathan Richard Shewchuk, Brielin C. Brown Department of Electrical Engineering and Computer Sciences, University

More information

GEOGRAPHIC INFORMATION SYSTEMS Lecture 17: Geoprocessing and Spatial Analysis

GEOGRAPHIC INFORMATION SYSTEMS Lecture 17: Geoprocessing and Spatial Analysis GEOGRAPHIC INFORMATION SYSTEMS Lecture 17: and Spatial Analysis tools are commonly used tools that we normally use to prepare data for further analysis. In ArcMap, the most commonly used tools appear in

More information

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 High-Dimensional Computational Geometry Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 Outline 3-D vector geometry High-D hyperplane intersections Convex hull & its extension to 3

More information

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

Scalar Field Visualization. Some slices used by Prof. Mike Bailey Scalar Field Visualization Some slices used by Prof. Mike Bailey Scalar Fields The approximation of certain scalar function in space f(x,y,z). Most of time, they come in as some scalar values defined on

More information

GPU Memory Model Overview

GPU Memory Model Overview GPU Memory Model Overview John Owens University of California, Davis Department of Electrical and Computer Engineering Institute for Data Analysis and Visualization SciDAC Institute for Ultrascale Visualization

More information

Construction Of The Constrained Delaunay Triangulation Of A Polygonal Domain

Construction Of The Constrained Delaunay Triangulation Of A Polygonal Domain Construction Of The Constrained Delaunay Triangulation Of A Polygonal Domain Reinhard Klein 1 A fast and easy to implement divide-and-conquer algorithm is presented for the construction of the Constrained

More information

An experimental assessment of three point-insertion sequences for 3-D incremental Delaunay tessellations

An experimental assessment of three point-insertion sequences for 3-D incremental Delaunay tessellations An experimental assessment of three point-insertion sequences for 3-D incremental Delaunay tessellations Sanderson L. Gonzaga de Oliveira 1, Diogo T. Robaina 2, Diego N. Brandão 3, Mauricio Kischinhevsky

More information

A Cell-centered, Agent-based Method that utilizes a Delaunay and Voronoi Environment in 2- and 3-Dimensions

A Cell-centered, Agent-based Method that utilizes a Delaunay and Voronoi Environment in 2- and 3-Dimensions A Cell-centered, Agent-based Method that utilizes a Delaunay and Voronoi Environment in 2- and 3-Dimensions Ryan C. Kennedy 1, Glen E.P. Ropella 2, C. Anthony Hunt 1 1 Department of Bioengineering and

More information

Iso-surface cell search. Iso-surface Cells. Efficient Searching. Efficient search methods. Efficient iso-surface cell search. Problem statement:

Iso-surface cell search. Iso-surface Cells. Efficient Searching. Efficient search methods. Efficient iso-surface cell search. Problem statement: Iso-Contouring Advanced Issues Iso-surface cell search 1. Efficiently determining which cells to examine. 2. Using iso-contouring as a slicing mechanism 3. Iso-contouring in higher dimensions 4. Texturing

More information

Query Processing. Introduction to Databases CompSci 316 Fall 2017

Query Processing. Introduction to Databases CompSci 316 Fall 2017 Query Processing Introduction to Databases CompSci 316 Fall 2017 2 Announcements (Tue., Nov. 14) Homework #3 sample solution posted in Sakai Homework #4 assigned today; due on 12/05 Project milestone #2

More information

ICS 161 Algorithms Winter 1998 Final Exam. 1: out of 15. 2: out of 15. 3: out of 20. 4: out of 15. 5: out of 20. 6: out of 15.

ICS 161 Algorithms Winter 1998 Final Exam. 1: out of 15. 2: out of 15. 3: out of 20. 4: out of 15. 5: out of 20. 6: out of 15. ICS 161 Algorithms Winter 1998 Final Exam Name: ID: 1: out of 15 2: out of 15 3: out of 20 4: out of 15 5: out of 20 6: out of 15 total: out of 100 1. Solve the following recurrences. (Just give the solutions;

More information

Algorithms for GIS: Terrain simplification

Algorithms for GIS: Terrain simplification Algorithms for GIS: Terrain simplification Digital terrain models in GIS grid (raster) TIN Data Sources: digitizing contour maps Data Sources: satellite imagery Data Sources: satellite imagery \ Data Sources:

More information

Concurrency Terminology

Concurrency Terminology Lesson 1 Concurrency Ch 1 [BenA 06] Terminology Concurrency in Systems Problem Examples Solution Considerations 1 Concurrency Terminology Process, thread tavallinen ohjelma Ordinary program Sequential

More information

Surface Analysis with 3D Analyst

Surface Analysis with 3D Analyst 2013 Esri International User Conference July 8 12, 2013 San Diego, California Technical Workshop Surface Analysis with 3D Analyst Khalid H. Duri Esri UC2013. Technical Workshop. Why use 3D GIS? Because

More information

Merging Surface Reconstructions of Terrestrial and Airborne LIDAR Range Data

Merging Surface Reconstructions of Terrestrial and Airborne LIDAR Range Data Merging Surface Reconstructions of Terrestrial and Airborne LIDAR Range Data by James Andrews Research Project Submitted to the Department of Electrical Engineering and Computer Sciences, University of

More information

Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams

Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams Yuanxin Liu and Jack Snoeyink Joshua Levine April 18, 2007 Computer Science and Engineering, The Ohio State University 1 / 24

More information

Sign up for crits! Announcments

Sign up for crits! Announcments Sign up for crits! Announcments Reading for Next Week FvD 16.1-16.3 local lighting models GL 5 lighting GL 9 (skim) texture mapping Modern Game Techniques CS248 Lecture Nov 13 Andrew Adams Overview The

More information

ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013

ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013 ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013 TOPIC: RESEARCH PAPER Title: Data Management for SSDs for Large-Scale Interactive Graphics Applications Authors: M. Gopi, Behzad Sajadi,

More information

I/O-Algorithms Lars Arge Aarhus University

I/O-Algorithms Lars Arge Aarhus University I/O-Algorithms Aarhus University April 10, 2008 I/O-Model Block I/O D Parameters N = # elements in problem instance B = # elements that fits in disk block M = # elements that fits in main memory M T =

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

Lecture 6: GIS Spatial Analysis. GE 118: INTRODUCTION TO GIS Engr. Meriam M. Santillan Caraga State University

Lecture 6: GIS Spatial Analysis. GE 118: INTRODUCTION TO GIS Engr. Meriam M. Santillan Caraga State University Lecture 6: GIS Spatial Analysis GE 118: INTRODUCTION TO GIS Engr. Meriam M. Santillan Caraga State University 1 Spatial Data It can be most simply defined as information that describes the distribution

More information

Simulations of the quadrilateral-based localization

Simulations of the quadrilateral-based localization Simulations of the quadrilateral-based localization Cluster success rate v.s. node degree. Each plot represents a simulation run. 9/15/05 Jie Gao CSE590-fall05 1 Random deployment Poisson distribution

More information

Topology Control in 3-Dimensional Networks & Algorithms for Multi-Channel Aggregated Co

Topology Control in 3-Dimensional Networks & Algorithms for Multi-Channel Aggregated Co Topology Control in 3-Dimensional Networks & Algorithms for Multi-Channel Aggregated Convergecast Amitabha Ghosh Yi Wang Ozlem D. Incel V.S. Anil Kumar Bhaskar Krishnamachari Dept. of Electrical Engineering,

More information

An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems

An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems Long Chen University of California, Irvine chenlong@math.uci.edu Joint work with: Huayi Wei (Xiangtan University),

More information

Distributed Algorithm for Voronoi Partition of Wireless Sensor Networks with a Limited Sensing Range

Distributed Algorithm for Voronoi Partition of Wireless Sensor Networks with a Limited Sensing Range sensors Article Distributed Algorithm for Voronoi Partition of Wireless Sensor Networks with a Limited Sensing Range Chenlong He 1, * ID, Zuren Feng 1 and Zhigang Ren 2 1 State Key Laboratory for Manufacturing

More information

Vector Data Analysis Working with Topographic Data. Vector data analysis working with topographic data.

Vector Data Analysis Working with Topographic Data. Vector data analysis working with topographic data. Vector Data Analysis Working with Topographic Data Vector data analysis working with topographic data. 1 Triangulated Irregular Network Triangulated Irregular Network 2 Triangulated Irregular Networks

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

More information

Ray Casting on Programmable Graphics Hardware. Martin Kraus PURPL group, Purdue University

Ray Casting on Programmable Graphics Hardware. Martin Kraus PURPL group, Purdue University Ray Casting on Programmable Graphics Hardware Martin Kraus PURPL group, Purdue University Overview Parallel volume rendering with a single GPU Implementing ray casting for a GPU Basics Optimizations Published

More information

Volume Illumination and Segmentation

Volume Illumination and Segmentation Volume Illumination and Segmentation Computer Animation and Visualisation Lecture 13 Institute for Perception, Action & Behaviour School of Informatics Overview Volume illumination Segmentation Volume

More information