us.ihmc.utilities.dataStructures.hyperCubeTree
Class Octree

java.lang.Object
  extended by us.ihmc.utilities.dataStructures.hyperCubeTree.HyperCubeTree<java.lang.Boolean,java.lang.Void>
      extended by us.ihmc.utilities.dataStructures.hyperCubeTree.Octree
All Implemented Interfaces:
HyperCubeTreeListener<java.lang.Boolean,java.lang.Void>

public class Octree
extends HyperCubeTree<java.lang.Boolean,java.lang.Void>


Nested Class Summary
static class Octree.BoundsGetter
           
 
Constructor Summary
Octree(OneDimensionalBounds[] bounds, double resolution)
           
Octree(OneDimensionalBounds[] bounds, ResolutionProvider resolutionProvider)
           
 
Method Summary
 void mergeIfPossible()
           
 void nodeAdded(java.lang.String id, OneDimensionalBounds[] bounds, HyperCubeLeaf<java.lang.Boolean> leaf)
           
 void nodeRemoved(java.lang.String id)
           
 boolean put(HyperCubeLeaf<java.lang.Boolean> leaf)
           
 void putLidarAtGraduallyMoreAccurateResolution(javax.vecmath.Point3d start, javax.vecmath.Point3d end)
           
 void putLidarAtMinimumResolution(javax.vecmath.Point3d start, javax.vecmath.Point3d end)
           
 void treeCleared()
           
 
Methods inherited from class us.ihmc.utilities.dataStructures.hyperCubeTree.HyperCubeTree
addListener, checkDimensionality, clearTree, countNodes, get, getHyperVolumeIntersection, getLeafNodeAtLocation, getNode, getRootNode, leafAdded, listAllLeafNodes, listAllLeaves, metaDataUpdated, put, remove, removeListener, replacementPut, upRezz
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Octree

public Octree(OneDimensionalBounds[] bounds,
              double resolution)

Octree

public Octree(OneDimensionalBounds[] bounds,
              ResolutionProvider resolutionProvider)
Method Detail

mergeIfPossible

public void mergeIfPossible()

nodeAdded

public void nodeAdded(java.lang.String id,
                      OneDimensionalBounds[] bounds,
                      HyperCubeLeaf<java.lang.Boolean> leaf)
Specified by:
nodeAdded in interface HyperCubeTreeListener<java.lang.Boolean,java.lang.Void>
Overrides:
nodeAdded in class HyperCubeTree<java.lang.Boolean,java.lang.Void>

nodeRemoved

public void nodeRemoved(java.lang.String id)
Specified by:
nodeRemoved in interface HyperCubeTreeListener<java.lang.Boolean,java.lang.Void>
Overrides:
nodeRemoved in class HyperCubeTree<java.lang.Boolean,java.lang.Void>

putLidarAtGraduallyMoreAccurateResolution

public void putLidarAtGraduallyMoreAccurateResolution(javax.vecmath.Point3d start,
                                                      javax.vecmath.Point3d end)

putLidarAtMinimumResolution

public void putLidarAtMinimumResolution(javax.vecmath.Point3d start,
                                        javax.vecmath.Point3d end)

treeCleared

public void treeCleared()

put

public boolean put(HyperCubeLeaf<java.lang.Boolean> leaf)
Overrides:
put in class HyperCubeTree<java.lang.Boolean,java.lang.Void>