Transcript Document
Spatial Information Systems (SIS) COMP 30110 Plane Subdivisions Overlayed sets of entities • If 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 edges n1 e1 = (n1,n2) e2 = … n8 n2 f1 n3 n7 n6 n5 n4 n9 f2 n10 n11 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 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 endpoints • The 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) Examples Planar graph and three possible embeddings in the plane 1 2 4 1 2 3 1 2 1 2 4 4 3 4 3 3 Definitions • A 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 faces • Such a partition is called a plane subdivision Plane subdivisions in GIS: examples • Thematic maps: • Example: • land use • vegetation layer residential barley wheat rural oats corn industrial • How do we represent them? forest Plane subdivisions • Studied in the field of Computational Geometry [Preparata and Shamos 1985] • Representations defined in this context have been used in GIS • Entities in a plane subdivision: vertices, edges and faces • 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: • Vertex-based EE • Edge-based • Face-based E EF EV VE VV V FE VF FV F FF 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 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 order • VF (vertex-face): a vertex P is associated with the list of the faces having P as a vertex, sorted in counter-clockwise order P2 e2 f3 f2 P P1 e1 VE(P) = [e1,e2,e3] f1 VV(P) = [P1,P2,P3] e3 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 order • FV (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 order f1 P2 e1 P1 f2 e2 P3 f e3 f3 e4 P4 FE(f) = [e1,e2,e3,e4] f4 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 endpoints • EF (edge-face): an edge e is associated with the pair of faces having e on their boundary • if EV(e)=(Pi , Pj), then EF(e)=(fi , fj ), where fi and fj lie on the left and on the right with respect to edge e oriented from Pi to Pj Pj fi Pi e fj Edge-based relations (cont.d) • EE (edge-edge): an edge e is associated with a pair of edges, each incident in one endpoint of e • if EV(e)=(Pi , Pj), then EE(e)=(ei , ej ), where ei is the first edge encountered after e moving counter-clockwise around Pi and ej is the first edge encountered after e moving counterclockwise around Pj ei Pi Pj fi e ej fj • Note that we do not consider all edges incident in endpoints of e but only 2 of them!! Plane subdivisions: particular cases • Some 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 GIS Triangulations • Plane subdivisions with triangular faces • 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 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 possible • In other words, Delaunay triangulations tend to avoid long and thin triangles: important for numerical problems t Does P lie inside t or on its boundary? P Empty circle property •Let t be a triangulation of a set of points V: a triangle t of t 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 P2 P2 t t’ P1 P3 P3 P4 t does not satisfy the empty circle property P4 t’ satisfies the empty circle property P1 Delaunay Triangulations (cont.d) • A triangulation t of a set of points V is a Delaunay triangulation if each triangle of t satisfies the empty circle property • Another definition: A triangulation t 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) P2 e’ P3 • The Delaunay triangulation of V is unique if no four points of V are cocircular P4 e P1 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. Voronoi Diagrams (cont.d) • Property: 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 edge Voronoi Diagrams (cont.d) • Voronoi diagrams are used as underlying structures to solve proximity problems (queries): • Nearest neighbour (what is the point of V nearest to P?) • K-nearest neighbours (what are the k points of V nearest to P?) • Etc. P