
EWCG 2006, Delphi, March 27–29, 2006 Pseudo-Convex Decomposition of Simple Polygons∗ Stefan Gerdjikov† Alexander Wolff‡ Abstract e.g. for point location or ray shooting. For decom- positions of simple polygons the same terms as for We extend a dynamic-programming algorithm of Keil decompositions of point sets apply. A decomposition and Snoeyink for finding a minimum convex decompo- is called minimum if it consists of the minimum num- sition of a simple polygon to the case when both con- ber of regions. vex polygons and pseudo-triangles are allowed. Our In this paper we give an algorithm for comput- algorithm determines a minimum pseudo-convex de- ing minimum pseudo-convex decompositions of simple composition of a simple polygon in O(n3) time where polygons. Given a simple polygon we use the same ap- n is the number of the vertices of the polygon. In this proach as Gudmundsson and Levcopoulos [4] to deter- way we obtain a well-structured decomposition with mine all geodesics in the polygon which can be sides fewer polygons, especially if the original polygon has of a pseudo-triangle and present a simple way to check long chains of concave vertices. whether three such geodesics form a pseudo-triangle. We use dynamic programming to solve proper sub- problems which then can be combined to obtain a 1 Introduction global solution. The resulting algorithm runs in O(n3) 2 Pseudo-triangles are simple polygons with exactly time and uses O(n ) space. three convex angles, i.e. interior angles of less than Our algorithm is based on a general technique for 180◦. Recently they have emerged to have geometri- decomposing a simple polygon into polygons of a cer- cal properties of interest for rigidity theory and ray- tain type proposed by Keil [5]. The technique is based shooting problems [2]. This is why pseudo-triangles on optimally decomposing subpolygons each of which is obtained from the original by drawing a single di- have been considered in relation with the decomposi- 3 tion problem of a set of points. It is defined as follows. agonal. This idea yields an O(n log n)-time algo- rithm for the convex decomposition problem [5]. Keil Given a set S of n points in the plane, decompose and Snoeyink [6] improve Keil’s result by giving an the convex hull of S into polygons of a given type O(min(nr2, r4))-time algorithm, where r is the num- such that the vertices of the polygons are in S and ber of reflex vertices of the polygon. each point in S is a vertex of at least one of the polygons. The decomposition is called convex if only convex polygons are allowed, pseudo-triangulation if 2 Characterization of Pseudo-Triangles only pseudo-triangles are allowed, and pseudo-convex + − if both pseudo-triangles and convex polygons can be We use P (Ai, Aj ) and P (Ai, Aj ) to denote the used. Convex decompositions have been considered paths on the boundary ∂P from a vertex Ai to a ver- by Fevens et al. [3]. Streinu [7] shows that the min- tex Aj of P in clockwise and anticlockwise direction, imum number of edges needed to obtain a pseudo- respectively. With vis(Ai) we denote the list of all triangulation is 2n−3 and thus, by Euler, the number vertices of P which are visible from Ai in clockwise of pseudo-triangles is n−2, which does not depend on order starting with Ai+1. Unless stated otherwise, the the structure of the point set but only on its size. This vertices of a polygon will be given in clockwise order. motivates research on the problem of enumerating all minimum pseudo-triangulations [2]. Aichholzer et al. Definition 1 Let P = A0A1 ...An−1 be a simple [1] study pseudo-convex decompositions. They show polygon. A path p = B1B2 ...Bm from Ai to Aj that each minimum pseudo-convex decomposition of is a concave geodesic with respect to the polygon P if a set of n points consists of less than 7n/10 polygons. it satisfies the following three conditions, see Fig. 1: A related problem is the decomposition of simple (G1) B1 = A and B = A . polygons into convex polygons or pseudo-triangles, i m j ∗ (G2) For each k<m it holds that Bk+1 is the last Work supported by grant WO 758/4-2 of the German Re- + search Foundation (DFG). vertex on P (Bk, Aj ) which is visible from Bk. †st [email protected] ‡Fakult¨at f¨ur Informatik, Universit¨at Karlsruhe, (G3) B1B2 ...Bm is a convex, anticlockwise oriented P.O. Box 6980, D-76128 Karlsruhe, Germany. WWW: polygon. i11www.ira.uka.de/people/awolff 13 22nd European Workshop on Computational Geometry, 2006 A P k Bm−1 B2 π 2 π3 Aj = Bm Ai = B1 π1 Aj Ai Figure 1: The geodesic B1B2 ...Bm from Ai to Aj is concave with respect to the simple polygon P . Figure 3: Testing whether three concave geodesics π1, π2, and π3 define a pseudo-triangle Remark 1 If B1B2 ...Bm is a concave geodesic from B1 to Bm with respect to a simple polygon P then + be such that Ai ∈ T (Aj , Ak) violates the construc- B2 ...Bm is a concave geodesic from B2 to Bm with tion proposed in property (G2). Let As be the vertex respect to P . + on T (Aj , Ak) after Ai and let k ≥ t>s be such For our further considerations we will need the fol- that At is visible from Ai. It is clear that s>i. lowing fact [6]: Due to Fact 1 we obtain that the edges AiAi+1, AiAs and AiAt appear in clockwise order around Ai. In + Fact 1 Let Ai be a vertex of P = A0A1 ...An−1. particular, because of the convexity of T (Ai, Ak)Ai, + Then the cyclic order of the line segments AiAj with AiAt intersects T (Ai, Ak) only in Ai and AiAs is + AiAj ⊆ P around Ai is the same as the order of their contained in the polygon P (Ai, At)Ai. However, Ak + other endpoints along ∂P . lies outside this polygon and thus T (Ai, Ak) leaves + P (Ai, At)Ai in some point x which does not belong + The following lemma states the relationship be- to AiAt, see Fig 2. Therefore T (Ai, Ak) leaves P . tween the concave geodesics in a simple polygon and Contradiction. the pseudo-triangles that can participate in a decom- position of the polygon. Next we establish the converse relation. Namely three concave geodesics determine a pseudo-triangle. Lemma 1 If a pseudo-triangle T is contained in a simple polygon P = A0A1 ...An−1 with convex ver- Lemma 2 Let P = A0A1 ...An−1 be a simple poly- tices at Aj , Ak and Al, j<k<l, then the paths + + + gon. Further let i<j<k and π1 = Ai ...Aj , π2 = T (Aj , Ak), T (Ak, Al) and T (Al, Aj ) are concave A ...A and π3 = A ...A be concave geodesics geodesics with respect to P . j k k i with respect to P . If the triangle AiAj Ak is clock- wise oriented, then the polygon π1π2π3 is a pseudo- Proof. (Sketch) Due to symmetry it suffices to prove triangle. + that T (Aj , Ak) is a concave geodesic. Proper- ties (G1) and (G3) of a concave geodesic obviously hold. Thus we have to verify only property (G2). Proof. (Idea) See Fig. 3. Using that, say π1 and π2 + First note that T (Aj , Ak) contains only vertices have only one common vertex, one can show that they + of P that lie on P (Aj , Ak), for otherwise T wouldn’t have no other common points. Then the orientation + be simple. Now assume that T (Aj , Ak) does not of the triangle AiAj Ak together with property (G2) satisfy property (G2), see Fig. 2. Let k >i ≥ j from Definition 1 provide that in fact π1 is contained in the triangle AiAj Ak. Similar considerations for A the paths π2 and π3 show that π1π2π3 is a pseudo- l triangle. A t 3 Algorithm A s Ai x We use the same approach for finding a minimum pseudo-convex decomposition of a simple polygon as Keil and Snoeyink [6] for finding the minimum con- Ak Aj vex decomposition of a polygon. Namely we consider smaller simple polygons which are obtained from the Figure 2: Each pseudo-triangle consists of three con- original polygon by drawing a single diagonal. For cave geodesics that connect its convex vertices. The each such polygon we make assumptions in what sort + arcs denote the boundary of P (Aj , At) and the solid of polygon the diagonal can be included. In case the + lines denote the edges of T (Aj , Ak). diagonal is a part of a convex polygon we use the 14 EWCG 2006, Delphi, March 27–29, 2006 algorithm of Keil and Snoeyink [6]. In case the di- convex polygon C = Aj ...Ak ∪ T , where Aj ...Ak is agonal is part of a pseudo-triangle we proceed as fol- a smaller convex polygon. In the former case, an op- lows. Assume we have a precomputed list L of all timal decomposition of Pij consists of wik + wkj +1 concave geodesics w.r.t. P . Then we can filter L to polygons. In the latter case the decomposition of Pij find all pseudo-triangles that contain the diagonal as is the union of two pseudo-convex decompositions: an edge. For each such pseudo-triangle T we compute (i) that of Pik and (ii) that of Pkj under the con- 0 the size of an optimal decomposition that contains T .
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages4 Page
-
File Size-