Abstract

We consider segment intersection searching amidst (possibly intersecti ng) algebraic arcs in the plane. We show how to preprocess $n$ arcs in time $O(n^{2+\epsilon})$ into a data structure of size $O(n^{2+\epsilon})$, for any $\epsilon >0$, such that the $k$ arcs intersecting a query segment can be counted in time $O(\log n)$ or reported in time $O(\log n+k)$. This problem was extensively studied in restricted settings (e.g., amidst segments, circles or circular arcs), but no solution with comparable performance was previously presented for the general case of possibly intersecting algebraic arcs. Our data structure for the general case matches or improves (sometimes by an order of magnitude) the size of the best previously presented solutions for the special cases.As an immediate application of this result, we obtain an efficient data structure for the triangular windowing problem, which is a generalization of triangular range searching. As another application, the first substantially sub-quadratic algorithm for a red-blue intersection counting problem is derived. We also describe simple data structures for segment intersection searching among disjoint arcs, and ray shooting among algebraic arcs.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call