Module Reference
ButtonHoldFilterModule
Module for filters that filters out drops in a ButtonSource between updates. Therefore need a module to drive the updates. Currently, only the ButtonHoldFilterNode is in this module. It doesn't have a configuration element, but reserves the name 'ButtonHoldFilterConfig' for it.CallbackModule
The Callback module provides Callback Node nodes that call registered callbacks functions for any event they receive. Each node can call only one function. The nodes are addressed by unique names, set in the element of that node. After reading the initialization file an application can register callback functions on the read nodes. It doesn't have a configuration element but reserves the name 'CallbackConfig' for it.ConsoleModule
The ConsoleModule is a basic console based input / output module. It generates input events via ConsoleSource nodes based on keyboard strokes and displays event data collected by ConsoleSink nodes. It displays the data every interval'th cycle. On a windows system it just writes to the console. On a unix system it uses curses to format the display. It cannot yet read all keys, as I'm still fighting with the Windows / courses API :). The configuration element is calledConsoleConfig and has the following attributes : interval10 number of cycles to wait between displaying data.headerline"" a single line used as headerline in the display.displayon (on|off) either on or off, flag defining whether data should be displayed at all.
Also, events of all ConsoleSources can be changed using certain commands. Attributes can be added, their value can be increased or decreased, changed by typing in a new value, or attributes can be deleted again.
The KeyDefinition configuration element is used to set the keys assigned to each function. It has the following attributes :
functionname of the function ( see the following table )keyto assign the function to
- use one of the predefined key names for arrow keys, function keys etc.
- use a hexadecimal expression giving the keycode as returned by Windows or curses. This looks like
0xHHHHfor some key. - directly use the character printed on the key. This does only work for simple characters.
Name Key down cursor down up cursor up left cursor left right cursor right home Pos1 ( aka Home ) end End page_down page down page_up page up backspace backspace ( <- ) F0 F0 ( if present ) F1 .. F12 F1 througth F12 insert Insert enter Enter or Return escape Escape
The following table lists all possible functions and their default keys :
Function Default Key Description Move_X_plus up moves in direction X + Move_X_minus down moves in X - Move_Y_plus left moves in Y + Move_Y_minus right moves in Y - Move_Z_plus page_up moves in Z + Move_Z_minus page_down moves in Z - Rot_X_plus e rotates positive around X Rot_X_minus d rotates negative around X Rot_Y_plus r rotates positive around Y Rot_Y_minus f rotates negative around Y Rot_Z_plus t rotates positive around Z Rot_Z_minus g rotates negative around Z Accelerate y increases position velocity Brake x reduces position velocity Accelerate_Angular_Velocity o increases angular velocity Decelerate_Angular_Velocity p reduces angular velocity Button_1 ' ' sets button bit 0 Button_2 , sets button bit 1 Button_3 . sets button bit 2 Button_4 - sets button bit 3 Station_0 0 activates Station 0 Station_1 1 activates Station 1 Station_2 2 activates Station 2 Station_3 3 activates Station 3 Station_4 4 activates Station 4 Station_5 5 activates Station 5 Station_6 6 activates Station 6 Station_7 7 activates Station 7 Station_8 8 activates Station 8 Station_9 9 activates Station 9 Reset w resets current station Quit q signals to quit OpenTracker Next_Attribute n switches to next attribute to be subject to change Add_Attribute a allows user to add a new attribute Del_Attribute l allows user to delete an attribute Change_Attribute_Pos * increases value of current attribute Change_Attribute_Neg / decreases value of current attribute Change_Attribute_Val v allows user to type in new value for current attribute
An example configuration element looks like this :
<ConsoleConfig interval="10" headerline="Tracker Test 1"> <KeyDefinition function="Move_X_plus" key="o"/> </ConsoleConfig>
FileModule
The FileModule allows to read or write events from or to files. Every file can contain several input or output streams identified by station numbers. However, a single file can only serve as input or output at any given time. The configuration elementFileConfig has the following attributes: append(true|false) default isfalse. denotes whether data should be appended to existing output files or they should be overwritten.loop(true|false) default isfalse. denotes whether input files should start from the begining (loop is true) or stop after they end.intervala minimal time interval specified in seconds that should pass between event updates for individual stations. If not specified, events are played as fast as possible.ot11Format(true|false) default isfalse. Defines whether obsolete OpenTracker 1.1 file format should be used (for testing purposes only!). For a more detailed explanation of this subject, please confer to the documentation of the File class.realtime(true|false) default isfalse. Defines whether data is played back in real time. This means that succeeding events are played back in the same speed as recorded. Otherwise, events are played back as fast as possible.
<FileConfig append="true" loop="true" realtime="true"/>
GroupGateModule
This module provides and drives GroupGate nodes that generate standard events. The configuration element is calledGroupGateConfig and has no attributes yet.An example configuration element looks like this :
<GroupGateConfig/>
InterpolatorModule
Module for filters that interpolate tracking data between updates and therefore need a module to drive the updates. Currently, only the ElasticFilterNode is in this module. It doesn't have a configuration element but reserves the name 'InterpolatorConfig' for it.LogModule
The LogModule controls the output of log information that OpenTracker creates. Possible targets are stderr and a given file. Logging information can be of different verbosity levels including timestamp and host information and can be of different severity levels to only output important messages. The configuration element is calledLogConfig and has the following attributes : active(on|off) on controls if any log information should be outputstderr(on|off) on controls if logs should be send to stderrfile(on|off) off controls if logs should be send to a file - does not work on WinCEfilenamethe name of the log fileverbose(full|lite|std) std verbosity levels output information with timestamps and host info. See ACE documentation for details.level(debug|info|error) info severity levels, map somehow to the ACE levels
<LogConfig active="on" stderr="on" file="on" filename="log.txt" level="info" verbose="std"/>
TimeModule
The TimeModule controls the timing of the OpenTracker main loop. It does not provide any functionality related to nodes and events. There are two operating modes. In Sleep mode the TimeModule sleeps after each turn of the main loop a specified amount of time. In Framerate mode it tries to achieve a certain framerate of loops per second. Both modes are limited by the underlying implementation of OSUtils. That means that sleeps shorter then 1/100 of a second are not possible, which obvious implications for the Sleep mode. The Framerate mode works by inserting short sleeps after a number of loops to achieve the desired overall framerate !
The configuration element is called TimeConfig and has the following attributes :
ratefloat giving the desired frames per second (i.e. 100 )sleepnumber of milliseconds to sleep each loopdisplayfalse either true or false, displays the framerate at the end. If bothrateandsleepare specified therateattribute takes precedence and the Framerate mode is used. If no configuration element is present, the module is not activated and the main loop runs at full speed.
<TimeConfig rate="187"/>
TestModule
The TestModule provides and drives TestSource nodes that generate standard events in certain intervals. It doesn't have a configuration element but reserves the name 'TestConfig' for it. It does something useful as soon as at least one TestSource node is created.ARTDataTrackerModule
The ARTDataTrackerModule is a device driver module for the optical tracking system by ART Data. It uses ARTDataTrackerSource nodes to input data into the tracking tree. It does something useful as soon as at least one ARTDataTrackerSource node is created. It is configured using the configuration element 'ARTDataTrackerConfig'. This element has the following attributes :maxbodiesthe maximal number of different objects trackedportthe port number to listen on, the ART tracker should be configured to send to this number
<ARTDataTrackerConfig maxbodies="10" port="12346"/>
Some hints to configuring the ART Tracker host to work with this driver :
- When you calibrate the rigid body, you need to choose the "due to body" setting.
- Go to the general settings and make sure they are set as displayed in this picture :
ARToolKitModule
The ARToolKitModule interfaces to the ARToolKit library to track the position and orientation of visual markers with a video camera. It uses the information provided by ARToolKitSource nodes and inserts the event events through ARToolKitSource nodes into the tree. The configuration element isARToolKitConfig and has the following attributes : camera-parameterfile containing camera calibration datatreshhold100 bounding value for treshholding the greyscale video imageframerate10 a desired maximum framerate, the module will not exceed it.videomodea string selecting the videomode for ARToolKit. This depends on video interface linked with ARToolKit.videomode2a second string to configure a second camera for stereo mode. This is used in Studierstube to provide stereo video background.videolinuxmodea string specifically selecting the Linux videomode for ARToolKit. It overrides the videomode attribute under Linux if provided. This allows to specifiy ARToolKit videomode settings for Windows and Linux in one file as they currently differ.videolinuxmode2the same as videomode2 but like the videolinuxmode attribute above just for Linux.pattern-diran optional string that is prefixed to any pattern filename or the camera data filename. It tries to find the file under the original as well the prefixed name, in that order.
An example configuration element looks like this :
<ARToolKitConfig camera-parameter="../data/camera" treshhold="150" framerate="5" videomode="0,5,3" pattern-dir="mypatterns/"/>
ARToolKitPlusModule
The ARToolKitModule interfaces to the ARToolKit library to track the position and orientation of visual markers with a video camera. It uses the information provided by artoolkitplussource nodes and inserts the state events through artoolkitplussource nodes into the tree. The configuration element isARToolKitConfig and has the following attributes : camera-parameter: file containing camera calibration datatreshold:either a numerical value (0-255) or 'auto' for automatic thresholding. Default is '100'undist-mode: undistortion mode; one of 'none', 'lut' or 'std' (default)detect-mode: marker detection mode (marker history); either 'lite' or 'std' (default)pose-estimator: pose estimator selection; one of the following 'std' (default), 'cont' (better version of std) or 'rpp' (robust pose estimator)marker-mode: one of the following: 'template' (default), 'idbased' or 'bch'border-width: width of the border; default value is '0.250'pattern-diran optional string that is prefixed to any pattern filename or the camera data filename. It tries to find the file under the original as well the prefixed name, in that order.
<ARToolKitPlusConfig camera-parameter="quickcampro400.dat" marker-mode="idbased" border-width="0.125" treshold="auto" pose-estimator="cont" />
CyberMouseModule
The CyberMouseModule provides and drives CyberMouseSource nodes that generate standard events in certain intervals. It does not use a configuration element, but reserves the name 'CyberMouseConfig'.DynaSightModule
The DynaSightModule listens for data from the Origin Instruments DynaSight Sensor sent via serial port to the host and pushes the event updates into the tracker tree via DynaSightSource nodes.The DynaSight input module was tested with only one target.
It's configuration element has the following attributes:
devicethe serial port the tracker is connected to.lookatdefines a point in the local tracker coordinate system (x y z) used for the calculation of the orientation data. if the option is not specified, the returned ortientation is always towards the z-axis.
<DynaSightConfig device="com1" lookat="0.0 0.8 -1.2"/>
FastTrakModule (supports Polhemus FastTrak and IsoTrak II)
This module provides and drives FastTrakSource nodes that generate standard events.
The configuration element is called FastTrakConfig and has the following attributes :
type"fasttrak" specifies whether "fasttrak" or "isotrak" is useddevicethe serial port the tracker is connected to.stationsnumber of stations connected to the trackerhemisphere"1,0,0" the hemisphere the tracker should operate inreference-frame"0,0,0,200,0,0,0,200,0" the reference frame of the trackerinit-string"" other init strings, which will be used to configure the tracker at startup (e.g. "x0.9,0.6,1.0,0.9\rv0.3,0.6,0.9,0.9\r")
<FastTrakConfig type="isotrak" device="COM1" stations="2" hemisphere="-1,0,0"/>
Note that to date this driver was only tested with IsoTrak II and WIN32.
FOBModule (Flock of Birds)
The FOBModule is a device driver for the Ascension Flock of Birds tracker. It supports single as well as multi port configurations and the extended range transmitter. It provides the FOBSource source nodes in the data flow graph. It uses a configuration element calledFOBConfig which in turn contains one element called Bird for each bird in the setup. Only configured birds will be used. The FOBConfig element has the following attributes :
mode( multi | single ) defines whether the flock is used in single mode (one serial comm port to the master bird), or multi mode (a serial port to each bird).masterthe number of the master birdtransmitterif the transmitter is attached to another bird than the master, set the bird number here (i.e. for an ERT)hemisphere( forward | rear | upper | lower | left | right ) defines which hemisphere to set on the flock.referenceframea transformation of the position dataxyzframe( true | false ) a flag defining whether position data should be transformed by the referenceframe set. default istrue.scale( 36 | 72 ) set the extend of the receivers
Bird element is used to set the birds used in the setup. If the single mode is used, only the master bird needs a device configured. Otherwise all birds need their serial devices set. The Bird element has the following attributes :
numberthe number of the birddevthe device name of the bird (i.e. COM1, /dev/ttyS0)anglealigna transformation of the rotatin data to compensate for any offset of the sensor itself.
<FOBConfig mode="multi" master="1" scale="72"> <Bird number="1" dev="COM1"/> <Bird number="2" dev="COM2"/> </FOBConfig>
GPSModule
This module provides and drives GPSSource, GPSDirectionSource, GPSInfoSource, GPSGarminCompass and GPSGarminAltitude nodes that generate various GPS data events. The configuration element is calledGPSConfig. It reads GPS position data from a GPS receiver connected on the serial port and transmiting its data in NMEA format as Latitude, Longitude and Height in the x, y and z components of the position. The angles are given in radiants and the height in meter. The data is in WGS84 coordinate system. The hdop parameter is given as 1 / hdop in the confidence value.It allows to connect an optional DGPSIP server for DGPS correction data. Be sure to set your GPS receiver to NMEA output mode and RTCM input mode for this work. It also allows you to log the NMEA strings received from the gps receiver into a dedicated log file for further processing.
It has the following attributes :
devserial port where the GPS receiver is attached.baudratedefault value is 9600 other values are standard baud ratesDGPSserveran optional DGPSIP server for DGPS correction dataDGPSportport of the DGPSIP port, default is 2101debugon|off prints out RTCM and NMEA data for debuggingDGPSmirrora port number to run a server on that mirrors the RTCM correction data for other computers. If not specified, no server will be started.logfilepath and name of a file to log all received strings into (optional)rtcmdevanother serial port to output rtcm data, if it is not the device serial port
<GPSConfig dev="COM1" baudrate="9600" DGPSserver="something" DGPSport="2101" debug="off"/>
InterSenseModule
The InterTraxModule provides and drives InterSenseSource nodes that generate standard events in certain intervals. It uses a configuration element calledInterSenseConfig, which in turn contains one element called ISTracker per configured tracker. Only trackers that are configured will be used. The ISTracker element has the following attributes : ida unique id to identify the tracker, this the same as the id attribute of the InterSenseSource nodes.comportthe serial port the tracker is connected to. If 0 then the first one is used or an InterTrax2 connected to the USB port.
<InterSenseConfig> <ISTracker comport="0" id="InterTrax"/> </InterSenseConfig>
- Note:
- If an InterTrax2 device is used the orientation data will be transformed into a standard OpenGL coordinate system where +Y points upwards, +X to the right and the default view is down -Z. Therefore yaw is a rotation around +Y, pitch a rotation around +X and roll a rotation around +Z.
JoystickModule
The JoystickModule provides and drives JoystickSource nodes that generate events. The member position of the event gives the current normalized position of the joystick. The x,y and z components of position reflect the current position of the joystick's x,y and z-axes (ranging from -1 to +1, e.g. -1,-1,z means that the joystick is in the upper left corner). The member orientation is not used. The member button is used as usual (note that right now only the first four buttons of a joystick are used).It doesn't have a configuration element but reserves the name 'JoystickConfig' for it. It does something useful as soon as at least one JoystickSource node is created.
LinmouseModule
The LinmouseModule provides the Linmousesource nodes that generate button press events for mouse type devices device. ThisMagicYModule
The MagicYModule listens for data from the MagicY sent via TCP/IP to a specified port of the host and pushes the event updates into the tracker tree via MagicYSource nodes. It's configuration element has the following attributes :IPIP of the MagicY serverportport to listen topositionMappingdefines mapping of position components (x,y) from MagicY to OpenTrackerinvertPositiondefines, which components of the position should be invertedaverage, when set to 1 the average of all points delivered by the MagicY server is calculated
<MagicYConfig IP="123.45.67.89" port="12345" positionMapping="1 0" invertPosition="0 1" />
MulticastInputModule
The MulticastInputModule is a device driver module for the optical tracking system by ART Data. It uses ARTDataTrackerSource nodes to input data into the tracking tree. It does something useful as soon as at least one ARTDataTrackerSource node is created. It is configured using the configuration element 'ARTDataTrackerConfig'. This element has the following attributes :maxbodiesthe maximal number of different objects trackedportthe port number to listen on, the ART tracker should be configured to send to this number
<ARTDataTrackerConfig maxbodies="10" port="12346"/>
Some hints to configuring the ART Tracker host to work with this driver :
- When you calibrate the rigid body, you need to choose the "due to body" setting.
- Go to the general settings and make sure they are set as displayed in this picture :
P5GloveModule
The P5GloveModule provides and drives P5GloveSource nodes. It implements a driver for the P5 Glove by Essential Reality http://www.essentialreality.com/. To use this driver you will have to download the SDK from the above website and compile OpenTracker with the appropriate define as described in Configuration Options. The implementation was only tested under Windows because there was no Linux driver available at the time of development.The module uses the configuration element 'P5GloveConfig'. This element has the following attributes :
P5Id0the glove id passed to the driver
<P5GloveConfig P5Id="0"/>
ParButtonModule (Parallel Button Input)
This module implements reading button values from a parallel port. See the ParButtonSource node for a description of how to configure a source node. This module has no attributes and need not be present in the configuration section to operate. However, it reserves the nameParButtonConfig as configuration element.Some hints to get it working:
- See the UserPort driver on http://www.studierstube.org/opentracker/libs.html to get it working under WindowsNT/2000/XP.
- Set the type of parallel port to EPP in the bios. Not ECP or EPP/ECP etc.
- Restart machine after attaching the plug for Windows OS.
SpaceMouseModule
The SpaceMouseModule provides and drives SpaceMouseSource nodes that generate standard events in certain intervals. It does not use a configuration element, but reserves the name 'SpaceMouseConfig'.SpeechModule
The SpeechModule provides and drives SpeechRecoSource nodes that generate sr events. The appropriate speech sources are called when a command is successfully recognised. The sr event is coded in the event translation field, and the idīs could be resolved via the GetCommand method. There is a TTS facility integrated into this module, so you could quickly speak something via TTS and the system standard voice. if you want to use TTS with several options use the SpeechVoiceModule class.
It uses several configuration elements, the root is SpeechRecoConfig. There you can define several CommandSet, with several Command. The SpeechRecoConfig element has the following attributes:
languagethe language of the SR system.
CommandSet element has the following attributes:
idthe unique id of the command set
Command element has the following attributes:
idthe unique id of the command (must be unique over the whole config, must be a number)namethe command string the sr system should try to recognizeweightthe weight of the command string, default 1.0
<SpeechRecoConfig language="english"> <CommandSet id="CmdSet1"> <Command id="1234" name="one"/> <Command id="1235" name="two"/> <Command id="1236" name="six"/> <Command id="1237" name="seven"/> </CommandSet> </SpeechRecoConfig>
LinmouseModule
The TargusModule provides the Targussource nodes that generate button press events for the wireless device. This class relies on the code provided by xbindkeys (http://hocwp.free.fr/xbindkeys/xbindkeys.html)UbisenseModule
The UbisenseModule interfaces to the Ubisense API to track the position and button event of Ubisense tags. It uses the information provided by UbisenseSource nodes and inserts the eventevents through UbisenseSource nodes into the tree. The configuration element isUbisenseConfig. Without the UbisenseConfig configuration element data from any cell is tracked. But as soon as a UbisenseConfig configuration element is present, data retrieval is restricted: A single UbisenseCell configuration element identifies a Ubisense location cell to retrieve data from. Use more than one UbisenseCell configuration element to retrieve data from any number of cells. The UbisenseCell configuration element has the following attribute: namea string identifying the Ubisense location cell.
<UbisenseConfig> <UbisenseCell name="Location Cell 00001" /> </UbisenseConfig>
UltraTrakModule
The UltraTrakModule listens for data from the UltraTrak sent via UDP to a specified port of the host and pushes the event updates into the tracker tree via UltraTrakSource nodes. It's configuration element has the following attributes :portport to listen topositionMappingdefines mapping of position components (x,y,z) from ultratrak to opentrackerorientationMappingdefines mapping of quaternion components (x,y,z) from ultratrak to opentracker 0=x 1=y 2=z component of ultratrakinvertPositiondefines, which components of the position should be invertedinvertOrientationdefines, which components of the quaternion should be inverted 0=don't invert 1=invert component
<UltraTrakConfig port="12345" positionMapping="1 0 2" orientationMapping="2 0 1" invertPosition="0 1 1" invertOrientation="0 0 0" />
WacomGraphireModule
The WacomGraphireModule provides and drives WacomGraphireSource nodes that generate standard events in certain intervals. It does not use a configuration element but reserves the name 'WacomGraphireConfig'.XSensModule
This module implements the device driver for XSens MT9-B inertial trackers. The corresponding source node is XSensSource. Currently only a single MT9-B attached a comport is supported. It has no configuration element but reserves the nameXSensConfig for it.
- Note:
- The implementation for Linux is missing. To run it on Windows, one needs to install the MT9 SDK Software from Xsens. It will not work without it.
TestModule
The TestModule provides and drives TestSource nodes that generate standard events in certain intervals. It doesn't have a configuration element but reserves the name 'TestConfig' for it. It does something useful as soon as at least one TestSource node is created.DwarfModule
The DwarfModuleNetworkSinkModule
The NetworkSinkModule graps events from the tracker tree and sends them to other hosts either via multicast groups or by unicast datagrams. The receiving groups addresses are set in the NetworkSink nodes. It's configuration element has the following attributes :namea string idenfifying the server
<NetworkSinkConfig name="TrackSpatz Server"/>
NetworksourceModule
The NetworkSourceModule listens for data from the Network sent to multicast groups or by unicast datagrams and pushes the event updates into the tracker tree via NetworkSource nodes. It has no attributes and need not be present in the configuration section to operate. In unicast mode and in absence of received data polling datagrams are regularily sent to indicate interest in tracking data and a single leave datagram on termination.TCPModule
The TCPModule is a simple network transmit module that implements a TCP/IP server for data streams of several TCPSink nodes. It is configured with a port to listen to for new connections. All clients will get the same stream of data that consists of a station number for the next station and position and orientation information. Clients can connect and disconnect at will. The configuration element isTCPConfig and has the following attributes : portport number to listen for new connections
<TCPConfig port="12345"/>
This module was implemented specifically for the virtual show case viewer of Oliver Bimber <obimber@crcg.edu>.
VRPNModule
The VRPN module provides the VRPNSource and VRPNSink nodes. It provides a bi-directional link between VRPN (http://www.vrpn.org/) and OpenTracker because it can act as both a server and a client. This also enables the use of OpenTracker as a configurable transformation server within a VRPN network.
- Note:
- Under Windows, the default server port is already occupied. Therefore use the configuration element to set the port number differently, for example to 3883 the official IANA number for VRPN!
VRPNConfig and has the following attributes : portport number to listen for new connectionsinterfaceip address of network interface to use for incoming connections
<VRPNConfig port="3883" interface="localhost"/>
QtMouseEventCalibModule
Employed in the configuration of QtMouseEventModule. This module acts as compatibility module during the Qt target application desktop screen calibration (see Configuration of the OTQt manual). The module does not provide any relevant functionality. Its config file XML element is eventually replaced with aQtMouseEventConfig element by the calibration tool. All its XML attributes are passed to the substitute.Has the following XML attributes:
TrackingSystemScaleOneMeterone real-world meter in tracking system scale (optional; default value: "1.0")ScreenDepthFrontInMeterlenght of depth vector (z-axis) perpendicular on the screen plane, spanning the mouse sensitive volume (screen cuboid) in the front direction of the target desktop screen plane (optional; default value: "0.01" - is 1 cm)ScreenDepthBackInMeterlenght of depth vector (z-axis) perpendicular on the screen plane, spanning the mouse sensitive volume (screen cuboid) in the back direction of the target desktop screen plane (optional; default value: "0.005" (yes, also a positive value!) - is 5 mm)
<QtMouseEventCalibConfig TrackingSystemScaleOneMeter="1.0" />
QtMouseEventModule
Simulates the behaviour of a desktop mouse by generating Qt mouse events from incoming tracking data. Posts these events to some target Qt application. Associated sink nodes (see Input Devices and Sinks in the OTQt manual) provide the tracking data. The nested QtAppScreen node stores the spatial location and extent of the target desktop screen.
Besides manual editing, the XML elements QtMouseEventConfig, QtAppScreen and its attribute values can be generated automatically by applying the OTQt configuration tool (see Configuration in the OTQt manual).
Has the following XML attributes:
TrackingSystemScaleOneMeterone real-world meter in tracking system scale (optional; default value: "1.0")ScreenDepthFrontInMeterlenght of depth vector (z-axis) perpendicular on the screen plane, spanning the mouse sensitive volume (screen cuboid) in the front direction of the target desktop screen plane (optional; default value: "0.01" - is 1 cm)ScreenDepthBackInMeterlenght of depth vector (z-axis) perpendicular on the screen plane, spanning the mouse sensitive volume (screen cuboid) in the back direction of the target desktop screen plane (optional; default value: "0.005" (yes, also a positive value!) - is 5 mm)
An example element looks like this:
<QtMouseEventConfig TrackingSystemScaleOneMeter="1.0" ScreenDepthInMeter="0.01" >
<QtAppScreen
ASHeightVec="0.0000 -0.9999 0.0000"
ASWidthVec="0.9999 0.0000 0.0000"
CSOrientationQuat="0.0000 0.0000 -0.7071 0.7071"
CSRoot2ScreenRootVec="-0.9999 -0.9999 0.0000"
/>
</QtMouseEventConfig>