Results 1  10
of
13
Topologically Sweeping Visibility Complexes via Pseudotriangulations
, 1996
"... This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal run ..."
Abstract

Cited by 86 (9 self)
 Add to MetaCart
This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal running time, this is the first optimal algorithm that uses only linear space. The visibility graph or the visibility complex can be computed in the same time and space. The only complicated data structure used by the algorithm is a splittable queue, which can be implemented easily using redblack trees. The algorithm is conceptually very simple, and should therefore be easy to implement and quite fast in practice. The algorithm relies on greedy pseudotriangulations, which are subgraphs of the visibility graph with many nice combinatorial properties. These properties, and thus the correctness of the algorithm, are partially derived from properties of a certain partial order on the faces of th...
Hamiltonian Triangulations for Fast Rendering
, 1994
"... Highperformance rendering engines in computer graphics are often pipelined, and their speed is bounded by the rate at which triangulation data can be sent into the machine. To reduce the data rate, it is desirable to order the triangles so that consecutive triangles share a face, meaning that only ..."
Abstract

Cited by 65 (8 self)
 Add to MetaCart
Highperformance rendering engines in computer graphics are often pipelined, and their speed is bounded by the rate at which triangulation data can be sent into the machine. To reduce the data rate, it is desirable to order the triangles so that consecutive triangles share a face, meaning that only one additional vertex need be transmitted to describe each triangle. Such an ordering exists if and only if the dual graph of the triangulation contains a Hamiltonian path. In this paper, we consider several problems concerning triangulations with Hamiltonian duals. Specifically, we ffl Show that any set of n points in the plane has a Hamiltonian triangulation, and give two optimal \Theta(n log n) algorithms for constructing such a triangulation. We have implemented and tested both algorithms. ffl Consider the special case of sequential triangulations, where the Hamiltonian cycle is implied, and prove that certain nondegenerate point sets in the plane do not admit a sequential triangulati...
Computing the Visibility Graph via Pseudotriangulations
 In Proc. 11th Annu. ACM Sympos. Comput. Geom
, 1995
"... We show that the k free bitangents of a collection of n pairwise disjoint convex plane sets can be computed in time O(k+n log n) and O(n) working space. The algorithm uses only one advanced data structure, namely a splittable queue. We introduce (weakly) greedy pseudotriangulations, whose combinat ..."
Abstract

Cited by 31 (2 self)
 Add to MetaCart
We show that the k free bitangents of a collection of n pairwise disjoint convex plane sets can be computed in time O(k+n log n) and O(n) working space. The algorithm uses only one advanced data structure, namely a splittable queue. We introduce (weakly) greedy pseudotriangulations, whose combinatorial properties are crucial for our method. 1 Introduction Consider a collection O of pairwise disjoint convex objects in the plane. We are interested in problems in which these objects arise as obstacles, either in connection with visibility problems where they can block the view from an other geometric object, or in motion planning, where these objects may prevent a moving object from moving along a straight line path. The visibility graph is a central object in such contexts. For polygonal obstacles the vertices of these polygons are the nodes of the visibility graph, and two nodes are connected by an arc if the corresponding vertices can see each other. [9] describes the first nontriv...
Efficient Visibility Queries in Simple Polygons
"... We present a method of decomposing a simple polygon that allows the preprocessing of the polygon to efficiently answer visibility queries of various forms in an output sensitive manner. Using O(n3 log n) preprocessing time and O(n3) space, we can, given a query point q inside or outside an n verte ..."
Abstract

Cited by 24 (2 self)
 Add to MetaCart
We present a method of decomposing a simple polygon that allows the preprocessing of the polygon to efficiently answer visibility queries of various forms in an output sensitive manner. Using O(n3 log n) preprocessing time and O(n3) space, we can, given a query point q inside or outside an n vertex polygon, recover the visibility polygon of q in O(log n + k) time, where k is the size of the visibility polygon, and recover the number of vertices visible from q in O(log n) time. The key notion
TwoGuard Walkability Of Simple Polygons
, 1996
"... A pair of points s and g on the boundary of a simple polygon P admits a walk if two guards can simultaneously walk along the two boundary chains of P from s to g such that they are always visible to each other. The walk is a counterwalk if one guard moves from s to g while the other moves from g t ..."
Abstract

Cited by 20 (0 self)
 Add to MetaCart
A pair of points s and g on the boundary of a simple polygon P admits a walk if two guards can simultaneously walk along the two boundary chains of P from s to g such that they are always visible to each other. The walk is a counterwalk if one guard moves from s to g while the other moves from g to s in the same direction along the boundary and they are always visible to each other. The (counter)walk is straight if no backtracking is necessary during the (counter)walk. In this paper, we show that, given a polygon with n vertices, to test if there exists (s; g) that admits a (straight) (counter)walk can be solved in time O(n log n) and in linear space. Also we compute all (s; g)'s that admit a (straight) walk in O(n log n) time and all vertex pairs that admit a (straight) counterwalk in O(n log n +m), where m is O(n 2 ). Keywords: Visibility, watchman routes, motion planning, simple polygon, circulararc graph. 1. Introduction Given a simple polygon P , a pair of distinct poi...
Generating Random Polygons with Given Vertices
, 1996
"... The problem of generating "random" geometric objects is motivated by the need to generate test instances for geometric algorithms. We examine the specific problem of generating a random xmonotone polygon on a given set of n vertices. Here, "random" is taken to mean that we select uniformly at rand ..."
Abstract

Cited by 13 (1 self)
 Add to MetaCart
The problem of generating "random" geometric objects is motivated by the need to generate test instances for geometric algorithms. We examine the specific problem of generating a random xmonotone polygon on a given set of n vertices. Here, "random" is taken to mean that we select uniformly at random a polygon, from among all those xmonotone polygons having the given n vertices. We give an algorithm that generates a random monotone polygon in O(n) time and space after O(K) preprocessing time, where n ! K ! n 2 is the number of edges of the visibility graph of the xmonotone chain of the given vertex set. We also give an O(n 3 ) time algorithm for generating a random convex polygon whose vertices are a subset of a given set of n points. Finally, we discuss some further extensions, as well as the challenging open problem of generating random simple polygons. "Anyone who attempts to generate random numbers by deterministic means is, of course, living in a state of sin."  John v...
Computing the visibility graph of points within a polygon
 In Symposium on Computational Geometry
, 2004
"... We study the problem of computing the visibility graph defined by a set P of n points inside a polygon Q: two points p, q ∈ P are joined by an edge if the segment pq ⊂ Q. Efficient outputsensitive algorithms are known for the case in which P is the set of all vertices of Q. We examine the general c ..."
Abstract

Cited by 9 (4 self)
 Add to MetaCart
We study the problem of computing the visibility graph defined by a set P of n points inside a polygon Q: two points p, q ∈ P are joined by an edge if the segment pq ⊂ Q. Efficient outputsensitive algorithms are known for the case in which P is the set of all vertices of Q. We examine the general case in which P is an arbitrary set of points, interior or on the boundary of Q and study a variety of algorithmic questions. We give an outputsensitive algorithm, which is nearly optimal, when Q is a simple polygon. We introduce a notion of “fat ” or “robust ” visibility, and give a nearly optimal algorithm for computing visibility graphs according to it, in polygons Q that may have holes. Other results include an algorithm to detect if there are any visible pairs among P, and algorithms for outputsensitive computation of visibility graphs with distance restrictions, invisibility graphs, and rectangle visibility graphs.
Shortest Paths Help Solve Geometric Optimization Problems in Planar Regions
 SIAM J. Comput
"... The goal of this paper is to show that the concept of the shortest path inside a polygonal region contributes to the design of efficient algorithms for certain geometric optimization problems involving simple polygons: computing optimum separators, maximum area or perimeter inscribed triangles, a mi ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
The goal of this paper is to show that the concept of the shortest path inside a polygonal region contributes to the design of efficient algorithms for certain geometric optimization problems involving simple polygons: computing optimum separators, maximum area or perimeter inscribed triangles, a minimum area circumscribed concave quadrilateral, or a maximum area contained triangle. The structure for our algorithms is as follows: a) decompose the initial problem into a lowdegree polynomial number of optimization problems; b) solve each individual subproblem in constant time using standard methods of calculus, basic methods of numerical analysis, or linear programming. These same optimization techniques can be applied to splinegons (curved polygons). To do this, we first develop a decomposition technique for curved polygons which we substitute for triangulation in creating equally efficient curved versions of the algorithms for the shortestpath tree, rayshooting and twopoint shortes...
Visibility in Simple Polygons
, 1991
"... We present a new method of decomposing a simple polygon which allows the preprocessing of the polygon to efficiently answer queries of various forms. Using ) space, we can, given a query point q inside or outside the polygon, recover the number of vertices visible from q in O(log n) time. Also, ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
We present a new method of decomposing a simple polygon which allows the preprocessing of the polygon to efficiently answer queries of various forms. Using ) space, we can, given a query point q inside or outside the polygon, recover the number of vertices visible from q in O(log n) time. Also, we can recover the visibility polygon of q in O(log n + k) time, where k is the size of the visibility polygon.