## com.vividsolutions.jts.index.bintree
Class NodeBase

    java.lang.Object
      com.vividsolutions.jts.index.bintree.NodeBase

Direct Known Subclasses:
  Node, Root

public abstract class NodeBase
extends java.lang.Object

The base class for nodes in a `Bintree`.

Version:
  1.7

Field Summary
`protected java.util.List` `items`
`protected Node[]` `subnode` subnodes are numbered as follows: 0 | 1

Constructor Summary
`NodeBase()`

Method Summary
`void` `add(java.lang.Object item)`
`java.util.List` `addAllItems(java.util.List items)`
`void` `addAllItemsFromOverlapping(Interval interval, java.util.Collection resultItems)` Adds items in the tree which potentially overlap the query interval to the given collection.
`java.util.List` `getItems()`
`static int` `getSubnodeIndex(Interval interval, double centre)` Returns the index of the subnode that wholely contains the given interval.
`boolean` `hasChildren()`
`boolean` `hasItems()`
`boolean` `isPrunable()`
`protected abstract boolean` `isSearchMatch(Interval interval)`
`boolean` `remove(Interval itemInterval, java.lang.Object item)` Removes a single item from this subtree.

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

Field Detail

### items

    protected java.util.List items

### subnode

    protected Node[] subnode

  subnodes are numbered as follows: 0 | 1

Constructor Detail

### NodeBase

    public NodeBase()

Method Detail

### getSubnodeIndex

    public static int getSubnodeIndex(Interval interval,
                                      double centre)

  Returns the index of the subnode that wholely contains the given interval. If none does, returns -1.

### getItems

    public java.util.List getItems()

### add

    public void add(java.lang.Object item)

### addAllItems

    public java.util.List addAllItems(java.util.List items)

### isSearchMatch

    protected abstract boolean isSearchMatch(Interval interval)

### addAllItemsFromOverlapping

    public void addAllItemsFromOverlapping(Interval interval,
                                           java.util.Collection resultItems)

  Adds items in the tree which potentially overlap the query interval to the given collection. If the query interval is `null`, add all items in the tree.

  Parameters:
    `interval` - a query nterval, or null
    `resultItems` - the candidate items found

### remove

    public boolean remove(Interval itemInterval,
                          java.lang.Object item)

  Removes a single item from this subtree.

  Parameters:
    `itemInterval` - the envelope containing the item
    `item` - the item to remove
  Returns:
    `true` if the item was found and removed

### isPrunable

    public boolean isPrunable()

### hasChildren

    public boolean hasChildren()

### hasItems

    public boolean hasItems()