Elementary Algorithms for Reporting Intersections of Curve Segments - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport Année : 1999

Elementary Algorithms for Reporting Intersections of Curve Segments

Jean-Daniel Boissonnat
  • Fonction : Auteur
  • PersonId : 830857
Antoine Vigneron
  • Fonction : Auteur

Résumé

We propose several algorithms to report the k intersecting pairs among a set of n curve segments. Apart from the intersection predicate, our algorithms only use two simple predicates : the predicate that compares the coordinates of two points and the predicate that says if a point is below, on, or above a segment. In particular, the predicates we use do not allow to count the number of intersection points nor to sort them, and the time complexity of our algorithms depends on the number of intersectin- g pairs, not on the number of intersection points (differently from the other non trivial algorithms). We present an algorithm for the red-blue variant of the problem where we have a set of blue segments and a set of red segments so that no two segments of the same set intersect. The time complexity is O((n+k)\log n). This algorithm is then used to solve the general case in O(n\sqrtk\log n) time. In the case of pseudo-segments (i.e. segments that intersect in at most one point) we propose a better algorithm whose time complexity is O((k+n)\log n+ n\sqrt k). All our time complexity results are a log factor from optimal.

Domaines

Autre [cs.OH]
Fichier principal
Vignette du fichier
RR-3825.pdf (253.11 Ko) Télécharger le fichier

Dates et versions

inria-00072833 , version 1 (24-05-2006)

Identifiants

  • HAL Id : inria-00072833 , version 1

Citer

Jean-Daniel Boissonnat, Antoine Vigneron. Elementary Algorithms for Reporting Intersections of Curve Segments. RR-3825, INRIA. 1999. ⟨inria-00072833⟩
65 Consultations
105 Téléchargements

Partager

Gmail Facebook X LinkedIn More