Class WandViewBehavior.RotationListener2D

All Implemented Interfaces:
SensorButtonListener, SensorReadListener
Enclosing class:
WandViewBehavior

public class WandViewBehavior.RotationListener2D extends WandViewBehavior.ListenerBase
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:
  • Constructor Details

    • RotationListener2D

      public RotationListener2D(Sensor sensor2D, Sensor sensor6D)
      Construct an instance of this class with the specified sensors.
      Parameters:
      sensor2D - the 2D valuator whose X and Y values drive the rotation
      sensor6D - the 6DOF sensor to use if the rotation coordinate system is set to SENSOR or the rotation center source is HOTSPOT; may be null
  • Method Details