140 likes | 416 Views
Polygon Triangulation. Motivation: Guarding art galleries Art gallery theorem for simple polygons Partitioning of polygons into monotone pieces Triangulation of y-monotone polygons. Guarding art galleries. “Art Gallery“ Problem. Visibility polygon. Guarding a triangulated polygon. w. v.
E N D
Polygon Triangulation • Motivation: Guarding art galleries • Art gallery theorem for simple polygons • Partitioning of polygons into monotone pieces • Triangulation of y-monotone polygons Computational Geometry Prof. Dr. Th. Ottmann
Guarding art galleries “Art Gallery“ Problem Visibility polygon Computational Geometry Prof. Dr. Th. Ottmann
Guarding a triangulated polygon Computational Geometry Prof. Dr. Th. Ottmann
w v u Triangulation of simple polygons Computational Geometry Prof. Dr. Th. Ottmann
Theorem Theorem: Every simple polygon admits a triangulation, and anytriangulation of a simple polygon with n vertices consistsof exactly n-2 triangles. Proof: By induction on n. Let n>3, and assume theorem is truefor all m<n. Let P be polygon with n vertices. We first prove the existence of a diagonal in P. Let v be leftmostvertex of P. Let u and v be two neighboring vertices of v.If uw lies in the interior of P we have found a diagonal. Else, there are one or more vertices inside the triangle defined by u, v, and w, or the diagonal uw. Let v´ be the farthest vertex from uw. The segment connecting v´ to v cannot intersect an edge of p (contradicts the definition of v´). Hence vv´ is a diagonal. Computational Geometry Prof. Dr. Th. Ottmann
Continuation of proof So a diagonal exists. Any diagonal cuts P in two simple sub-polygons P1 and P2. Let m1 be the number of vertices of P1and m2 the number of vertices of P2. Both m1 and m2 mustbe smaller than n, so by induction P1 and P2 can be triangulatedso P can be triangulated as well. Now we have to prove any triangulation of P contains n-2 triangles. Consider an arbitrary diagonal in some triangulation Tp.This diagonal cuts P into 2 subpolygons with m1 and m2 vertices.Every vertex of P occurs in exactly one of 2 subpolygons. Hencem1+m2 = n+2. So by induction any triangulation of Pi containsmi-2 triangles (m1-2) + (m2-2) = n-2 triangles. Computational Geometry Prof. Dr. Th. Ottmann
Number of triangles in any triangulation of a simple polygon with n vertices. Case 1: n=3 Case 2: n>3 Computational Geometry Prof. Dr. Th. Ottmann
Case 2: uw not completely in P w v w u v u Proof of the existence of diagonals in P Considerleftmost vertex v of P Case 1: uw completely in P Computational Geometry Prof. Dr. Th. Ottmann
Proof of the existence of a diagonal in P Computational Geometry Prof. Dr. Th. Ottmann
Computational Geometry Prof. Dr. Th. Ottmann
Idea: Compute a 3-coloring of the vertices and place guards on a color. Result: n/3 guards are sufficient. Upper and lower bounds for the number of guards We know that for any simple polygon with n vertices (n-2)guards are always enough. But can we do better? Computational Geometry Prof. Dr. Th. Ottmann
Example Computational Geometry Prof. Dr. Th. Ottmann
Theorem Theorem: Each simple polygon is 3-colorable. Proof: Dual graph is a binary tree, this means that we can find a 3-coloring using a simple DFS. Corollary: n/3guards are always sufficient to guard a simple Polygon with n vertices. Computational Geometry Prof. Dr. Th. Ottmann
Art gallery theorem Theorem: For a simple polygon with n vertices, n/3 cameras are occasionally necessary and always sufficient to have every point in the polygon visible from at least one of the cameras. Proof: Worst-case example. Computational Geometry Prof. Dr. Th. Ottmann