Class SortedPackedIntervalRTree

Hierarchy: Object , SortedPackedIntervalRTree
public class SortedPackedIntervalRTree
A static index on a set of 1-dimensional intervals, using an R-Tree packed based on the order of the interval midpoints. It supports range searching, where the range is an interval of the real line (which may be a single point). A common use is to index 1-dimensional intervals which are the projection of 2-D objects onto an axis of the coordinate system.

This index structure is static - items cannot be added or removed once the first query has been made. The advantage of this characteristic is that the index performance can be optimized based on a fixed set of items.

Authors:
Martin Davis
public SortedPackedIntervalRTree()
public void insert(double min, double max, Object item)
Adds an item to the index which is associated with the given interval
Parameters:
min - min the lower bound of the item interval
max - max the upper bound of the item interval
item - item the item to insert
Throws:
IllegalStateException - IllegalStateException if the index has already been queried
public void query(double min, double max, ItemVisitor visitor)
Search for intervals in the index which intersect the given closed interval and apply the visitor to them.
Parameters:
min - min the lower bound of the query interval
max - max the upper bound of the query interval
visitor - visitor the visitor to pass any matched items to