Package com.sun.j3d.utils.behaviors.vp
Class WandViewBehavior.ListenerBase
java.lang.Object
com.sun.j3d.utils.behaviors.sensor.SensorInputAdaptor
com.sun.j3d.utils.behaviors.vp.WandViewBehavior.ListenerBase
- All Implemented Interfaces:
SensorButtonListener
,SensorReadListener
- Direct Known Subclasses:
WandViewBehavior.GrabViewListener6D
,WandViewBehavior.RotationListener2D
,WandViewBehavior.RotationListener6D
,WandViewBehavior.ScaleListener2D
,WandViewBehavior.ScaleListener6D
,WandViewBehavior.TranslationListener2D
,WandViewBehavior.TranslationListener6D
- Enclosing class:
- WandViewBehavior
A base class for implementing some of this behavior's listeners.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Transform3D
The initial transform from sensor coordinates to tracker base coordinates, set byinitAction
.protected Transform3D
The initial transform from sensor coordinates to virtual world coordinates, set byinitAction
.protected Transform3D
The initial transform from tracker base coordinates to virtual world coordinates, set byinitAction
.protected Transform3D
The initial transform from view platform coordinates to virtual world coordinates, set byinitAction
. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
conditionViewScale
(Transform3D viewPlatformToVworld) Equalizes the scale factors in the view tranform, which must be congruent.protected void
Ends the action.protected double
Gets the scale from physical units to view platform units.protected double
Gets the physical to virtual scale.protected void
initAction
(Sensor s) Initializes the listener action.protected boolean
isActive()
Returns true if the listener is currently active; that is, ifinitAction
has been called but not yetendAction
.void
This method is called when a sensor's button is pressed.void
This method is called when a sensor's button is released.protected void
transformAboutCenter
(Transform3D target, javax.vecmath.Point3d center, Transform3D transform) Transforms the target coordinate system about a center point.protected void
translateTransform
(Transform3D transform, javax.vecmath.Vector3d translation) Translates a coordinate system.Methods inherited from class com.sun.j3d.utils.behaviors.sensor.SensorInputAdaptor
clicked, dragged, read
-
Field Details
-
viewPlatformToVworld
The initial transform from view platform coordinates to virtual world coordinates, set byinitAction
. -
trackerToVworld
The initial transform from tracker base coordinates to virtual world coordinates, set byinitAction
. -
sensorToVworld
The initial transform from sensor coordinates to virtual world coordinates, set byinitAction
. -
sensorToTracker
The initial transform from sensor coordinates to tracker base coordinates, set byinitAction
.
-
-
Constructor Details
-
ListenerBase
public ListenerBase()
-
-
Method Details
-
initAction
Initializes the listener action. Subclasses must call this before starting the action, either frompressed
or when a 2D valuator exits the deadzone threshold.- Parameters:
s
- reference to a 6DOF sensor if used by the listener; may benull
-
endAction
Ends the action. Subclasses must be call this fromreleased
or when a 2D valuator enters the deadzone threshold.- Parameters:
s
- reference to a 6DOF sensor if used by the listener; may benull
-
isActive
protected boolean isActive()Returns true if the listener is currently active; that is, ifinitAction
has been called but not yetendAction
.- Returns:
- true if the listener is active, false otherwise
-
pressed
Description copied from interface:SensorButtonListener
This method is called when a sensor's button is pressed.- Specified by:
pressed
in interfaceSensorButtonListener
- Overrides:
pressed
in classSensorInputAdaptor
- Parameters:
e
- the sensor event
-
released
Description copied from interface:SensorButtonListener
This method is called when a sensor's button is released.- Specified by:
released
in interfaceSensorButtonListener
- Overrides:
released
in classSensorInputAdaptor
- Parameters:
e
- the sensor event
-
getPhysicalToVirtualScale
protected double getPhysicalToVirtualScale()Gets the physical to virtual scale. -
getPhysicalToViewPlatformScale
protected double getPhysicalToViewPlatformScale()Gets the scale from physical units to view platform units. -
translateTransform
Translates a coordinate system.- Parameters:
transform
- the coordinate system to be translatedtranslation
- the vector by which to translate
-
transformAboutCenter
protected void transformAboutCenter(Transform3D target, javax.vecmath.Point3d center, Transform3D transform) Transforms the target coordinate system about a center point. This can be used for rotation and scaling.- Parameters:
target
- the coordinate system to transformcenter
- the center point about which to transformtransform
- the transform to apply
-
conditionViewScale
Equalizes the scale factors in the view tranform, which must be congruent. If successful, theViewingPlatform TransformGroup
is updated; otherwise, its transform is reset to the home transform. This should be called if multiple incremental scale factors are applied to the view transform.- Parameters:
viewPlatformToVworld
- the view transform
-