Class MouseZoom
- java.lang.Object
-
- javax.media.j3d.SceneGraphObject
-
- javax.media.j3d.Node
-
- javax.media.j3d.Leaf
-
- javax.media.j3d.Behavior
-
- gov.nih.mipav.view.renderer.J3D.surfaceview.rfaview.mouse.MouseBehavior
-
- gov.nih.mipav.view.renderer.J3D.surfaceview.rfaview.mouse.MouseZoom
-
public class MouseZoom extends MouseBehavior
MouseZoom is a Java3D behavior object that lets users control the Z axis translation of an object via a mouse drag motion with the second mouse button. See MouseRotate for similar usage info. Also this: < id = event[i].getID(); < if ((id == MouseEvent.MOUSE_DRAGGED) && < ((MouseEvent)event[i]).isAltDown() && < !((MouseEvent)event[i]).isMetaDown()){ > id = event[i].getID(); > if ((id == MouseEvent.MOUSE_DRAGGED) && > ((MouseEvent)event[i]).isAltDown() && > ((MouseEvent)event[i]).isMetaDown()){ Note: By changing the bangs (!), you control which of the mouse buttons are filtered using the Alt and Meta key nomenclature. The old if statement says if the mouse is dragged and the middle button and not the right button is pressed. The new if statement says if the mouse is dragged and the middle button and the right button are both pressed. Added condition for the mouse pressed Added the ability to zoom based on user rotations and positions
-
-
Field Summary
Fields Modifier and Type Field Description private MouseBehaviorCallback
callback
DOCUMENT ME!(package private) javax.vecmath.Vector3d
translation
DOCUMENT ME!(package private) double
z_factor
DOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.renderer.J3D.surfaceview.rfaview.mouse.MouseBehavior
behaviorfix, buttonPress, currXform, flags, invert, INVERT_INPUT, MANUAL_WAKEUP, mouseCriterion, mouseEvents, reset, transformGroup, transformX, transformY, ViewerTG, 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 Description MouseZoom()
Creates a default mouse zoom behavior.MouseZoom(int flags)
Creates a zoom behavior.MouseZoom(int flags, boolean behaviorfix)
Same as above but with boolean fix.MouseZoom(int flags, javax.media.j3d.TransformGroup VPTG, boolean behaviorfix)
Same as above but with Viewer Transform Group and boolean fix.MouseZoom(javax.media.j3d.TransformGroup transformGroup)
Creates a zoom behavior given the transform group.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
getFactor()
Return the y-axis movement multipler.void
initialize()
DOCUMENT ME!void
processStimulus(java.util.Enumeration criteria)
DOCUMENT ME!void
setFactor(double factor)
Set the y-axis 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(javax.media.j3d.Transform3D transform)
Users can overload this method which is called every time the Behavior updates the transform.-
Methods inherited from class gov.nih.mipav.view.renderer.J3D.surfaceview.rfaview.mouse.MouseBehavior
processMouseEvent, setTransformGroup, wakeup
-
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
-
-
-
-
Field Detail
-
translation
javax.vecmath.Vector3d translation
DOCUMENT ME!
-
z_factor
double z_factor
DOCUMENT ME!
-
callback
private MouseBehaviorCallback callback
DOCUMENT ME!
-
-
Constructor Detail
-
MouseZoom
public MouseZoom()
Creates a default mouse zoom behavior.
-
MouseZoom
public MouseZoom(javax.media.j3d.TransformGroup transformGroup)
Creates a zoom behavior given the transform group.- Parameters:
transformGroup
- The transformGroup to operate on.
-
MouseZoom
public MouseZoom(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
- DOCUMENT ME!
-
MouseZoom
public MouseZoom(int flags, boolean behaviorfix)
Same as above but with boolean fix.- Parameters:
flags
- DOCUMENT ME!behaviorfix
- DOCUMENT ME!
-
MouseZoom
public MouseZoom(int flags, javax.media.j3d.TransformGroup VPTG, boolean behaviorfix)
Same as above but with Viewer Transform Group and boolean fix.- Parameters:
flags
- DOCUMENT ME!VPTG
- DOCUMENT ME!behaviorfix
- DOCUMENT ME!
-
-
Method Detail
-
getFactor
public double getFactor()
Return the y-axis movement multipler.- Returns:
- DOCUMENT ME!
-
initialize
public void initialize()
DOCUMENT ME!- Overrides:
initialize
in classMouseBehavior
-
processStimulus
public void processStimulus(java.util.Enumeration criteria)
DOCUMENT ME!- Specified by:
processStimulus
in classMouseBehavior
- Parameters:
criteria
- DOCUMENT ME!
-
setFactor
public void setFactor(double factor)
Set the y-axis movement multipler with factor.- Parameters:
factor
- DOCUMENT ME!
-
setupCallback
public void setupCallback(MouseBehaviorCallback callback)
The transformChanged method in the callback class will be called every time the transform is updated.- Parameters:
callback
- DOCUMENT ME!
-
transformChanged
public void transformChanged(javax.media.j3d.Transform3D transform)
Users can overload this method which is called every time the Behavior updates the transform. Default implementation does nothing- Parameters:
transform
- DOCUMENT ME!
-
-