Visibility and Ray Shooting Queries in Polygonal Domains

Slides:



Advertisements
Similar presentations
Spatial Embedding of Pseudo-Triangulations Peter Braß Institut für Informatik Freie Universität Berlin Berlin, Germany Franz Aurenhammer Hannes Krasser.
Advertisements

UNC Chapel Hill Lin/Foskey/Manocha Steps in DP: Step 1 Think what decision is the “last piece in the puzzle” –Where to place the outermost parentheses.
Polygon Decomposition
Approximations of points and polygonal chains
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
Chan’s Algorithm It is Jarvis’s march applied to big blobs of points.
Convex Hull obstacle start end Convex Hull Convex Hull
Computational Geometry
Proportion Priors for Image Sequence Segmentation Claudia Nieuwenhuis, etc. ICCV 2013 Oral.
Incidences and Many Faces via cuttings Sivanne Goldfarb
Zoo-Keeper’s Problem An O(nlogn) algorithm for the zoo-keeper’s problem Sergei Bespamyatnikh Computational Geometry 24 (2003), pp th CGC Workshop.
Computational Geometry Piyush Kumar (Lecture 3: Convexity and Convex hulls) Welcome to CIS5930.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
6/2/ :35 AMIncremental Convex Hull1 q w u e zt.
Visibility-Based Pursuit-Evasion in a Polygonal Environment L.J. Guibas, J.C. Latombe, S.M. LaValle, D. Lin, and R. Motwani Finding an Unpredictable Target.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University.
Almost Tight Bound for a Single Cell in an Arrangement of Convex Polyhedra in R 3 Esther Ezra Tel-Aviv University.
NUS CS 5247 David Hsu Minkowski Sum Gokul Varadhan.
Almost tight bound for the union of fat tetrahedra in R 3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Finding an Unpredictable Target in a Workspace with Obstacles LaValle, Lin, Guibas, Latombe, and Motwani, 1997 CS326 Presentation by David Black-Schaffer.
Approximate Distance Oracles for Geometric Spanner Networks Joachim Gudmundsson TUE, Netherlands Christos Levcopoulos Lund U., Sweden Giri Narasimhan Florida.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 O’Rourke Chapter 8 Motion Planning.
Visibility Graphs and Cell Decomposition By David Johnson.
PRE-TRIANGULATIONS Generalized Delaunay Triangulations and Flips Franz Aurenhammer Institute for Theoretical Computer Science Graz University of Technology,
On the union of cylinders in 3-space Esther Ezra Duke University.
Succinct Geometric Indexes Supporting Point Location Queries Prosenjit Bose, Eric Y. Chen, Meng He, Anil Maheshwari, Pat Morin.
October 9, 2003Lecture 11: Motion Planning Motion Planning Piotr Indyk.
Computing the Volume of the Union of Cubes in R 3 Pankaj K. Agarwal Haim Kaplan Micha Sharir.
Nonoverlap of the Star Unfolding Boris Aronov and Joseph O’Rourke, 1991 A Summary by Brendan Lucier, 2004.
Two Finger Caging of Concave Polygon Peam Pipattanasomporn Advisor: Attawith Sudsang.
Almost tight bound for the union of fat tetrahedra in R3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
CMPS 3130/6130 Computational Geometry Spring 2017
Largest Red-Blue Separating Rectangles
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
Grids Geometry Computational Geometry
Grids Geometry Computational Geometry
The
C-obstacle Query Computation for Motion Planning
Craig Schroeder October 26, 2004
Grids Geometry Computational Geometry
Computing Shortest Path amid Pseudodisks
Efficient Algorithms for the Weighted k-Center Problem on a Real Line
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Dynamic Data Structures for Simplicial Thickness Queries
Locating an Obnoxious Line among Planar Objects
Computing the Visibility Polygon of an Island in a Polygonal Domain
Quickest Visibility Queries in Polygonal Domains
On the Geodesic Centers of Polygonal Domains
Minimizing the Aggregate Movements for Interval Coverage
Approximating Points by A Piecewise Linear Function: I
Haitao Wang Utah State University WADS 2017, St. John’s, Canada
Processing an Offline Insertion-Query Sequence with Applications
An O(n log n)-Time Algorithm for the k-Center Problem in Trees
Optimal Point Movement for Covering Circular Regions
Kinetic Collision Detection for Convex Fat Objects
Range Queries on Uncertain Data
Joseph S.B. Mitchell, Stony Brook University
Danny Z. Chen1, Yan Gu2, Jian Li2, and Haitao Wang1
Aggregate-Max Nearest Neighbor Searching in the Plane
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Haitao Wang Utah State University SoCG 2017, Brisbane, Australia
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Computing Shortest Paths among Curved Obstacles in the Plane
Outlier Respecting Points Approximation
Approximating Points by A Piecewise Linear Function: II
Weak Visibility Queries of Line Segments in Simple Polygons
L1 Shortest Path Queries among Polygonal Obstacles in the Plane
Presentation transcript:

Visibility and Ray Shooting Queries in Polygonal Domains Danny Z. Chen1 and Haitao Wang2 1University of Notre Dame 2Utah State University WADS 2013

A polygonal domain A set of h disjoint polygonal obstacles with a total of n vertices Free space: the space outside the obstacles h<<n is possible

The visibility polygon from a point q

Visibility queries Given a query point q, report Vis(q): the visibility polygon of q k: = |Vis(q)| Goal: design data structures to support efficient visibility queries

A special case – ray-shooting queries

Previous work – ray shootings preprocessing time space query time Chazelle, Edelsbrunner, Grigni, Guibas, Hershberger, Sharir, Snoeyink, Suri, 94’ n log n simple polygons

Previous work and our result – ray shootings preprocessing time space query time Pocchiola, 90’ n2 logn Chazelle et al. 94’ nh1/2+nlogn +h3/2logh n h1/2logn Agarwal and Sharir, 96’ (nlogn+h2)logh (n+h2)logh log2nlog2h Our result n+h2poly(logh) n+h2 polygonal domains

Previous work – visibility queries preprocessing time space query time Bose, Lubiw, and Munro, 02’ n3 logn n3 k + log n Aronov, Guibas, Teichmann, and Zhang, 02’ n2 log n n2 k + log2 n simple polygons

Previous work and our results – visibility queries (m=min{k,h}) preprocessing time space query time Zarei and Ghodsi, 08’ n3 log n n3 k+mlog n Inkulu and Kapoor, 09’ n2 log n n2 k+h+mlog2 n n2 h3 n2 h2 klog n Lu et al., 11’ k+log2 n+hlogn/h Our result 1 k+log2n+mlogn Our result 2 n+h2logh n+h2 polygonal domains

Cone visibility The visibility is restricted by a cone q

Our approach An extended corridor structure partitions the free space into an “ocean” M, and multiple “bays” and “canals” M is bounded by a set of convex chains Use the visibility complex of convex objects (Pocchiola and Vegter 96’) Each bay or canal is a simply polygon Use data structures on simply polygons The query result is the combination of that on M and those on bays and canals

The convex case: all obstacles are convex Ray-shootings (Pocchiola and Vegter 96’) Preprocessing: O(n+h2 poly(log n)) time and O(n+h2) space Query: O(log n) time Visibility queries (our result, using visibility complex) Preprocessing: O(n+h2 log h) time and O(n+h2) space Query: O(k+ h’ log n) time h’: the number of obstacles visibile to the query point

Non-convex case Computing the convex hull for each obstacle Two sub-cases: The convex hulls are pairwise disjoint Not pairwise disjoint

Not pairwise disjoint Two convex hulls intersect each other

First sub-case: convex hulls pairwise disjoint Bays: The regions between the convex hulls and the obstacles Each bay is a simple polygon Each bay has a gate The ocean M: the free space minus the bays bays bays

The query algorithmic scheme Given a query: solve the query on the ocean M solve the query on the bays combine the above solutions

Ray-shootings Given a ray r, let q be the origin, which in M or a bay If q is in M determine the first point p on the convex hulls hit by r two cases: p is on an obstacle or a bay gate p on an obstacle: done p on a bay gate: enter the bay p q p q

Ray-shootings (cont.) If q is in a bay B determine the first point p on the boundary of B hit by r if p is on an obstacle done else (p is on the gate) goes into M the case where q is in M p p q

Ray-shootings (cont.) Preprocessing Visibility complex based approach on M (PV 96’) Preprocessing: O(n+h2 poly(log n)) time and O(n+h2) space Query: O(log n) time The data structures for simple polygons on all bays (CEGGHSSS 94’) Preprocessing: O(n) time and space

Visibility queries Given a query point q, in M or a bay If q is in M compute Vis(q,M): the visibility region in M For each portion of the boundary of Vis(q,M) on a gate compute the visibility region through the cone q

Visibility queries If q is in bay B Compute Vis(q,B): the visibility region in B If a portion of the gate is on the boundary compute the cone visibility outside the bay solved in the similar way as the previous case q

Visibility queries – the preprocessing The preprocessing on M Build our cone visibility query data structure on M Preprocessing: O(n+h2 log h) time and O(n+h2) space Query: O(k+ h’ log n) time The preprocessing on all bays First approach Exterior visibility decomposition (Aronov et al. 02’) preprocessing: O(n2logn) time and O(n2) space query: O(k+logn) Second approach: The ray-shooting data structure on simple polygons preprocessing: O(n) time and space query: O(klogn)

Exterior visibility decomposition Critical constraints of the bay all points in the same cell has the same combinatorial representation of the visibility polygon in the bay through the gate Overlap the critical constraint arrangement of all bays of the same obstacle a single point location is sufficient q

An example By using the overlapped critical constraints arrangement one point location operation is sufficient instead of two q

The remaining case: the convex hulls are not disjoint

The remaining case: the convex hulls are not disjoint The four vertices x, e, f, y can be determined by triangulation Two canal gates: xe and fy x bays e canal bays f y

A key property of canals For any observer q outside the canal q cannot see “through” the canal via the two gates the visibility polygons of q in the canal through the two gates do not intersect x e canal f y q

Determining the canal: first determine four obstacle vertices junction triangles d b

Determining the canal canal gate a c x e canal d f y their intersection canal gate b

Thank You