##################################################################

Appearance3DChooser v1.1

Copyright (C) 2009 Frederic Roudaut


This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

###################################################################

com.appearance3Dchooser
Class CustomMouseTranslate

java.lang.Object
  extended by javax.media.j3d.SceneGraphObject
      extended by javax.media.j3d.Node
          extended by javax.media.j3d.Leaf
              extended by javax.media.j3d.Behavior
                  extended by com.sun.j3d.utils.behaviors.mouse.MouseBehavior
                      extended by com.sun.j3d.utils.behaviors.mouse.MouseTranslate
                          extended by com.appearance3Dchooser.CustomMouseTranslate
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.util.EventListener

public class CustomMouseTranslate
extends com.sun.j3d.utils.behaviors.mouse.MouseTranslate

MouseTranslate is a Java3D behavior object that lets users control the translation (X, Y) of an object via a mouse drag motion with the third mouse button (alt-click on PC). See MouseRotate for similar usage info.


Field Summary
private  javax.media.j3d.Canvas3D big
           
private  com.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback callback
           
private  javax.media.j3d.Canvas3D droite
           
private  javax.media.j3d.Canvas3D face
           
private  javax.media.j3d.Canvas3D gauche
           
private  javax.media.j3d.Canvas3D haut
           
(package private)  javax.vecmath.Vector3d translation
           
(package private)  double x_factor
           
(package private)  double y_factor
           
 
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
CustomMouseTranslate()
          Creates a default translate behavior.
CustomMouseTranslate(java.awt.Component c)
          Creates a translate behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
CustomMouseTranslate(java.awt.Component c, int flags)
          Creates a translate behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
CustomMouseTranslate(java.awt.Component c, javax.media.j3d.TransformGroup transformGroup)
          Creates a translate behavior that uses AWT listeners and behavior posts rather than WakeupOnAWTEvent.
CustomMouseTranslate(int flags)
          Creates a translate behavior.
CustomMouseTranslate(javax.media.j3d.TransformGroup transformGroup, javax.media.j3d.Canvas3D haut, javax.media.j3d.Canvas3D droite, javax.media.j3d.Canvas3D gauche, javax.media.j3d.Canvas3D face, javax.media.j3d.Canvas3D big)
          Creates a mouse translate behavior given the transform group.
 
Method Summary
(package private)  void doProcess(java.awt.event.MouseEvent evt)
           
 double getXFactor()
          Return the x-axis movement multipler.
 double getYFactor()
          Return the y-axis movement multipler.
 void initialize()
           
 void processStimulus(java.util.Enumeration criteria)
           
 void setFactor(double factor)
          Set the x-axis amd y-axis movement multipler with factor.
 void setFactor(double xFactor, double yFactor)
          Set the x-axis amd y-axis movement multipler with xFactor and yFactor respectively.
 void setupCallback(com.sun.j3d.utils.behaviors.mouse.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 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
 

Field Detail

x_factor

double x_factor

y_factor

double y_factor

translation

javax.vecmath.Vector3d translation

callback

private com.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback callback

haut

private javax.media.j3d.Canvas3D haut

droite

private javax.media.j3d.Canvas3D droite

gauche

private javax.media.j3d.Canvas3D gauche

face

private javax.media.j3d.Canvas3D face

big

private javax.media.j3d.Canvas3D big
Constructor Detail

CustomMouseTranslate

public CustomMouseTranslate(javax.media.j3d.TransformGroup transformGroup,
                            javax.media.j3d.Canvas3D haut,
                            javax.media.j3d.Canvas3D droite,
                            javax.media.j3d.Canvas3D gauche,
                            javax.media.j3d.Canvas3D face,
                            javax.media.j3d.Canvas3D big)
Creates a mouse translate behavior given the transform group.

Parameters:
transformGroup - The transformGroup to operate on.

CustomMouseTranslate

public CustomMouseTranslate()
Creates a default translate behavior.


CustomMouseTranslate

public CustomMouseTranslate(int flags)
Creates a translate 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 -

CustomMouseTranslate

public CustomMouseTranslate(java.awt.Component c)
Creates a translate 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.2.1

CustomMouseTranslate

public CustomMouseTranslate(java.awt.Component c,
                            javax.media.j3d.TransformGroup transformGroup)
Creates a translate 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. 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.
transformGroup - The TransformGroup to operate on.
Since:
Java 3D 1.2.1

CustomMouseTranslate

public CustomMouseTranslate(java.awt.Component c,
                            int flags)
Creates a translate 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.2.1
Method Detail

initialize

public void initialize()
Overrides:
initialize in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

getXFactor

public double getXFactor()
Return the x-axis movement multipler.

Overrides:
getXFactor in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

getYFactor

public double getYFactor()
Return the y-axis movement multipler.

Overrides:
getYFactor in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

setFactor

public void setFactor(double factor)
Set the x-axis amd y-axis movement multipler with factor.

Overrides:
setFactor in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

setFactor

public void setFactor(double xFactor,
                      double yFactor)
Set the x-axis amd y-axis movement multipler with xFactor and yFactor respectively.

Overrides:
setFactor in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

processStimulus

public void processStimulus(java.util.Enumeration criteria)
Overrides:
processStimulus in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

doProcess

void doProcess(java.awt.event.MouseEvent evt)

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

Overrides:
transformChanged in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate

setupCallback

public void setupCallback(com.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback callback)
The transformChanged method in the callback class will be called every time the transform is updated

Overrides:
setupCallback in class com.sun.j3d.utils.behaviors.mouse.MouseTranslate


##################################################################

Appearance3DChooser v1.1

Copyright (C) 2009 Frederic Roudaut


This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

###################################################################