Triangulating and Guarding Realistic Polygons

Triangulating and Guarding Realistic Polygons

CCCG 2008, Montr´eal, Qu´ebec, August 13–15, 2008 Triangulating and Guarding Realistic Polygons G. Aloupis ∗ P. Bose † V. Dujmovic ‡ C. Gray § S. Langerman ¶ B. Speckmann § Abstract formal definitions. We propose a new model defining realistic input: the We propose a new model of realistic input: k-guardable number of guards that are required to see the boundary objects. An object is k-guardable if its boundary can of an input object. We use the term k-guardable to be seen by k guards in the interior of the object. In denote any object whose boundary can be seen by k this abstract, we describe a simple algorithm for trian- guards. A rigorous definition of what it means for a gulating k-guardable polygons. Our algorithm, which is guard to see can be found in the next section. easily implementable, takes linear time assuming that k In the full paper, we discuss the connection between is constant. k-guardable polygons and other measures of realistic in- put. In particular, we show that (α, β)-covered polygons 1 Introduction are k-guardable. An (α, β)-covered polygon is a type of fat polygon designed to model the intuitive notion of Algorithms and data structures in computational geom- fatness for non-convex input. This is a type of polygon etry often display their worst-case performance on intri- P that has the property that every point p ∈ ∂P admits cate input configurations that seem artificial or unrealis- a triangle with minimum angle at least α and minimum tic when considered in the context of the original prob- edge length at least β · diam(P ) for given constants α lem. In “practical” situations, many algorithms and and β. In the full paper we prove: data structures—binary space partitions are a notable Theorem 1 The boundary of any (α, β)-covered poly- example—tend to perform much better than predicted gon can be guarded with ⌈32π/(αβ2)⌉ guards. by the theoretical bounds. An attempt to understand this disparity and to quantify “practical” or “normal” In this abstract we describe an algorithm for triangu- with respect to input are realistic input models [5]. Here lating k-guardable polygons. Our algorithm, which was one places certain restrictions on the shape and/or dis- designed with simplicity in mind, takes O(kn) time, that tribution of the input objects so that most, if not all, hy- is, linear time assuming that k is constant. We also show pothetical worst-case examples are excluded. Analyzing that, if the link diameter—see the next section for a for- the algorithm or data structure in question under these mal definition—of the input polygon is d, this algorithm input assumptions tends to lead to performance bounds takes O(dn) time—a slightly stronger result. In the full that are much closer to actually observed behavior. paper we describe a second algorithm which also trian- Many realistic input models have been proposed. gulates k-guardable polygons in O(kn) time. That algo- These include low-density scenes [5], where it is as- rithm uses even easier subroutines than the one given in sumed that the number of “large” objects intersecting this abstract, but it requires the actual guards as input, a “small” volume is bounded, and local polyhedra [7], which might be undesirable in certain situations. where it is assumed that the ratio of lengths between In 1991 Chazelle [2] presented a linear time algo- edges coming from a single vertex is limited by a con- rithm to triangulate any simple polygon. However, stant. One of the most widely studied realistic input after all these years it is still a major open problem models assumes that input objects are fat, that is, they in computational geometry to design an implementable are not arbitrarily long and skinny. There are several linear-time algorithm for triangulation. There are sev- ways to characterize fat objects—see the full paper for eral implementable algorithms which triangulate poly- gons in near-linear time. For example, Kirkpatrick et ∗Carleton University & Universit´e Libre de Bruxelles, al. [11] describe an O(n log log n) algorithm and Sei- [email protected]. † del [15] presents a randomized algorithm which runs Carleton University, [email protected]. in O(n log∗ n) expected time. We contend that our al- ‡McGill University, [email protected]. §TU Eindhoven, {cgray,speckman}@win.tue.nl. C.G. is sup- gorithm is conceptually simpler than the O(n log log n) ported by the Netherlands’ Organisation for Scientific Research algorithm and that it has a slight advantage over the (NWO) under project no. 639.023.301. B.S. is supported by the Seidel algorithm because it is deterministic. It is also Netherlands’ Organisation for Scientific Research (NWO) under interesting to note that the Seidel algorithm requires project no. 639.022.707. ¶Chercheur Qualifi´edu FNRS, Universit´eLibre de Bruxelles, Ω(n log n) random bits, which makes it theoretically un- Belgique, [email protected]. desirable in some models. 20th Canadian Conference on Computational Geometry, 2008 Relationships between shape complexity and the p ∈ P with respect to P , denoted by VP (p,P ) is the number of steps necessary to triangulate polygons have set of points in P that are visible from p. Visibility been investigated before. For example, it has been polygons are star-shaped and have complexity O(n). shown that monotone polygons [17], star-shaped poly- VP (p,P ) can be computed in O(n) time [6] with an gons [14], and edge-visible polygons [16] can all be trian- algorithm that is non-trivial but fairly simple. It in- gulated in linear time by fairly simple algorithms. Other volves a single scan of the polygon and a stack. See measures of shape complexity that have been studied in- O’Rourke’s book [13] for a good summary. clude the number of reflex vertices [9] or the sinuosity A concept related to visibility in a polygon P is the [3] of the polygon. link distance, which we denote by ld(p, q) for two points Several algorithms and data structures exist for col- p and q in P . Consider a polygonal path π that con- lections of realistic objects. For example, the problem of nects p and q while staying in int(P ). We say that π is ray-shooting in an environment consisting of fat objects a minimum link path if it has the fewest number of seg- has been studied extensively [1, 4, 10]. But there are ments (links) among all such paths. The link distance few results concerning individual realistic objects. We of p and q is the number of links of a minimum link path hope that our results on triangulating realistic polygons between p and q. We define the link diameter d of P will encourage further research in this direction. to be maxp,q∈P ld(p, q). The link diameter of a polygon The following section introduces the definitions used may be much less than the number of guards required throughout this abstract and presents several useful to see its boundary, and is upper bounded by the num- tools. Section 3 describes the triangulation algorithm. ber of guards required to see the boundary. This can We conclude in Section 4 with some open problems. be seen in the so-called “comb” polygons that generally have a low link diameter but need a linear number of 2 Tools and definitions guards. Let Q be a subpolygon of P , where all vertices of Q Throughout this paper let P be a simple polygon with are on ∂P . If all vertices of Q coincide with vertices of n vertices. We denote the interior of P by int(P ), P , then we call Q a pure subpolygon. If ∂P intersects the boundary of P by ∂P , and the diameter of P by an edge w of ∂Q only at w’s endpoints, then w is called diam(P ). The boundary is considered part of the poly- a window of Q. Any window w separates P into two gon, that is, P = int(P ) ∪ ∂P . We say that a point p is subpolygons. The one not containing Q is the pocket of in P if p ∈ int(P ) ∪ ∂P . w with respect to Q (see Fig. 1). The segment or edge between two points p and q is The edge-visibility polygon, EVP (e, P ) of an edge e denoted by pq. The same notation implies the direction with respect to polygon P consists of all points in P from p to q if necessary. Two points p and q in P see that are visible from at least one point on e. We define each other if pq ∩P = pq. If p and q see each other, then an extended edge-visibility polygon of e with respect to we also say that p is visible from q and vice versa. We P , denoted by EEVP (e, P ), to be the smallest pure sub- call a polygon P k-guardable if there exists a set G of k polygon of P that contains EVP (e, P ). These concepts points in P called guards such that every point p ∈ ∂P are illustrated in Figure 2. can see at least one point in G. (a) (b) q y wi P (wi) x w P p Pw p Figure 2: (a) The shaded area is the edge-visible poly- Figure 1: The visibility polygon VP (p,P ) is shaded. Pw gon of the dashed edge; (b) the associated extended edge is the pocket of w with respect to VP (p,P ).

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    4 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us