#include <SIRtree.h>
Public Member Functions | |
SIRtree () | |
Constructs an SIRtree with the default node capacity. | |
SIRtree (size_t nodeCapacity) | |
Constructs an SIRtree with the given maximum number of child nodes that a node may have. | |
void | insert (double x1, double x2, void *item) |
std::vector< void * > * | query (double x1, double x2) |
std::vector< void * > * | query (double x) |
Protected Member Functions | |
std::auto_ptr< BoundableList > | createParentBoundables (BoundableList *childBoundables, int newLevel) |
Sorts the childBoundables then divides them into groups of size M, where M is the node capacity. | |
AbstractNode * | createNode (int level) |
IntersectsOp * | getIntersectsOp () |
std::auto_ptr< BoundableList > | sortBoundables (const BoundableList *input) |
SIR stands for "Sort-Interval-Recursive".
STR-packed R-trees are described in: P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With Application To GIS. Morgan Kaufmann, San Francisco, 2002.
std::vector<void*>* geos::index::strtree::SIRtree::query | ( | double | x1, | |
double | x2 | |||
) | [inline] |
Returns items whose bounds intersect the given bounds.
x1 | possibly equal to x2 |
std::vector<void*>* geos::index::strtree::SIRtree::query | ( | double | x | ) | [inline] |
Returns items whose bounds intersect the given value.
IntersectsOp* geos::index::strtree::SIRtree::getIntersectsOp | ( | ) | [inline, protected, virtual] |
Implements geos::index::strtree::AbstractSTRtree.