8
Geometric Data Structures Lecture 3 January 15, 2019

Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

Geometric Data Structures

Lecture 3January 15, 2019

Page 2: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

Today

» Incidence Graph» Half-Edge» Triangle-Edge» Reading : Ernst Mücke» http://homepages.loria.fr/BLevy/GEOGRAM/

geogram_demo_Delaunay2d.html» http://alexbeutel.com/webgl/voronoi.html

E0 244 : Computational Geometry and Topology 1

Page 3: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

Geometry and Connectivity

» A good data structure separates the geometry from connectivity (topology)§ Geometry: locations of the vertices§ Connectivity: organization of

geometric primitives§ Connectivity holds even if geometry

changes

E0 244 : Computational Geometry and Topology #2

Page 4: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

E0 244 : Computational Geometry and Topology #3

Half-Edge

Page 5: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

Triangle-Edge

» Operations» Algebra» Implementation

E0 244 : Computational Geometry and Topology 4

Page 6: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

E0 244 : Computational Geometry and Topology 5

Ordered Triangles

» Storage§ Vertex

coords§ fnext pointers

» Methods§ org§ sym§ enext§ fnext

Page 7: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

More Geometric Data Structures

» de Berg et al.§ Chapters on Range Searching, Geometric Data

Structures, Binary Space Partition, Quad Trees» k-d tree

§ Range searching» Interval tree, segment tree

§ Range searching objects§ Windowing query

» BSP tree, quad tree, octree§ space partitions§ near neighbor query

E0 244 : Computational Geometry and Topology 6

Page 8: Geometric Data Structures - CSA€¦ · geometric primitives §Connectivity holds even if geometry changes E0 244 : Computational Geometry and Topology #2. E0 244 : Computational

More Geometric Data Structures

» Shivashankar and Natarajan§ http://vgl.csa.iisc.ac.in/mscomplex/

» Morse-Smale complex§ Cell complex§ Partition of gradient field into regions with uniform flow

» Gudhi§ https://project.inria.fr/gudhi/§ https://hal.inria.fr/hal-01364648

» Simplicial complexes§ Represent spaces in higher dimensions§ Building blocks are vertices, edges, triangles, …

E0 244 : Computational Geometry and Topology 7