7,538 research outputs found

    Approximating the Maximum Overlap of Polygons under Translation

    Full text link
    Let PP and QQ be two simple polygons in the plane of total complexity nn, each of which can be decomposed into at most kk convex parts. We present an (1ε)(1-\varepsilon)-approximation algorithm, for finding the translation of QQ, which maximizes its area of overlap with PP. Our algorithm runs in O(cn)O(c n) time, where cc is a constant that depends only on kk and ε\varepsilon. This suggest that for polygons that are "close" to being convex, the problem can be solved (approximately), in near linear time

    Separation-Sensitive Collision Detection for Convex Objects

    Full text link
    We develop a class of new kinetic data structures for collision detection between moving convex polytopes; the performance of these structures is sensitive to the separation of the polytopes during their motion. For two convex polygons in the plane, let DD be the maximum diameter of the polygons, and let ss be the minimum distance between them during their motion. Our separation certificate changes O(log(D/s))O(\log(D/s)) times when the relative motion of the two polygons is a translation along a straight line or convex curve, O(D/s)O(\sqrt{D/s}) for translation along an algebraic trajectory, and O(D/s)O(D/s) for algebraic rigid motion (translation and rotation). Each certificate update is performed in O(log(D/s))O(\log(D/s)) time. Variants of these data structures are also shown that exhibit \emph{hysteresis}---after a separation certificate fails, the new certificate cannot fail again until the objects have moved by some constant fraction of their current separation. We can then bound the number of events by the combinatorial size of a certain cover of the motion path by balls.Comment: 10 pages, 8 figures; to appear in Proc. 10th Annual ACM-SIAM Symposium on Discrete Algorithms, 1999; see also http://www.uiuc.edu/ph/www/jeffe/pubs/kollide.html ; v2 replaces submission with camera-ready versio

    On k-Convex Polygons

    Get PDF
    We introduce a notion of kk-convexity and explore polygons in the plane that have this property. Polygons which are \mbox{kk-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{22-convex} polygons, a particularly interesting class, and show how to recognize them in \mbox{O(nlogn)O(n \log n)} 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{22-convex} objects considered.Comment: 23 pages, 19 figure

    QuickCSG: Fast Arbitrary Boolean Combinations of N Solids

    Get PDF
    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

    Implementation of linear minimum area enclosing traingle algorithm

    Get PDF
    This article has been made available through the Brunel Open Access Publishing Fund.An algorithm which computes the minimum area triangle enclosing a convex polygon in linear time already exists in the literature. The paper describing the algorithm also proves that the provided solution is optimal and a lower complexity sequential algorithm cannot exist. However, only a high-level description of the algorithm was provided, making the implementation difficult to reproduce. The present note aims to contribute to the field by providing a detailed description of the algorithm which is easy to implement and reproduce, and a benchmark comprising 10,000 variable sized, randomly generated convex polygons for illustrating the linearity of the algorithm
    corecore