Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## weka.core.neighboursearch.kdtrees
Class SlidingMidPointOfWidestSide

    java.lang.Object
      weka.core.neighboursearch.kdtrees.KDTreeNodeSplitter
          weka.core.neighboursearch.kdtrees.SlidingMidPointOfWidestSide

All Implemented Interfaces:
  java.io.Serializable, OptionHandler, RevisionHandler, TechnicalInformationHandler

    public class SlidingMidPointOfWidestSide

extends KDTreeNodeSplitter
implements TechnicalInformationHandler

The class that splits a node into two based on the midpoint value of the dimension in which the node's rectangle is widest. If after splitting one side is empty then it is slided towards the non-empty side until there is at least one point on the empty side.
For more information see also:
David M. Mount (2006). ANN Programming Manual. College Park, MD, USA.

BibTeX:

     @manual{Mount2006,
        address = {College Park, MD, USA},
        author = {David M. Mount},
        organization = {Department of Computer Science, University of Maryland},
        title = {ANN Programming Manual},
        year = {2006},
        HTTP = {Available from http://www.cs.umd.edu/\~mount/ANN/}
     }

Version:
  $Revision: 1.3 $
Author:
  Ashraf M. Kibriya (amk14@waikato.ac.nz)
See Also:
  Serialized Form

Field Summary

Fields inherited from class weka.core.neighboursearch.kdtrees.KDTreeNodeSplitter
`MAX, MIN, WIDTH`

Constructor Summary
`SlidingMidPointOfWidestSide()`

Method Summary
`java.lang.String` | `getRevision()` Returns the revision string.
`TechnicalInformation` | `getTechnicalInformation()` Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
`java.lang.String` | `globalInfo()` Returns a string describing this nearest neighbour search algorithm.
`void` | `splitNode(KDTreeNode node, int numNodesCreated, double[][] nodeRanges, double[][] universe)` Splits a node into two based on the midpoint value of the dimension in which the node's rectangle is widest.

Methods inherited from class weka.core.neighboursearch.kdtrees.KDTreeNodeSplitter
`getOptions, listOptions, setEuclideanDistanceFunction, setInstanceList, setInstances, setNodeWidthNormalization, setOptions`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SlidingMidPointOfWidestSide

    public SlidingMidPointOfWidestSide()

Method Detail

### globalInfo

    public java.lang.String globalInfo()

  Returns a string describing this nearest neighbour search algorithm.

  Returns:
    a description of the algorithm for displaying in the explorer/experimenter gui

### getTechnicalInformation

    public TechnicalInformation getTechnicalInformation()

  Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.

  Specified by:
    `getTechnicalInformation` in interface `TechnicalInformationHandler`
  Returns:
    the technical information about this class

### splitNode

    public void splitNode(KDTreeNode node,
                          int numNodesCreated,
                          double[][] nodeRanges,
                          double[][] universe)
                   throws java.lang.Exception

  Splits a node into two based on the midpoint value of the dimension in which the node's rectangle is widest. If after splitting one side is empty then it is slided towards the non-empty side until there is at least one point on the empty side. The two nodes created after the whole splitting are correctly initialised. And, node.left and node.right are set appropriately.

  Specified by:
    `splitNode` in class `KDTreeNodeSplitter`
  Parameters:
    `node` - The node to split.
    `numNodesCreated` - The number of nodes that so far have been created for the tree, so that the newly created nodes are assigned correct/meaningful node numbers/ids.
    `nodeRanges` - The attributes' range for the points inside the node that is to be split.
    `universe` - The attributes' range for the whole point-space.
  Throws:
    `java.lang.Exception` - If there is some problem in splitting the given node.

### getRevision

    public java.lang.String getRevision()

  Returns the revision string.

  Specified by:
    `getRevision` in interface `RevisionHandler`
  Overrides:
    `getRevision` in class `KDTreeNodeSplitter`
  Returns:
    the revision

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD