com.sun.j3d.utils.behaviors.mouse

## Class MouseWheelZoom

- java.lang.Object
- - javax.media.j3d.SceneGraphObject
  - - javax.media.j3d.Node
    - - javax.media.j3d.Leaf
      - - javax.media.j3d.Behavior
        - - com.sun.j3d.utils.behaviors.mouse.MouseBehavior
          - - com.sun.j3d.utils.behaviors.mouse.MouseWheelZoom

All Implemented Interfaces:
  java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.util.EventListener

    public class MouseWheelZoom
    extends MouseBehavior

MouseWheelZoom is a Java3D behavior object that lets users control the Z axis translation of an object via mouse wheel.

Since:
  Java 3D 1.3.2

### 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

Constructors
Constructor and Description
`MouseWheelZoom()` Creates a default mouse zoom behavior.
`MouseWheelZoom(java.awt.Component c)` Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
`MouseWheelZoom(java.awt.Component c, int flags)` Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
`MouseWheelZoom(java.awt.Component c, TransformGroup transformGroup)` Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
`MouseWheelZoom(int flags)` Creates a zoom behavior.
`MouseWheelZoom(TransformGroup transformGroup)` Creates a zoom behavior given the transform group.

### Method Summary

Methods
`double` `getFactor()` Return the y-axis movement multipler.
`void` `initialize()` Initializes the behavior.
`void` `processStimulus(java.util.Enumeration criteria)` All mouse manipulators must implement this.
`void` `setFactor(double factor)` Set the wheel units movement multipler with factor.
`void` `setupCallback(MouseBehaviorCallback callback)` The transformChanged method in the callback class will be called every time the transform is updated
`void` `transformChanged(Transform3D transform)` Users can overload this method which is called every time the Behavior updates the transform Default implementation does nothing

### 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

#### MouseWheelZoom

    public MouseWheelZoom(TransformGroup transformGroup)

Creates a zoom behavior given the transform group.

Parameters:
  `transformGroup` - The transformGroup to operate on.

#### MouseWheelZoom

    public MouseWheelZoom()

Creates a default mouse zoom behavior.

#### MouseWheelZoom

    public MouseWheelZoom(int flags)

Creates a zoom 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` -

#### MouseWheelZoom

    public MouseWheelZoom(java.awt.Component c)

Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent. The behavior is added to the specified Component. A null component can be passed to specify the behavior should use listeners. Components can then be added to the behavior with the addListener(Component c) method.

Parameters:
  `c` - The Component to add the MouseListener and MouseMotionListener to.
Since:
  Java 3D 1.3.2

#### MouseWheelZoom

    public MouseWheelZoom(java.awt.Component c,
                  TransformGroup transformGroup)

Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent. The behaviors is added to the specified Component and works on the given TransformGroup.

Parameters:
  `c` - The Component to add the MouseListener and MouseMotionListener to. A null component can be passed to specify the behavior should use listeners. Components can then be added to the behavior with the addListener(Component c) method.
  `transformGroup` - The TransformGroup to operate on.
Since:
  Java 3D 1.3.2

#### MouseWheelZoom

    public MouseWheelZoom(java.awt.Component c,
                  int flags)

Creates a zoom behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent. The behavior is added to the specified Component. A null component can be passed to specify the behavior should use listeners. Components can then be added to the behavior with the addListener(Component c) method. 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).
Since:
  Java 3D 1.3.2

### Method Detail

#### initialize

    public void initialize()

Description copied from class: `MouseBehavior`
Initializes the behavior.

Overrides:
  `initialize` in class `MouseBehavior`

#### getFactor

    public double getFactor()

Return the y-axis movement multipler.

#### setFactor

    public void setFactor(double factor)

Set the wheel units movement multipler with factor.

#### processStimulus

    public void processStimulus(java.util.Enumeration criteria)

Description copied from class: `MouseBehavior`
All mouse manipulators must implement this.

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

#### transformChanged

    public void transformChanged(Transform3D transform)

Users can overload this method which is called every time the Behavior updates the transform Default implementation does nothing

#### setupCallback

    public void setupCallback(MouseBehaviorCallback callback)

The transformChanged method in the callback class will be called every time the transform is updated