com.brackeen.javagamebook.bsp2D
Class BSPTreeTraverser

java.lang.Object
  extended bycom.brackeen.javagamebook.bsp2D.BSPTreeTraverser

public class BSPTreeTraverser
extends java.lang.Object

A BSPTreeTraverer traverses a 2D BSP tree either with a in-order or draw-order (front-to-back) order. Visited polygons are signaled using a BSPTreeTraverseListener.


Constructor Summary
BSPTreeTraverser()
          Creates a new BSPTreeTraverser with no BSPTreeTraverseListener.
BSPTreeTraverser(BSPTreeTraverseListener listener)
          Creates a new BSPTreeTraverser with the specified BSPTreeTraverseListener.
 
Method Summary
 void setGameObjectManager(GameObjectManager objectManager)
          Sets the GameObjectManager.
 void setListener(BSPTreeTraverseListener listener)
          Sets the BSPTreeTraverseListener to use during traversals.
 void traverse(BSPTree tree)
          Traverses a tree in in-order.
 void traverse(BSPTree tree, Vector3D viewLocation)
          Traverses a tree in draw-order (front-to-back) using the specified view location.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BSPTreeTraverser

public BSPTreeTraverser()
Creates a new BSPTreeTraverser with no BSPTreeTraverseListener.


BSPTreeTraverser

public BSPTreeTraverser(BSPTreeTraverseListener listener)
Creates a new BSPTreeTraverser with the specified BSPTreeTraverseListener.

Method Detail

setListener

public void setListener(BSPTreeTraverseListener listener)
Sets the BSPTreeTraverseListener to use during traversals.


setGameObjectManager

public void setGameObjectManager(GameObjectManager objectManager)
Sets the GameObjectManager. If the GameObjectManager is not null during traversal, then the manager's markVisible() method is called to specify visible parts of the tree.


traverse

public void traverse(BSPTree tree,
                     Vector3D viewLocation)
Traverses a tree in draw-order (front-to-back) using the specified view location.


traverse

public void traverse(BSPTree tree)
Traverses a tree in in-order.