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
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: invalid input: '<' id = event[i].getID(); invalid input: '<' if
((id == MouseEvent.MOUSE_DRAGGED) invalid input: '&'invalid input: '&' invalid input: '<' ((MouseEvent)event[i]).isAltDown() invalid input: '&'invalid input: '&' invalid input: '<' !((MouseEvent)event[i]).isMetaDown()){
> id = event[i].getID(); > if ((id == MouseEvent.MOUSE_DRAGGED) invalid input: '&'invalid input: '&' > ((MouseEvent)event[i]).isAltDown() invalid input: '&'invalid input: '&' >
((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
FieldsModifier and TypeFieldDescriptionprivate MouseBehaviorCallbackDOCUMENT ME!(package private) javax.vecmath.Vector3dDOCUMENT ME!(package private) doubleDOCUMENT 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_lastFields 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
ConstructorsConstructorDescriptionCreates 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
Modifier and TypeMethodDescriptiondoubleReturn the y-axis movement multipler.voidDOCUMENT ME!voidprocessStimulus(Enumeration criteria) DOCUMENT ME!voidsetFactor(double factor) Set the y-axis movement multipler with factor.voidsetupCallback(MouseBehaviorCallback callback) The transformChanged method in the callback class will be called every time the transform is updated.voidtransformChanged(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, wakeupMethods inherited from class javax.media.j3d.Behavior
getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, updateNodeReferences, wakeupOnMethods 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, setPickableMethods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString
-
Field Details
-
translation
javax.vecmath.Vector3d translationDOCUMENT ME! -
z_factor
double z_factorDOCUMENT ME! -
callback
DOCUMENT ME!
-
-
Constructor Details
-
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 Details
-
getFactor
public double getFactor()Return the y-axis movement multipler.- Returns:
- DOCUMENT ME!
-
initialize
public void initialize()DOCUMENT ME!- Overrides:
initializein classMouseBehavior
-
processStimulus
DOCUMENT ME!- Specified by:
processStimulusin classMouseBehavior- Parameters:
criteria- DOCUMENT ME!
-
setFactor
public void setFactor(double factor) Set the y-axis movement multipler with factor.- Parameters:
factor- DOCUMENT ME!
-
setupCallback
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!
-