We describe the first known algorithm for efficiently maintaining a Binary Space Partition (BSP) for n continuously moving segments in the plane, whose interiors remain disjoint throughout the motion. Under reasonable assumptions on the motion, we show that the total number of times this BSP changes is O(n2), and that we can update the BSP in O(logn) expected time per change. Throughout the motion, the expected size of the BSP is O(nlogn). We also consider the problem of constructing a BSP for n static triangles with pairwise-disjoint interiors in R3. We present a randomized algorithm that constructs a BSP of size O(n2) in O(n2 log2 n) expected time. We also describe a deterministic algorithm that constructs a BSP of size O((n + k)log2 n) and height O(logn) in O((n + k)log3 n) time, where k is the number of intersection points between the edges of the projections of the triangles onto the xy-plane. This is the first known algorithm that constructs a BSP of O(logn) height for disjoi...
Pankaj K. Agarwal, Leonidas J. Guibas, T. M. Mural