TY - GEN
T1 - Lines through segments in 3D space
AU - Fogel, Efi
AU - Porat, Asaf
AU - Halperin, Dan
PY - 2012
Y1 - 2012
N2 - Given a set of n line segments in three-dimensional space, finding all the lines that simultaneously intersect at least four line segments in is a fundamental problem that arises in a variety of domains. We refer to this problem as the lines-through-segments problem, or LTS for short. We present an efficient output-sensitive algorithm and its implementation to solve the LTS problem. The implementation is exact and properly handles all degenerate cases. To the best of our knowledge, this is the first implementation for the LTS problem that is (i) output sensitive and (ii) handles all degenerate cases. The algorithm runs in O((n 3 + I)logn) time, where I is the output size, and requires O(nlogn + J) working space, where J is the maximum number of output elements that intersect two fixed line segments; I and J are bounded by O(n 4) and O(n 2), respectively. We use Cgal arrangements and in particular its support for two-dimensional arrangements in the plane and on the sphere in our implementation. The efficiency of our implementation stems in part from careful crafting of the algebraic tools needed in the computation. We also report on the performance of our algorithm and its implementation compared to others. The source code of the LTS program as well as the input examples for the experiments can be obtained from http://acg.cs.tau.ac.il/ projects/lts.
AB - Given a set of n line segments in three-dimensional space, finding all the lines that simultaneously intersect at least four line segments in is a fundamental problem that arises in a variety of domains. We refer to this problem as the lines-through-segments problem, or LTS for short. We present an efficient output-sensitive algorithm and its implementation to solve the LTS problem. The implementation is exact and properly handles all degenerate cases. To the best of our knowledge, this is the first implementation for the LTS problem that is (i) output sensitive and (ii) handles all degenerate cases. The algorithm runs in O((n 3 + I)logn) time, where I is the output size, and requires O(nlogn + J) working space, where J is the maximum number of output elements that intersect two fixed line segments; I and J are bounded by O(n 4) and O(n 2), respectively. We use Cgal arrangements and in particular its support for two-dimensional arrangements in the plane and on the sphere in our implementation. The efficiency of our implementation stems in part from careful crafting of the algebraic tools needed in the computation. We also report on the performance of our algorithm and its implementation compared to others. The source code of the LTS program as well as the input examples for the experiments can be obtained from http://acg.cs.tau.ac.il/ projects/lts.
UR - http://www.scopus.com/inward/record.url?scp=84866635491&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-33090-2_40
DO - 10.1007/978-3-642-33090-2_40
M3 - منشور من مؤتمر
SN - 9783642330896
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 455
EP - 466
BT - Algorithms, ESA 2012 - 20th Annual European Symposium, Proceedings
T2 - 20th Annual European Symposium on Algorithms, ESA 2012
Y2 - 10 September 2012 through 12 September 2012
ER -