Package org.tinspin.index
Interface BoxMap.Factory
-
-
Method Summary
Static Methods Modifier and Type Method Description static <T> BoxMap<T>createAndLoadStrRTree(int dims, RTreeEntry<T>[] entries)Create an STR-loaded R*Tree.static <T> BoxMap<T>createArray(int dims, int size)Create an array backed BoxMap.static <T> BoxMap<T>createPhTree(int dims)Create a PH-Tree.static <T> BoxMap<T>createQuadtree(int dims)Create a plain Quadtree.static <T> BoxMap<T>createQuadtree(int dims, int maxNodeCapacity, double[] min, double[] max)Create a plain Quadtree.static <T> BoxMap<T>createQuadtreeHC(int dims)Create a Quadtree with hypercube navigation.static <T> BoxMap<T>createQuadtreeHC(int dims, int maxNodeCapacity, double[] min, double[] max)Create a plain Quadtree.static <T> BoxMap<T>createRStarTree(int dims)Create an R*Tree.
-
-
-
Method Detail
-
createArray
static <T> BoxMap<T> createArray(int dims, int size)
Create an array backed BoxMap. This is only for testing and rather inefficient for large data sets.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.size- Number of entries.- Returns:
- New RectArray
-
createPhTree
static <T> BoxMap<T> createPhTree(int dims)
Create a PH-Tree.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.- Returns:
- New PH-Tree
-
createQuadtree
static <T> BoxMap<T> createQuadtree(int dims)
Create a plain Quadtree.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.- Returns:
- New Quadtree
-
createQuadtree
static <T> BoxMap<T> createQuadtree(int dims, int maxNodeCapacity, double[] min, double[] max)
Create a plain Quadtree. Min/max are used to find a good initial root. They do not need to be exact. If possible, min/max should span an area that is somewhat larger rather than smaller than the actual data.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.maxNodeCapacity- Maximum entries in a node before the node is split. The default is 10.min- Estimated minimum of all coordinates.max- Estimated maximum of all coordinates.- Returns:
- New Quadtree
-
createQuadtreeHC
static <T> BoxMap<T> createQuadtreeHC(int dims)
Create a Quadtree with hypercube navigation.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.- Returns:
- New QuadtreeHC
-
createQuadtreeHC
static <T> BoxMap<T> createQuadtreeHC(int dims, int maxNodeCapacity, double[] min, double[] max)
Create a plain Quadtree. Min/max are used to find a good initial root. They do not need to be exact. If possible, min/max should span an area that is somewhat larger rather than smaller than the actual data.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.maxNodeCapacity- Maximum entries in a node before the node is split. The default is 10.min- Estimated minimum of all coordinates.max- Estimated maximum of all coordinates.- Returns:
- New QuadtreeHC
-
createRStarTree
static <T> BoxMap<T> createRStarTree(int dims)
Create an R*Tree.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.- Returns:
- New R*Tree
-
createAndLoadStrRTree
static <T> BoxMap<T> createAndLoadStrRTree(int dims, RTreeEntry<T>[] entries)
Create an STR-loaded R*Tree.- Type Parameters:
T- Value type- Parameters:
dims- Number of dimensions.entries- All entries of the tree. Entries can be created withRTreeEntry.createBox(double[], double[], Object)- Returns:
- New STR-loaded R*Tree
-
-