5,018 research outputs found
Relative Convex Hull Determination from Convex Hulls in the Plane
A new algorithm for the determination of the relative convex hull in the
plane of a simple polygon A with respect to another simple polygon B which
contains A, is proposed. The relative convex hull is also known as geodesic
convex hull, and the problem of its determination in the plane is equivalent to
find the shortest curve among all Jordan curves lying in the difference set of
B and A and encircling A. Algorithms solving this problem known from
Computational Geometry are based on the triangulation or similar decomposition
of that difference set. The algorithm presented here does not use such
decomposition, but it supposes that A and B are given as ordered sequences of
vertices. The algorithm is based on convex hull calculations of A and B and of
smaller polygons and polylines, it produces the output list of vertices of the
relative convex hull from the sequence of vertices of the convex hull of A.Comment: 15 pages, 4 figures, Conference paper published. We corrected two
typing errors in Definition 2: has to be defined based on , and
has to be defined based on (not just using ). These errors
appeared in the text of the original conference paper, which also contained
the pseudocode of an algorithm where and appeared as correctly
define
Geodesic-Preserving Polygon Simplification
Polygons are a paramount data structure in computational geometry. While the
complexity of many algorithms on simple polygons or polygons with holes depends
on the size of the input polygon, the intrinsic complexity of the problems
these algorithms solve is often related to the reflex vertices of the polygon.
In this paper, we give an easy-to-describe linear-time method to replace an
input polygon by a polygon such that (1)
contains , (2) has its reflex
vertices at the same positions as , and (3) the number of vertices
of is linear in the number of reflex vertices. Since the
solutions of numerous problems on polygons (including shortest paths, geodesic
hulls, separating point sets, and Voronoi diagrams) are equivalent for both
and , our algorithm can be used as a preprocessing
step for several algorithms and makes their running time dependent on the
number of reflex vertices rather than on the size of
An Optimal Algorithm for the Separating Common Tangents of two Polygons
We describe an algorithm for computing the separating common tangents of two
simple polygons using linear time and only constant workspace. A tangent of a
polygon is a line touching the polygon such that all of the polygon lies to the
same side of the line. A separating common tangent of two polygons is a tangent
of both polygons where the polygons are lying on different sides of the
tangent. Each polygon is given as a read-only array of its corners. If a
separating common tangent does not exist, the algorithm reports that.
Otherwise, two corners defining a separating common tangent are returned. The
algorithm is simple and implies an optimal algorithm for deciding if the convex
hulls of two polygons are disjoint or not. This was not known to be possible in
linear time and constant workspace prior to this paper.
An outer common tangent is a tangent of both polygons where the polygons are
on the same side of the tangent. In the case where the convex hulls of the
polygons are disjoint, we give an algorithm for computing the outer common
tangents in linear time using constant workspace.Comment: 12 pages, 6 figures. A preliminary version of this paper appeared at
SoCG 201
On k-Convex Polygons
We introduce a notion of -convexity and explore polygons in the plane that
have this property. Polygons which are \mbox{-convex} can be triangulated
with fast yet simple algorithms. However, recognizing them in general is a
3SUM-hard problem. We give a characterization of \mbox{-convex} polygons, a
particularly interesting class, and show how to recognize them in \mbox{} time. A description of their shape is given as well, which leads to
Erd\H{o}s-Szekeres type results regarding subconfigurations of their vertex
sets. Finally, we introduce the concept of generalized geometric permutations,
and show that their number can be exponential in the number of
\mbox{-convex} objects considered.Comment: 23 pages, 19 figure
Space-Time Trade-offs for Stack-Based Algorithms
In memory-constrained algorithms we have read-only access to the input, and
the number of additional variables is limited. In this paper we introduce the
compressed stack technique, a method that allows to transform algorithms whose
space bottleneck is a stack into memory-constrained algorithms. Given an
algorithm \alg\ that runs in O(n) time using variables, we can
modify it so that it runs in time using a workspace of O(s)
variables (for any ) or time using variables (for any ). We also show how the technique
can be applied to solve various geometric problems, namely computing the convex
hull of a simple polygon, a triangulation of a monotone polygon, the shortest
path between two points inside a monotone polygon, 1-dimensional pyramid
approximation of a 1-dimensional vector, and the visibility profile of a point
inside a simple polygon. Our approach exceeds or matches the best-known results
for these problems in constant-workspace models (when they exist), and gives
the first trade-off between the size of the workspace and running time. To the
best of our knowledge, this is the first general framework for obtaining
memory-constrained algorithms
- …