Elsevier

Computational Geometry

Volume 16, Issue 4, August 2000, Pages 245-256
Computational Geometry

Reporting curve segment intersections using restricted predicates

https://doi.org/10.1016/S0925-7721(00)00012-2Get rights and content
Under an Elsevier user license
open archive

Abstract

We investigate how to report all k intersecting pairs among a collection of n x-monotone curve segments in the plane, using only predicates of the following forms: is an endpoint to the left of another? is an endpoint above a segment? do two segments intersect? By studying the intersection problem in an abstract setting that assumes the availability of certain “detection oracles”, we obtain a near-optimal randomized algorithm that runs in O(nlogn+nklog(n2/k)) expected time. In the bichromatic case (where segments are colored red or blue with no red/red or blue/blue intersections), we find a better algorithm that runs in O((n+k)log2+k/nn) worst-case time, by modifying a known segment-tree method. Two questions of Boissonnat and Snoeyink are thus answered to within logarithmic factors.

Keywords

Segment intersection
Low-degree primitives
Randomized algorithms
Segment trees
Robust computation

Cited by (0)