530 research outputs found

    Geodesic-Preserving Polygon Simplification

    Full text link
    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 P\mathcal{P} by a polygon P\mathcal{P}' such that (1) P\mathcal{P}' contains P\mathcal{P}, (2) P\mathcal{P}' has its reflex vertices at the same positions as P\mathcal{P}, and (3) the number of vertices of P\mathcal{P}' 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 P\mathcal{P} and P\mathcal{P}', 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 P\mathcal{P}

    Query-points visibility constraint minimum link paths in simple polygons

    Full text link
    We study the query version of constrained minimum link paths between two points inside a simple polygon PP with nn vertices such that there is at least one point on the path, visible from a query point. The method is based on partitioning PP into a number of faces of equal link distance from a point, called a link-based shortest path map (SPM). Initially, we solve this problem for two given points ss, tt and a query point qq. Then, the proposed solution is extended to a general case for three arbitrary query points ss, tt and qq. In the former, we propose an algorithm with O(n)O(n) preprocessing time. Extending this approach for the latter case, we develop an algorithm with O(n3)O(n^3) preprocessing time. The link distance of a qq-visiblevisible path between ss, tt as well as the path are provided in time O(logn)O(\log n) and O(m+logn)O(m+\log n), respectively, for the above two cases, where mm is the number of links

    Memory-Constrained Algorithms for Simple Polygons

    Get PDF
    A constant-workspace algorithm has read-only access to an input array and may use only O(1) additional words of O(logn)O(\log n) bits, where nn is the size of the input. We assume that a simple nn-gon is given by the ordered sequence of its vertices. We show that we can find a triangulation of a plane straight-line graph in O(n2)O(n^2) time. We also consider preprocessing a simple polygon for shortest path queries when the space constraint is relaxed to allow ss words of working space. After a preprocessing of O(n2)O(n^2) time, we are able to solve shortest path queries between any two points inside the polygon in O(n2/s)O(n^2/s) time.Comment: Preprint appeared in EuroCG 201

    Scalable Exact Visualization of Isocontours in Road Networks via Minimum-Link Paths

    Get PDF
    Isocontours in road networks represent the area that is reachable from a source within a given resource limit. We study the problem of computing accurate isocontours in realistic, large-scale networks. We propose isocontours represented by polygons with minimum number of segments that separate reachable and unreachable components of the network. Since the resulting problem is not known to be solvable in polynomial time, we introduce several heuristics that run in (almost) linear time and are simple enough to be implemented in practice. A key ingredient is a new practical linear-time algorithm for minimum-link paths in simple polygons. Experiments in a challenging realistic setting show excellent performance of our algorithms in practice, computing near-optimal solutions in a few milliseconds on average, even for long ranges

    Weak Visibility Queries of Line Segments in Simple Polygons

    Full text link
    Given a simple polygon P in the plane, we present new algorithms and data structures for computing the weak visibility polygon from any query line segment in P. We build a data structure in O(n) time and O(n) space that can compute the visibility polygon for any query line segment s in O(k log n) time, where k is the size of the visibility polygon of s and n is the number of vertices of P. Alternatively, we build a data structure in O(n^3) time and O(n^3) space that can compute the visibility polygon for any query line segment in O(k + log n) time.Comment: 16 pages, 9 figures. A preliminary version of this paper appeared in ISAAC 2012 and we have improved results in this full versio
    corecore