We show how any BSP tree T P for the endpoints of a set of n disjoint segments in the plane can be used to obtain a BSP tree of size O(n.depth(T P )) for the segments themselves, such that the range-searching efficiency remains almost the same. We apply this technique to obtain a BSP tree of size O(n log n) such that e-approximate range searching queries with any constant-complexity convex query range can be answered in O(min e>¿0{1/e¿+¿k e }log n) time, where k e is the number of segments intersecting the e-extended range. The same result can be obtained for disjoint constant-complexity curves, if we allow the BSP to use splitting curves along the given curves. We also describe how to construct a linear-size BSP tree for low-density scenes...