de.lmu.ifi.dbs.elki.index.tree.spatial.rstarvariants.util
Class TopologicalSplitter.Split<E extends SpatialEntry>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.index.tree.spatial.rstarvariants.util.TopologicalSplitter.Split<E>
Type Parameters:
E - Actual entry type
Enclosing class:
TopologicalSplitter

private class TopologicalSplitter.Split<E extends SpatialEntry>
extends Object

Internal data for an actual split.


Field Summary
(package private)  int bestSorting
          Indicates whether the sorting according to maximal or to minimal value has been used for choosing the split axis and split point.
(package private)  List<E> maxSorting
          The entries sorted according to their max values of their MBRs.
(package private)  List<E> minSorting
          The entries sorted according to their min values of their MBRs.
(package private)  int splitAxis
          The split axis.
(package private)  int splitPoint
          The index of the split point.
 
Constructor Summary
TopologicalSplitter.Split()
          Constructor.
 
Method Summary
(package private)  void chooseSplitAxis(List<E> entries, int minEntries)
          Chooses a split axis.
(package private)  void chooseSplitPoint(int minEntries)
          Chooses a split axis.
 List<E> getBestSorting()
          Returns whether the sorting according to maximal or to minimal value has been used for choosing the split axis and split point.
 int getSplitPoint()
          Returns the split point.
private  HyperBoundingBox mbr(List<E> entries, int from, int to)
          Computes and returns the mbr of the specified nodes, only the nodes between from and to index are considered.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

splitAxis

int splitAxis
The split axis.


splitPoint

int splitPoint
The index of the split point.


bestSorting

int bestSorting
Indicates whether the sorting according to maximal or to minimal value has been used for choosing the split axis and split point.


maxSorting

List<E extends SpatialEntry> maxSorting
The entries sorted according to their max values of their MBRs.


minSorting

List<E extends SpatialEntry> minSorting
The entries sorted according to their min values of their MBRs.

Constructor Detail

TopologicalSplitter.Split

public TopologicalSplitter.Split()
Constructor.

Method Detail

chooseSplitAxis

void chooseSplitAxis(List<E> entries,
                     int minEntries)
Chooses a split axis.

Parameters:
entries - the entries to be split
minEntries - number of minimum entries in the node to be split

chooseSplitPoint

void chooseSplitPoint(int minEntries)
Chooses a split axis.

Parameters:
minEntries - number of minimum entries in the node to be split

mbr

private HyperBoundingBox mbr(List<E> entries,
                             int from,
                             int to)
Computes and returns the mbr of the specified nodes, only the nodes between from and to index are considered.

Parameters:
entries - the array of nodes
from - the start index
to - the end index
Returns:
the mbr of the specified nodes

getSplitPoint

public int getSplitPoint()
Returns the split point.

Returns:
the split point

getBestSorting

public List<E> getBestSorting()
Returns whether the sorting according to maximal or to minimal value has been used for choosing the split axis and split point.

Returns:
The sorting to use

Release 0.4.0 (2011-09-20_1324)