Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem.

Similar presentations


Presentation on theme: "Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem."— Presentation transcript:

1 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem for simple polygons Partitioning of polygons into monotone pieces Triangulation of y-monotone polygons

2 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding art galleries “Art Gallery“ Problem

3 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding art galleries The gallery is represented by a simple polygon A guard is represented by a point within the polygon Guards have a viewport of 360° A polygon is completely guarded, if every point within the polygon is guarded by at least one of the watchmen

4 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding art galleries Demo Visibility polygon: The visibility polygon vis(p) of a polygon P is defined by the set of all points that are visible from the base point p.

5 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding art galleries We will consider the lower bound for the worst case: We want to determine the number of guards that suffice for an arbitrary polygon with n vertices. Even if two polygons have the same number of vertices, one may be easier to guard than the other.

6 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding art galleries If the polygon is complex, it is not obvious to see how many gurads are needed. Idea: Divide the polygon into pieces that are easy to guard

7 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Guarding a triangulated polygon

8 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Triangulation of simple polygons w v u Does every simple polygon admit a triangulation? If yes, what is the number of triangles? Does any triangulation lead to the same number of triangles?

9 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Theorem Theorem: Every simple polygon admits a triangulation, and any triangulation of a simple polygon with n vertices consists of exactly n-2 triangles. Proof:By induction on n. Let n>3, and assume theorem is true for all m<n. Let P be polygon with n vertices. We first prove the existence of a diagonal in P. Let v be leftmost vertex 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.

10 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Case 2: uw not completely in P Proof of the existence of diagonals in P Consider leftmost vertex v of P Case 1: uw completely in P u v w u v w

11 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Continuation of proof So a diagonal exists. Any diagonal cuts P in two simple sub- polygons P 1 and P 2. Let m 1 be the number of vertices of P 1 and m 2 the number of vertices of P 2. Both m 1 and m 2 must be smaller than n, so by induction P 1 and P 2 can be triangulated so 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 T p. This diagonal cuts P into 2 subpolygons with m 1 and m 2 vertices. Every vertex of P occurs in exactly one of 2 subpolygons. Hence m 1 +m 2 = n+2. So by induction any triangulation of P i contains m i -2 triangles  (m 1 -2) + (m 2 -2) = n-2 triangles.

12 Lecture 3: Polygon Triangulation 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

13 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Case 2: uw not completely in P Proof of the existence of diagonals in P Consider leftmost vertex v of P Case 1: uw completely in P u v w u v w

14 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann 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?

15 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Upper and lower bounds for the number of guards Idea: Compute a 3-coloring of the vertices and place guards on a color. Result:  n/3  guards are sufficient.

16 Lecture 3: Polygon Triangulation 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/3  guards are always sufficient to guard a simple Polygon with n vertices.

17 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Example

18 Lecture 3: Polygon Triangulation 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. Worst-case example?

19 Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Art gallery theorem Worst-case example: Demo


Download ppt "Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem."

Similar presentations


Ads by Google