j3d.examples.behavior
Class MouseNavigateTest

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by j3d.examples.common.Java3dApplet
                      extended by j3d.examples.behavior.MouseNavigateTest
All Implemented Interfaces:
RotationChangeListener, ScaleChangeListener, TornadoChangeListener, TranslationChangeListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class MouseNavigateTest
extends Java3dApplet
implements ScaleChangeListener, RotationChangeListener, TranslationChangeListener

This example illustrates the mouse behaviors defined in the org.selman.java3d.book package. These improved mouse behaviors: - handle TransformGroups above the target TG properly
- can be applied to any object, not just TGs
- support interface reporting to give easy feedback on all manipulations
- better motion speed control
- range validation to clamp scales and translation between limits

See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MouseNavigateTest()
           
 
Method Summary
static void main(java.lang.String[] args)
           
 void onAdjustTransform(java.lang.Object target, int xpos, int ypos)
          Notification that a new Transform is being calculated
 void onApplyTransform(java.lang.Object target)
          Notification that the Transform is being updated
 void onEndDrag(java.lang.Object target)
          Callback to notify of an end drag event.
 void onRotate(java.lang.Object target, javax.vecmath.Point3d point3d)
          Callback to notify of new translationg being applied.
 void onScale(java.lang.Object target, javax.vecmath.Vector3d scale)
          Callback to notify of new scale being applied.
 void onStartDrag(java.lang.Object target)
          Callback to notify of a start drag event.
 void onTranslate(java.lang.Object target, javax.vecmath.Vector3d vTranslation)
          Callback to notify of new translationg being applied.
 
Methods inherited from class j3d.examples.common.Java3dApplet
getFirstLocale, getViewTransformGroupArray, getVirtualUniverse, getWorkingDirectory, initJava3d, isApplet
 
Methods inherited from class java.applet.Applet
destroy, getAccessibleContext, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, init, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start, stop
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MouseNavigateTest

public MouseNavigateTest()
Method Detail

onStartDrag

public void onStartDrag(java.lang.Object target)
Description copied from interface: TornadoChangeListener
Callback to notify of a start drag event.

Specified by:
onStartDrag in interface TornadoChangeListener
Parameters:
target - the Object being manipulated

onEndDrag

public void onEndDrag(java.lang.Object target)
Description copied from interface: TornadoChangeListener
Callback to notify of an end drag event.

Specified by:
onEndDrag in interface TornadoChangeListener
Parameters:
target - the Object being manipulated

onApplyTransform

public void onApplyTransform(java.lang.Object target)
Description copied from interface: TornadoChangeListener
Notification that the Transform is being updated

Specified by:
onApplyTransform in interface TornadoChangeListener
Parameters:
target - the Object being manipulated

onAdjustTransform

public void onAdjustTransform(java.lang.Object target,
                              int xpos,
                              int ypos)
Description copied from interface: TornadoChangeListener
Notification that a new Transform is being calculated

Specified by:
onAdjustTransform in interface TornadoChangeListener
Parameters:
target - the Object being manipulated
xpos - the mouse x position
ypos - the mouse y position

onRotate

public void onRotate(java.lang.Object target,
                     javax.vecmath.Point3d point3d)
Description copied from interface: RotationChangeListener
Callback to notify of new translationg being applied.

Specified by:
onRotate in interface RotationChangeListener
Parameters:
target - the Object being manipulated
point3d - the new rotation (Euler, radians) applied

onScale

public void onScale(java.lang.Object target,
                    javax.vecmath.Vector3d scale)
Description copied from interface: ScaleChangeListener
Callback to notify of new scale being applied.

Specified by:
onScale in interface ScaleChangeListener
Parameters:
target - the Object being manipulated
scale - the new scale being applied

onTranslate

public void onTranslate(java.lang.Object target,
                        javax.vecmath.Vector3d vTranslation)
Description copied from interface: TranslationChangeListener
Callback to notify of new translationg being applied.

Specified by:
onTranslate in interface TranslationChangeListener
Parameters:
target - the Object being manipulated
vTranslation - the new translation being applied

main

public static void main(java.lang.String[] args)