nl.tudelft.simulation.dsol.gui.animation3D.mouse
Class RotateXYMouseBehavior

java.lang.Object
  extended by javax.media.j3d.SceneGraphObject
      extended by javax.media.j3d.Node
          extended by javax.media.j3d.Leaf
              extended by javax.media.j3d.Behavior
                  extended by com.sun.j3d.utils.behaviors.mouse.MouseBehavior
                      extended by nl.tudelft.simulation.dsol.gui.animation3D.mouse.RotateXYMouseBehavior
All Implemented Interfaces:
MouseListener, MouseMotionListener, MouseWheelListener, EventListener

public class RotateXYMouseBehavior
extends com.sun.j3d.utils.behaviors.mouse.MouseBehavior

RotateXYMouseBehavior is a Java3D behavior object that lets users control the rotation of an object via a mouse.

To use this utility, first create a transform group that this rotate behavior will operate on. Then,

 
 
 
 
 
 
 RotateXYMouseBehavior behavior = new RotateXYMouseBehavior();
 behavior.setTransformGroup(objTrans);
 objTrans.addChild(behavior);
 behavior.setSchedulingBounds(bounds);
 
 
 
 
 
 
 
The above code will add the rotate behavior to the transform group. The user can rotate any object attached to the objTrans.


Field Summary
 
Fields inherited from class com.sun.j3d.utils.behaviors.mouse.MouseBehavior
buttonPress, currXform, enable, flags, invert, INVERT_INPUT, MANUAL_WAKEUP, mouseCriterion, mouseEvents, mouseq, reset, transformGroup, transformX, transformY, wakeUp, x, x_last, y, y_last
 
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_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
 
Constructor Summary
RotateXYMouseBehavior()
          Creates a default mouse rotate behavior.
RotateXYMouseBehavior(int flags)
          Creates a rotate behavior.
RotateXYMouseBehavior(TransformGroup transformGroup)
          Creates a rotate behavior given the transform group.
 
Method Summary
 TransformGroup getTransformGroupX()
          Get second transform group
 double getXFactor()
          Get x_factor
 double getYFactor()
          Get y_factor
 void initialize()
           
 void processStimulus(Enumeration criteria)
           
 void setFactor(double factor)
          Set factor
 void setTransformGroupX(TransformGroup group)
          Set second transform group
 
Methods inherited from class com.sun.j3d.utils.behaviors.mouse.MouseBehavior
addListener, getTransformGroup, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, mouseWheelMoved, processMouseEvent, setEnable, setTransformGroup, wakeup
 
Methods inherited from class javax.media.j3d.Behavior
getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, updateNodeReferences, wakeupOn
 
Methods inherited from class javax.media.j3d.Node
cloneNode, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable
 
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RotateXYMouseBehavior

public RotateXYMouseBehavior(TransformGroup transformGroup)
Creates a rotate behavior given the transform group.

Parameters:
transformGroup - The transformGroup to operate on.

RotateXYMouseBehavior

public RotateXYMouseBehavior()
Creates a default mouse rotate behavior.


RotateXYMouseBehavior

public RotateXYMouseBehavior(int flags)
Creates a rotate behavior. Note that this behavior still needs a transform group to work on (use setTransformGroup(tg)) and the transform group must add this behavior.

Parameters:
flags - interesting flags (wakeup conditions).
Method Detail

initialize

public void initialize()
Overrides:
initialize in class com.sun.j3d.utils.behaviors.mouse.MouseBehavior
See Also:
Behavior.initialize()

getYFactor

public double getYFactor()
Get y_factor

Returns:
y_factor

setFactor

public void setFactor(double factor)
Set factor

Parameters:
factor - the factor

getXFactor

public double getXFactor()
Get x_factor

Returns:
x_factor

processStimulus

public void processStimulus(Enumeration criteria)
Specified by:
processStimulus in class com.sun.j3d.utils.behaviors.mouse.MouseBehavior
See Also:
Behavior.processStimulus(java.util.Enumeration)

getTransformGroupX

public TransformGroup getTransformGroupX()
Get second transform group

Returns:
transform group

setTransformGroupX

public void setTransformGroupX(TransformGroup group)
Set second transform group

Parameters:
group - A transformgroup


Copyright © 2002-2010 Delft University of Technology, the Netherlands. All Rights Reserved.