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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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

    Constructors
    Constructor and Description
    `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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.