## com.sun.j3d.utils.pickfast.behaviors
Class PickMouseBehavior

    java.lang.Object
      javax.media.j3d.SceneGraphObject
          javax.media.j3d.Node
              javax.media.j3d.Leaf
                  javax.media.j3d.Behavior
                      com.sun.j3d.utils.pickfast.behaviors.PickMouseBehavior

Direct Known Subclasses:
  PickRotateBehavior, PickTranslateBehavior, PickZoomBehavior

    public abstract class PickMouseBehavior

extends Behavior

Base class that allows users to adding picking and mouse manipulation to the scene graph (see PickDragBehavior for an example of how to extend this base class). This class is useful for interactive apps.

Field Summary
`protected boolean` `buttonPress`
`protected WakeupCriterion[]` `conditions`
`protected TransformGroup` `currGrp`
`protected static boolean` `debug`
`protected java.awt.event.MouseEvent` `mevent`
`protected PickCanvas` `pickCanvas`
`protected WakeupOr` `wakeupCondition`

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
`PickMouseBehavior(Canvas3D canvas, BranchGroup root, Bounds bounds)` Creates a PickMouseBehavior given current canvas, root of the tree to operate on, and the bounds.

Method Summary
`int` `getMode()` Returns the pickMode
`float` `getTolerance()` Returns the pick tolerance
`void` `initialize()` Initialize this behavior.
`void` `processStimulus(java.util.Enumeration criteria)` Process a stimulus meant for this behavior.
`void` `setMode(int pickMode)` Sets the pick mode
`void` `setTolerance(float tolerance)` Sets the pick tolerance
`abstract void` `updateScene(int xpos, int ypos)` Subclasses shall implement this update function

Methods inherited from class javax.media.j3d.Behavior
`getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, 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`

Field Detail

### pickCanvas

    protected PickCanvas pickCanvas

### conditions

    protected WakeupCriterion[] conditions

### wakeupCondition

    protected WakeupOr wakeupCondition

### buttonPress

    protected boolean buttonPress

### currGrp

    protected TransformGroup currGrp

### debug

    protected static final boolean debug

See Also:
  Constant Field Values

### mevent

    protected java.awt.event.MouseEvent mevent

Constructor Detail

### PickMouseBehavior

    public PickMouseBehavior(Canvas3D canvas,
                             BranchGroup root,
                             Bounds bounds)

  Creates a PickMouseBehavior given current canvas, root of the tree to operate on, and the bounds.

Method Detail

### setMode

    public void setMode(int pickMode)

  Sets the pick mode

  See Also:
    `PickTool.setMode(int)`

### getMode

    public int getMode()

  Returns the pickMode

  See Also:
    `PickTool.getMode()`

### setTolerance

    public void setTolerance(float tolerance)

  Sets the pick tolerance

  See Also:
    `PickCanvas.setTolerance(float)`

### getTolerance

    public float getTolerance()

  Returns the pick tolerance

  See Also:
    `PickCanvas.getTolerance()`

### initialize

    public void initialize()

  Description copied from class: `Behavior`
  Initialize this behavior. Classes that extend Behavior must provide their own initialize method.
  NOTE: Applications should not call this method. It is called by the Java 3D behavior scheduler.

  Specified by:
    `initialize` in class `Behavior`

### processStimulus

    public void processStimulus(java.util.Enumeration criteria)

  Description copied from class: `Behavior`
  Process a stimulus meant for this behavior. This method is invoked if the Behavior's wakeup criteria are satisfied and an active ViewPlatform's activation volume intersects with the Behavior's scheduling region. Classes that extend Behavior must provide their own processStimulus method.
  NOTE: Applications should not call this method. It is called by the Java 3D behavior scheduler.

  Specified by:
    `processStimulus` in class `Behavior`
  Parameters:
    `criteria` - an enumeration of triggered wakeup criteria for this behavior

### updateScene

    public abstract void updateScene(int xpos,
                                     int ypos)

  Subclasses shall implement this update function

Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.