Navigation and Viewing Framework
Configurable navigation and viewing setups for various display types in the VR lab
 All Classes Namespaces Files Functions Variables Pages
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lib-server.InputMapping.InputMapping Class Reference

This class accumulates the relative device inputs to an absolute matrix forwarded to the platform and uses an instance of GroundFollowing to correct this matrix with respect to gravity. More...

Inheritance diagram for lib-server.InputMapping.InputMapping:

Public Member Functions

def __init__
 Default constructor. More...
 
def my_constructor
 Custom constructor. More...
 
def mf_rel_input_values_changed
 Evaluated when device input values change. More...
 
def modify_abs_uncorrected_mat
 Modify the uncorrected matrix of this input mapping with specific values. More...
 
def transform_vector_with_matrix
 Transforms a vector using a transformation matrix. More...
 
def set_abs_mat
 Set a value for sf_abs_mat. More...
 
def set_input_factors
 Sets the translation and rotation input factors. More...
 
def activate_realistic_mode
 Activates the realistic mode (only 3 DOF navigation, GroundFollowing enabled) More...
 
def deactivate_realistic_mode
 Activates the unrealistic mode (6 DOF navigation, GroundFollowing disabled) More...
 
def set_scale
 Applies a new scaling to this input mapping. More...
 

Public Attributes

 realistic
 Boolean value to indicate if the user is navigating in 3-DOF (realistic) or 6-DOF (unrealistic) mode. More...
 
 blocked
 Boolean variable indicating if the device input is blocked (e.g. More...
 
 lf_quat_angle
 Quaternion angle of last frame to prevent blackscreen. More...
 
 input_trans_factor
 Factor to modify the translation input. More...
 
 input_rot_factor
 Factor to modify the rotation input. More...
 
 min_scale
 The minimum scaling factor that can be applied. More...
 
 max_scale
 The maximum scaling factor that can be applied. More...
 
 scale_stop_time
 Time at which a scaling process stopped at a fixed step. More...
 
 scale_stop_duration
 Time how long a scaling process is stopped at a fixed step in seconds. More...
 
 NAVIGATION
 Reference to the Navigation instance from which this InputMapping is created. More...
 
 GROUND_FOLLOWING_INSTANCE
 Reference to the GroundFollowing instance used by this InputMapping. More...
 
 invert
 Boolean indicating if the input values should be inverted. More...
 

Static Public Attributes

tuple mf_rel_input_values = avango.MFFloat()
 The relative input values of the device. More...
 
tuple sf_station_mat = avango.gua.SFMatrix4()
 The absolute matrix indicating where the device is placed in space. More...
 
tuple sf_abs_uncorrected_mat = avango.gua.SFMatrix4()
 The absolute matrix to accumulate the relative inputs on. More...
 
tuple sf_scale = avango.SFFloat()
 The current scaling factor of this input mapping. More...
 
tuple sf_abs_mat = avango.gua.SFMatrix4()
 The absolute matrix after GroundFollowing correction. More...
 

Detailed Description

This class accumulates the relative device inputs to an absolute matrix forwarded to the platform and uses an instance of GroundFollowing to correct this matrix with respect to gravity.

Constructor & Destructor Documentation

def lib-server.InputMapping.InputMapping.__init__ (   self)

Default constructor.

Member Function Documentation

def lib-server.InputMapping.InputMapping.activate_realistic_mode (   self)

Activates the realistic mode (only 3 DOF navigation, GroundFollowing enabled)

def lib-server.InputMapping.InputMapping.deactivate_realistic_mode (   self)

Activates the unrealistic mode (6 DOF navigation, GroundFollowing disabled)

def lib-server.InputMapping.InputMapping.mf_rel_input_values_changed (   self)

Evaluated when device input values change.

def lib-server.InputMapping.InputMapping.modify_abs_uncorrected_mat (   self,
  TRANSFORMED_TRANS_VECTOR,
  TRANSFORMED_ROT_VECTOR,
  ROTATION_CENTER 
)

Modify the uncorrected matrix of this input mapping with specific values.

Used for coupling purposes.

Parameters
TRANSFORMED_TRANS_VECTORThe translation vector to be applied.
TRANSFORMED_ROT_VECTORThe vector containing the rotation values to be applied.
ROTATION_CENTERThe center to rotate around.
def lib-server.InputMapping.InputMapping.my_constructor (   self,
  NAVIGATION,
  DEVICE_INSTANCE,
  GROUND_FOLLOWING_INSTANCE,
  STARTING_MATRIX,
  INVERT 
)

Custom constructor.

Parameters
NAVIGATIONThe navigation instance from which this input mapping is created.
DEVICE_INSTANCEInstance of Device class to take the input values from.
GROUND_FOLLOWING_INSTANCEInstance of GroundFollowing to be used for matrix correction.
STARTING_MATRIXInitial matrix to accumulate the relative inputs on.
INVERTBoolean indicating if the input values should be inverted.
def lib-server.InputMapping.InputMapping.set_abs_mat (   self,
  MATRIX 
)

Set a value for sf_abs_mat.

Parameters
MATRIXThe matrix to be set to.
def lib-server.InputMapping.InputMapping.set_input_factors (   self,
  TRANSLATION_FACTOR = 1.0,
  ROTATION_FACTOR = 1.0 
)

Sets the translation and rotation input factors.

Parameters
TRANSLATION_FACTORTranslation modification factor to be set. 1.0 by default.
ROTATION_FACTORRotation modification factor to be set. 1.0 by default.
def lib-server.InputMapping.InputMapping.set_scale (   self,
  SCALE 
)

Applies a new scaling to this input mapping.

Parameters
SCALEThe new scaling factor to be applied.
def lib-server.InputMapping.InputMapping.transform_vector_with_matrix (   self,
  VECTOR,
  MATRIX 
)

Transforms a vector using a transformation matrix.

Parameters
VECTORThe vector to be transformed.
MATRIXThe matrix to be applied for transformation.

Member Data Documentation

lib-server.InputMapping.InputMapping.blocked

Boolean variable indicating if the device input is blocked (e.g.

when in coupling animation)

lib-server.InputMapping.InputMapping.GROUND_FOLLOWING_INSTANCE

Reference to the GroundFollowing instance used by this InputMapping.

lib-server.InputMapping.InputMapping.input_rot_factor

Factor to modify the rotation input.

lib-server.InputMapping.InputMapping.input_trans_factor

Factor to modify the translation input.

lib-server.InputMapping.InputMapping.invert

Boolean indicating if the input values should be inverted.

lib-server.InputMapping.InputMapping.lf_quat_angle

Quaternion angle of last frame to prevent blackscreen.

Used if new angle is nan.

lib-server.InputMapping.InputMapping.max_scale

The maximum scaling factor that can be applied.

lib-server.InputMapping.InputMapping.mf_rel_input_values = avango.MFFloat()
static

The relative input values of the device.

lib-server.InputMapping.InputMapping.min_scale

The minimum scaling factor that can be applied.

lib-server.InputMapping.InputMapping.NAVIGATION

Reference to the Navigation instance from which this InputMapping is created.

lib-server.InputMapping.InputMapping.realistic

Boolean value to indicate if the user is navigating in 3-DOF (realistic) or 6-DOF (unrealistic) mode.

lib-server.InputMapping.InputMapping.scale_stop_duration

Time how long a scaling process is stopped at a fixed step in seconds.

lib-server.InputMapping.InputMapping.scale_stop_time

Time at which a scaling process stopped at a fixed step.

lib-server.InputMapping.InputMapping.sf_abs_mat = avango.gua.SFMatrix4()
static

The absolute matrix after GroundFollowing correction.

lib-server.InputMapping.InputMapping.sf_abs_uncorrected_mat = avango.gua.SFMatrix4()
static

The absolute matrix to accumulate the relative inputs on.

Will be corrected by GroundFollowing instance.

lib-server.InputMapping.InputMapping.sf_scale = avango.SFFloat()
static

The current scaling factor of this input mapping.

lib-server.InputMapping.InputMapping.sf_station_mat = avango.gua.SFMatrix4()
static

The absolute matrix indicating where the device is placed in space.


The documentation for this class was generated from the following file: