interaction
Class PickBehavior

java.lang.Object
  extended byjavax.media.j3d.SceneGraphObject
      extended byjavax.media.j3d.Node
          extended byjavax.media.j3d.Leaf
              extended byjavax.media.j3d.Behavior
                  extended byinteraction.PickBehavior

public class PickBehavior
extends javax.media.j3d.Behavior

Behavior, welches auf Mausereignisse wartet dementsprechend durch Picking ein Objekt aus der Szene auswählt. Implementiert dieses Objekt oder die Objekte oberhalb des ausgwählten Objekts die Schnittstelle PickListener werden die entsprechenden Methoden der Schnittstelle aufgerufen.

Dies geschieht auch, wenn in den userData der Objekte PickListener Objekte enthalten sind.

In jedem Fall werden alle PickListener Objekte aufgerufen, die bei dem Objekt der Klasse PickBehavior registriert sind.

Version:
1.0 (2005/04/25)
Author:
Martin Hedler

Field Summary
 
Fields inherited from class javax.media.j3d.Node
ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
 
Constructor Summary
PickBehavior(javax.media.j3d.BranchGroup bg, int pickCanvasMode, boolean throwCapExc)
          Erstellt eine Instanz der Klasse, welche bei Mausereignissen in der BranchGroup bgpickt.
 
Method Summary
 void addPickListener(PickListener l)
          Fügt einen PickListener ein, der bei erfolgreichen Picking aufgerufen wird.
 javax.media.j3d.Node cloneNode(boolean arg0)
           
 void duplicateNode(javax.media.j3d.Node arg0, boolean arg1)
           
 void initialize()
           
 void processStimulus(java.util.Enumeration enum)
           
 void removePickListener(PickListener l)
          Entfernt einen PickListener.
 void updateNodeReferences(javax.media.j3d.NodeReferenceTable arg0)
           
 
Methods inherited from class javax.media.j3d.Behavior
getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval
 
Methods inherited from class javax.media.j3d.Node
cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, getBounds, getBoundsAutoCompute, getCollidable, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable
 
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, getCapability, getCapabilityIsFrequent, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setUserData
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PickBehavior

public PickBehavior(javax.media.j3d.BranchGroup bg,
                    int pickCanvasMode,
                    boolean throwCapExc)
Erstellt eine Instanz der Klasse, welche bei Mausereignissen in der BranchGroup bgpickt.

Parameters:
bg - Die BranchGroup, deren Objekte gepickt werden sollen.
pickCanvasMode - Der Pickmodus. Siehe PickTool.BOUNDS, PickTool.GEOMETRY oder PickTool.GEOMETRY_INTERSECT_INFO.
throwCapExc - true, wenn CapabilityNotSetExceptions geworfen werden sollen oder false, wenn diese ignoriert werden sollen.
Method Detail

initialize

public void initialize()

processStimulus

public void processStimulus(java.util.Enumeration enum)

addPickListener

public void addPickListener(PickListener l)
Fügt einen PickListener ein, der bei erfolgreichen Picking aufgerufen wird.

Parameters:
l - Der zu registrierende PickListener.

removePickListener

public void removePickListener(PickListener l)
Entfernt einen PickListener.

Parameters:
l - Der zu entfernende PickListener.

cloneNode

public javax.media.j3d.Node cloneNode(boolean arg0)

duplicateNode

public void duplicateNode(javax.media.j3d.Node arg0,
                          boolean arg1)

updateNodeReferences

public void updateNodeReferences(javax.media.j3d.NodeReferenceTable arg0)