3,522 research outputs found
A technique for adding range restrictions to generalized searching problems
In a generalized searching problem, a set of colored geometric objects has to be stored in a data structure, such that for any given query object , the distinct colors of the objects of intersected by can be reported efficiently. In this paper, a general technique is presented for adding a range restriction to such a problem. The technique is applied to the problem of querying a set of colored points (resp.\ fat triangles) with a fat triangle (resp.\ point). For both problems, a data structure is obtained having size and query time . Here, denotes the number of colors reported by the query, and is an arbitrarily small positive constant
Marked Ancestor Problems (Preliminary Version)
Consider a rooted tree whose nodes can be marked or unmarked. Given a node, we want to find its nearest marked ancestor. This generalises the well-known predecessor problem, where the tree is a path. We show tight upper and lower bounds for this problem. The lower bounds are proved in the cell probe model, the upper bounds run on a unit-cost RAM. As easy corollaries we prove (often optimal) lower bounds on a number of problems. These include planar range searching, including the existential or emptiness problem, priority search trees, static tree union-find, and several problems from dynamic computational geometry, including intersection problems, proximity problems, and ray shooting. Our upper bounds improve a number of algorithms from various fields, including dynamic dictionary matching and coloured ancestor problems
An Algorithmic Study of Manufacturing Paperclips and Other Folded Structures
We study algorithmic aspects of bending wires and sheet metal into a
specified structure. Problems of this type are closely related to the question
of deciding whether a simple non-self-intersecting wire structure (a
carpenter's ruler) can be straightened, a problem that was open for several
years and has only recently been solved in the affirmative.
If we impose some of the constraints that are imposed by the manufacturing
process, we obtain quite different results. In particular, we study the variant
of the carpenter's ruler problem in which there is a restriction that only one
joint can be modified at a time. For a linkage that does not self-intersect or
self-touch, the recent results of Connelly et al. and Streinu imply that it can
always be straightened, modifying one joint at a time. However, we show that
for a linkage with even a single vertex degeneracy, it becomes NP-hard to
decide if it can be straightened while altering only one joint at a time. If we
add the restriction that each joint can be altered at most once, we show that
the problem is NP-complete even without vertex degeneracies.
In the special case, arising in wire forming manufacturing, that each joint
can be altered at most once, and must be done sequentially from one or both
ends of the linkage, we give an efficient algorithm to determine if a linkage
can be straightened.Comment: 28 pages, 14 figures, Latex, to appear in Computational Geometry -
Theory and Application
QuickCSG: Fast Arbitrary Boolean Combinations of N Solids
QuickCSG computes the result for general N-polyhedron boolean expressions
without an intermediate tree of solids. We propose a vertex-centric view of the
problem, which simplifies the identification of final geometric contributions,
and facilitates its spatial decomposition. The problem is then cast in a single
KD-tree exploration, geared toward the result by early pruning of any region of
space not contributing to the final surface. We assume strong regularity
properties on the input meshes and that they are in general position. This
simplifying assumption, in combination with our vertex-centric approach,
improves the speed of the approach. Complemented with a task-stealing
parallelization, the algorithm achieves breakthrough performance, one to two
orders of magnitude speedups with respect to state-of-the-art CPU algorithms,
on boolean operations over two to dozens of polyhedra. The algorithm also
outperforms GPU implementations with approximate discretizations, while
producing an output without redundant facets. Despite the restrictive
assumptions on the input, we show the usefulness of QuickCSG for applications
with large CSG problems and strong temporal constraints, e.g. modeling for 3D
printers, reconstruction from visual hulls and collision detection
Orthogonal Range Reporting and Rectangle Stabbing for Fat Rectangles
In this paper we study two geometric data structure problems in the special
case when input objects or queries are fat rectangles. We show that in this
case a significant improvement compared to the general case can be achieved.
We describe data structures that answer two- and three-dimensional orthogonal
range reporting queries in the case when the query range is a \emph{fat}
rectangle. Our two-dimensional data structure uses words and supports
queries in time, where is the number of points in the
data structure, is the size of the universe and is the number of points
in the query range. Our three-dimensional data structure needs
words of space and answers queries in time. We also consider the rectangle stabbing problem on a set of
three-dimensional fat rectangles. Our data structure uses space and
answers stabbing queries in time.Comment: extended version of a WADS'19 pape
- …