Spatial Information Systems (SIS) COMP 30110 Plane Subdivisions.

Slides:



Advertisements
Similar presentations
Order-k Voronoi Diagram in the Plane
Advertisements

TEL-AVIV UNIVERSITY FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric Average of Two Simple Polygons.
Spatial Information Systems (SIS) COMP Spatial data structures (1)
Spatial Information Systems (SIS) COMP Terrain modeling and geometric problems (part 2)
Spatial Information Systems (SIS) COMP Spatial data structures (3)
Orthogonal Drawing Kees Visser. Overview  Introduction  Orthogonal representation  Flow network  Bend optimal drawing.
Comments We consider in this topic a large class of related problems that deal with proximity of points in the plane. We will: 1.Define some proximity.
Planar straight line graph A planar straight line graph (PSLG) is a planar embedding of a planar graph G = (V, E) with: 1.each vertex v  V mapped to a.
Map Overlay Algorithm. Birch forest Wolves Map 1: Vegetation Map 2: Animals.
Spatial Information Systems (SIS) COMP Spatial data structures (2)
Convex drawing chapter 5 Ingeborg Groeneweg. Summery What is convex drawing What is convex drawing Some definitions Some definitions Testing convexity.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Applications of Euler’s Formula for Graphs Hannah Stevens.
Computational Geometry II Brian Chen Rice University Computer Science.
Krakow, Summer 2011 Schnyder’s Theorem and Relatives William T. Trotter
C o m p u t i n g C O N V E X H U L L S by Kok Lim Low 10 Nov 1998 COMP Presentation.
Spatial Information Systems (SIS) COMP Formats and Standards.
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Overlay of Two Subdivisions
Convex Hulls in 3-space Jason C. Yang.
3/5/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations II Carola Wenk Based on: Computational.
Discrete Geometry Tutorial 2 1
Mesh Representation, part II based on: Data Structures for Graphics, chapter 12 in Fundamentals of Computer Graphics, 3 rd ed. (Shirley & Marschner) Slides.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
Spatial Information Systems (SIS)
Visibility Computations: Finding the Shortest Route for Motion Planning COMP Presentation Eric D. Baker Tuesday 1 December 1998.
Computational Geometry -- Voronoi Diagram
17. Computational Geometry Chapter 7 Voronoi Diagrams.
3. Delaunay triangulation
Delaunay Triangulation Computational Geometry, WS 2006/07 Lecture 11 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
CPSC 335 Geometric Data Structures in Computer Modeling and GIS Dr. Marina L. Gavrilova Assistant Professor Dept of Comp. Science, University of Calgary,
Spatial Information Systems (SIS) COMP Spatial queries and operations.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
Spatial Information Systems (SIS) COMP Spatial relations.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.
Spatial Information Systems (SIS) COMP Terrain modeling and geometric problems.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
Recognizing Strings in NP Marcus Schaefer, Eric Sedgwick, Daniel Štefankovič Presentation by Robert Salazar.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Delaunay Triangulation.
Graph Colouring Lecture 20: Nov 25.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Chapter 4: Straight Line Drawing Ronald Kieft. Contents Introduction Algorithm 1: Shift Method Algorithm 2: Realizer Method Other parts of chapter 4 Questions?
Voronoi Diagrams.
1 University of Denver Department of Mathematics Department of Computer Science.
Quadtrees and Mesh Generation Student Lecture in course MATH/CSC 870 Philipp Richter Thursday, April 19 th, 2007.
Curve Curve: The image of a continous map from [0,1] to R 2. Polygonal curve: A curve composed of finitely many line segments. Polygonal u,v-curve: A polygonal.
The Art Gallery Problem
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
Graph Theory Chapter 6 Planar Graphs Ch. 6. Planar Graphs.
Subdivision of Edge In a graph G, subdivision of an edge uv is the operation of replacing uv with a path u,w,v through a new vertex w.
Planning Near-Optimal Corridors amidst Obstacles Ron Wein Jur P. van den Berg (U. Utrecht) Dan Halperin Athens May 2006.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
TEL-AVIV UNIVERSITY RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric.
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness)
L8 - Delaunay triangulation L8 – Delaunay triangulation NGEN06(TEK230) – Algorithms in Geographical Information Systems.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
3/3/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations I Carola Wenk Based on: Computational.
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Planarity Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering, IIT.
A Fast Algorithm for Incremental Distance Calculation Ming C. Lin & John Canny University of California, Berkeley 1991 Presentation by Adit Koolwal.
1 Schnyder’s Method. 2 Motivation Given a planar graph, we want to embed it in a grid We want the grid to be relatively small And we want an efficient.
CMPS 3130/6130 Computational Geometry Spring 2017
Introduction to Spatial Computing CSE 555
Geometric Graphs and Quasi-Planar Graphs
The Art Gallery Problem
The Art Gallery Problem
Planarity.
Overlay of Two Subdivisions
Agenda Review Lecture Content: Shortest Path Algorithm
Presentation transcript:

Spatial Information Systems (SIS) COMP Plane Subdivisions

Overlayed sets of entities If we consider overlayed sets of entities only disjoint and meet relations are possible between two polygonsIf we consider overlayed sets of entities only disjoint and meet relations are possible between two polygons Overlayed sets of entities correspond to plane graphs in which we consider not only nodes (also called vertices) and edges but also the polygons (also called faces) bounded by closed cycles of edgesOverlayed sets of entities correspond to plane graphs in which we consider not only nodes (also called vertices) and edges but also the polygons (also called faces) bounded by closed cycles of edges f1f2 n7 n1 n2 n8 n4 n3 n5n6 n9 n10 n11 e1 = (n1,n2) e2 = …

Definitions Graph G: pair (V,E) with V set of vertices and E set of pairs of vertices. Edges can be drawn in a given space by representing each vertex as a point and each edge as a (not necessarily straight) line segment joining two pointsGraph G: pair (V,E) with V set of vertices and E set of pairs of vertices. Edges can be drawn in a given space by representing each vertex as a point and each edge as a (not necessarily straight) line segment joining two points Planar graph: graph that can be drawn in the Euclidean plane in such a way that its edges do not intersect each other, except at their endpointsPlanar graph: graph that can be drawn in the Euclidean plane in such a way that its edges do not intersect each other, except at their endpoints The embedding of a planar graph in the Euclidean plane is called a plane graphThe embedding of a planar graph in the Euclidean plane is called a plane graph A planar graph can be drawn in several different ways corresponding to different locations of the vertices (i.e. obtaining different plane graphs)A planar graph can be drawn in several different ways corresponding to different locations of the vertices (i.e. obtaining different plane graphs)

Examples Planar graph and three possible embeddings in the plane

Definitions A straight-line plane graph is a connected plane graph where every edge is a straight line segmentA straight-line plane graph is a connected plane graph where every edge is a straight line segment A straigth line plane graph defines a partition of the plane into a collection of simply connected polygonal regions (i.e. regions without holes) called facesA straigth line plane graph defines a partition of the plane into a collection of simply connected polygonal regions (i.e. regions without holes) called faces Such a partition is called a plane subdivisionSuch a partition is called a plane subdivision

Plane subdivisions in GIS: examples Thematic maps:Thematic maps: Example:Example: land useland use vegetation layervegetation layer How do we represent them?How do we represent them? rural residential industrial wheat oats barley corn forest

Plane subdivisions Studied in the field of Computational Geometry [Preparata and Shamos 1985]Studied in the field of Computational Geometry [Preparata and Shamos 1985] Representations defined in this context have been used in GISRepresentations defined in this context have been used in GIS Entities in a plane subdivision: vertices, edges and facesEntities in a plane subdivision: vertices, edges and faces Euler formula: in a plane subdivision,Euler formula: in a plane subdivision, n – e + f = 1 n = # vertices e = # edges f = # (internal) faces It can also be shown that e and f are both linear in the number n of vertices. Therefore the space complexity for a plane subdivision is O(n)

Relations in a plane subdivision With three sets of entities, we can define nine ordered relations:With three sets of entities, we can define nine ordered relations: Vertex-basedVertex-based Edge-basedEdge-based Face-basedFace-based V F E EF FF FE FV VF EV VE EE VV

Vertex-based relations VE (vertex-edge): a vertex P is associated with the list of edges having P as an endpoint (edge incident in P), sorted in counter- clockwise orderVE (vertex-edge): a vertex P is associated with the list of edges having P as an endpoint (edge incident in P), sorted in counter- clockwise order VV (vertex-vertex): a vertex P is associated with the list of the endpoints (different from P) of the edges having P as an endpoint, sorted in counter-clockwise orderVV (vertex-vertex): a vertex P is associated with the list of the endpoints (different from P) of the edges having P as an endpoint, sorted in counter-clockwise order VF (vertex-face): a vertex P is associated with the list of the faces having P as a vertex, sorted in counter-clockwise orderVF (vertex-face): a vertex P is associated with the list of the faces having P as a vertex, sorted in counter-clockwise order P1 P2 P3 P e1 e2 e3 f1 f2 f3 VE(P) = [e1,e2,e3] VV(P) = [P1,P2,P3] VF(P) = [f1,f2,f3]

Face-based relations FE (face-edge): face f is associated with the list of edges on its boundary, sorted in counter-clockwise orderFE (face-edge): face f is associated with the list of edges on its boundary, sorted in counter-clockwise order FV (face-vertex): face f is associated with the list of vertices on its boundary, sorted in counter-clockwise orderFV (face-vertex): face f is associated with the list of vertices on its boundary, sorted in counter-clockwise order FF (face-face): face f is associated with the list of faces adjacent to f along an edge, sorted in counter-clockwise orderFF (face-face): face f is associated with the list of faces adjacent to f along an edge, sorted in counter-clockwise order f f4 f3 f2 f1 P1 P2 P3P4 e1 e2 e3 e4 FE(f) = [e1,e2,e3,e4] FV(f) = [P1,P2,P3,P4] FF(f) = [f1,f2,f3,f4]

Edge-based relations EV (edge-vertex): an edge e is associated with the pair of its endpointsEV (edge-vertex): an edge e is associated with the pair of its endpoints EF (edge-face): an edge e is associated with the pair of faces having e on their boundaryEF (edge-face): an edge e is associated with the pair of faces having e on their boundary if EV(e)=(P i, P j ), then EF(e)=(f i, f j ), where f i and f j lie on the left and on the right with respect to edge e oriented from P i to P jif EV(e)=(P i, P j ), then EF(e)=(f i, f j ), where f i and f j lie on the left and on the right with respect to edge e oriented from P i to P j jPjjPj iPiiPi e jfjjfj ifiifi

Edge-based relations (cont.d) EE (edge-edge): an edge e is associated with a pair of edges, each incident in one endpoint of eEE (edge-edge): an edge e is associated with a pair of edges, each incident in one endpoint of e if EV(e)=(P i, P j ), then EE(e)=(e i, e j ), where e i is the first edge encountered after e moving counter-clockwise around P i and e j is the first edge encountered after e moving counter- clockwise around P jif EV(e)=(P i, P j ), then EE(e)=(e i, e j ), where e i is the first edge encountered after e moving counter-clockwise around P i and e j is the first edge encountered after e moving counter- clockwise around P j Note that we do not consider all edges incident in endpoints of e but only 2 of them!!Note that we do not consider all edges incident in endpoints of e but only 2 of them!! jPjjPj iPiiPi e jfjjfj ifiifi ieiiei jejjej

Plane subdivisions: particular cases Some plane subdivision have particular propertiesSome plane subdivision have particular properties Examples include: - Triangular plane subdivisions (triangulations) - Voronoi diagrams Both these types of subdivisions have been studied in computational geometry and widely used in GISBoth these types of subdivisions have been studied in computational geometry and widely used in GIS

Triangulations Plane subdivisions with triangular facesPlane subdivisions with triangular faces Commonly used as a basis for digital terrain models based on a given set of sample points (more later)Commonly used as a basis for digital terrain models based on a given set of sample points (more later) In particular, Delaunay triangulations have very good propertiesIn particular, Delaunay triangulations have very good properties

Delaunay Triangulations Intuitively: given a set V of points, among all the triangulations that can be generated with the points of V, the Delaunay triangulation is the one in which triangles are as much equiangular as possibleIntuitively: given a set V of points, among all the triangulations that can be generated with the points of V, the Delaunay triangulation is the one in which triangles are as much equiangular as possible In other words, Delaunay triangulations tend to avoid long and thin triangles: important for numerical problemsIn other words, Delaunay triangulations tend to avoid long and thin triangles: important for numerical problems tP Does lie inside t or on its boundary? Does P lie inside t or on its boundary?

Empty circle property P1 P3 P4 P2 t P1 P3 P4 P2 t’t’ t does not satisfy the empty circle property t ’ satisfies the empty circle property Let  be a triangulation of a set of points V: a triangle t of  is said to satisfy the empty circle property if the circle circumscribing t does not contain any points of V in its interior. t is called a Delaunay triangleLet  be a triangulation of a set of points V: a triangle t of  is said to satisfy the empty circle property if the circle circumscribing t does not contain any points of V in its interior. t is called a Delaunay triangle

Delaunay Triangulations (cont.d) A triangulation  of a set of points V is a Delaunay triangulation if each triangle of  satisfies  the empty circle propertyA triangulation  of a set of points V is a Delaunay triangulation if each triangle of  satisfies  the empty circle property Another definition:Another definition: A triangulation  of V is Delaunay triangulation if each internal edge e is locally optimal (i.e., by exchanging it with the other diagonal e’ of the quadrilateral composed of the two triangles sharing e, the minimum internal angle becomes smaller) The Delaunay triangulation of V is unique ifThe Delaunay triangulation of V is unique if no four points of V are cocircular P1 P3 P4 P2 e e’

Voronoi Diagrams Given a set V of points in the plane, the Voronoi Diagram for V is the partition of the plane into polygons such that each polygon contains one point p of V and is composed of all points in the plane that are closer to p than to any other point of V.Given a set V of points in the plane, the Voronoi Diagram for V is the partition of the plane into polygons such that each polygon contains one point p of V and is composed of all points in the plane that are closer to p than to any other point of V.

Voronoi Diagrams (cont.d) Property: the straight-line dual of the Voronoi diagram of V is a triangulation of VProperty: the straight-line dual of the Voronoi diagram of V is a triangulation of V Dual: obtained by replacing each polygon with a point and each point with a polygon. Connect all pairs of points contained in Voronoi cells that share an edgeDual: obtained by replacing each polygon with a point and each point with a polygon. Connect all pairs of points contained in Voronoi cells that share an edge

Voronoi Diagrams (cont.d) Voronoi diagrams are used as underlying structures to solve proximity problems (queries):Voronoi diagrams are used as underlying structures to solve proximity problems (queries): Nearest neighbour (what is the point of V nearest to P?)Nearest neighbour (what is the point of V nearest to P?) K-nearest neighbours (what are the k points of V nearest to P?)K-nearest neighbours (what are the k points of V nearest to P?) Etc.Etc. P