public class BoxTree<T extends BoxTree.BoxItem<E>,E> extends TileIndex<BoxTree.BoxNode<T>,T>
| Modifier and Type | Class and Description |
|---|---|
static class |
BoxTree.BoxItem<T> |
static class |
BoxTree.BoxNode<T extends BoxTree.BoxItem<?>> |
static interface |
BoxTree.SearchBoxCb<T extends BoxTree.BoxItem<?>> |
static interface |
BoxTree.SearchNodeCb<E extends BoxTree.BoxNode<?>> |
static interface |
BoxTree.Visitor<T> |
| Modifier and Type | Field and Description |
|---|---|
protected int |
extents |
protected int |
maxDepth |
| Constructor and Description |
|---|
BoxTree(int extents,
int maxDepth)
BoxTreee for the range [-extents, extents]
|
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
void |
clearToPool() |
void |
collect(BoxTree.SearchNodeCb<BoxTree.BoxNode<T>> cb) |
BoxTree.BoxNode<T> |
create() |
BoxTree.BoxNode<T> |
create(BoxTree.BoxNode<T> parent,
int i) |
BoxTree.BoxNode<T> |
getNode(T box,
boolean create) |
void |
insert(T box) |
boolean |
remove(T box,
E item) |
void |
removeItem(T item) |
boolean |
search(BoxTree.BoxItem<?> box,
BoxTree.SearchBoxCb<T> cb) |
boolean |
search(BoxTree.BoxItem<?> box,
SpatialIndex.SearchCb<E> cb,
java.lang.Object ctxt) |
int |
size() |
public BoxTree(int extents,
int maxDepth)
extents - must be power of twomaxDepth - must be <= 30public BoxTree.BoxNode<T> create()
create in class TileIndex<BoxTree.BoxNode<T extends BoxTree.BoxItem<E>>,T extends BoxTree.BoxItem<E>>public void removeItem(T item)
removeItem in class TileIndex<BoxTree.BoxNode<T extends BoxTree.BoxItem<E>>,T extends BoxTree.BoxItem<E>>public boolean search(BoxTree.BoxItem<?> box, SpatialIndex.SearchCb<E> cb, java.lang.Object ctxt)
public boolean search(BoxTree.BoxItem<?> box, BoxTree.SearchBoxCb<T> cb)
public void collect(BoxTree.SearchNodeCb<BoxTree.BoxNode<T>> cb)
public BoxTree.BoxNode<T> create(BoxTree.BoxNode<T> parent, int i)
public void insert(T box)
public BoxTree.BoxNode<T> getNode(T box, boolean create)
public void clear()
public void clearToPool()
public int size()
size in class TileIndex<BoxTree.BoxNode<T extends BoxTree.BoxItem<E>>,T extends BoxTree.BoxItem<E>>