Package com.sun.j3d.utils.behaviors.vp
Class WandViewBehavior.RotationListener2D
java.lang.Object
com.sun.j3d.utils.behaviors.sensor.SensorInputAdaptor
com.sun.j3d.utils.behaviors.vp.WandViewBehavior.ListenerBase
com.sun.j3d.utils.behaviors.vp.WandViewBehavior.RotationListener2D
- All Implemented Interfaces:
SensorButtonListener,SensorReadListener
- Enclosing class:
WandViewBehavior
Implements a 2D valuator listener that rotates the view platform. The
X and Y values from the valuator should have a continuous range from
-1.0 to +1.0, although the rotation speed can be scaled to compensate
for a different range. The X and Y values are found in the sensor's
read matrix at the indices specified by
setMatrixIndices2D, with defaults of 3 and 7 respectively.
The rotation direction is controlled by the direction the 2D valuator is pushed, and the rotation speed is scaled by the magnitude of the 2D valuator read values.
This listener will work in conjunction with a 6DOF sensor if supplied
in the constructor. If a 6DOF sensor is provided and
setRotationCoords has been called with the value
SENSOR, then the rotation is applied in the 6DOF sensor's
coordinate system; otherwise the rotation is applied either in head
coordinates or in view platform coordinates. If a 6DOF sensor is
provided and setTransformCenterSource has been called with
the value HOTSPOT, then rotation is about the 6DOF
sensor's hotspot; otherwise, the rotation center is the value set by
setTransformCenter.
- See Also:
-
Field Summary
Fields inherited from class com.sun.j3d.utils.behaviors.vp.WandViewBehavior.ListenerBase
sensorToTracker, sensorToVworld, trackerToVworld, viewPlatformToVworld -
Constructor Summary
ConstructorsConstructorDescriptionRotationListener2D(Sensor sensor2D, Sensor sensor6D) Construct an instance of this class with the specified sensors. -
Method Summary
Modifier and TypeMethodDescriptionvoidThis method is called with each invocation of thedispatchEventsmethod ofSensorEventAgentif any button bound to the listener is down and has not changed state since the last invocation.protected voidEnds the action.protected voidinitAction(Sensor s) Initializes the listener action.voidThis method is called when a sensor's button is pressed.voidread(SensorEvent e) This method is called each time thedispatchEventsmethod ofSensorEventAgentis called and none of a sensor's buttons have been handled by a button listener.voidThis method is called when a sensor's button is released.Methods inherited from class com.sun.j3d.utils.behaviors.vp.WandViewBehavior.ListenerBase
conditionViewScale, getPhysicalToViewPlatformScale, getPhysicalToVirtualScale, isActive, transformAboutCenter, translateTransformMethods inherited from class com.sun.j3d.utils.behaviors.sensor.SensorInputAdaptor
clicked
-
Constructor Details
-
RotationListener2D
Construct an instance of this class with the specified sensors.- Parameters:
sensor2D- the 2D valuator whose X and Y values drive the rotationsensor6D- the 6DOF sensor to use if the rotation coordinate system is set toSENSORor the rotation center source isHOTSPOT; may benull
-
-
Method Details
-
initAction
Description copied from class:WandViewBehavior.ListenerBaseInitializes the listener action. Subclasses must call this before starting the action, either frompressedor when a 2D valuator exits the deadzone threshold.- Overrides:
initActionin classWandViewBehavior.ListenerBase- Parameters:
s- reference to a 6DOF sensor if used by the listener; may benull
-
endAction
Description copied from class:WandViewBehavior.ListenerBaseEnds the action. Subclasses must be call this fromreleasedor when a 2D valuator enters the deadzone threshold.- Overrides:
endActionin classWandViewBehavior.ListenerBase- Parameters:
s- reference to a 6DOF sensor if used by the listener; may benull
-
read
Description copied from interface:SensorReadListenerThis method is called each time thedispatchEventsmethod ofSensorEventAgentis called and none of a sensor's buttons have been handled by a button listener. The sensor read value has not necessarily changed since the last read event.- Specified by:
readin interfaceSensorReadListener- Overrides:
readin classSensorInputAdaptor- Parameters:
e- the sensor event
-
pressed
Description copied from interface:SensorButtonListenerThis method is called when a sensor's button is pressed.- Specified by:
pressedin interfaceSensorButtonListener- Overrides:
pressedin classWandViewBehavior.ListenerBase- Parameters:
e- the sensor event
-
released
Description copied from interface:SensorButtonListenerThis method is called when a sensor's button is released.- Specified by:
releasedin interfaceSensorButtonListener- Overrides:
releasedin classWandViewBehavior.ListenerBase- Parameters:
e- the sensor event
-
dragged
Description copied from interface:SensorButtonListenerThis method is called with each invocation of thedispatchEventsmethod ofSensorEventAgentif any button bound to the listener is down and has not changed state since the last invocation. The sensor value has not necessarily changed from the last drag event.- Specified by:
draggedin interfaceSensorButtonListener- Overrides:
draggedin classSensorInputAdaptor- Parameters:
e- the sensor event
-