Public Types | Public Member Functions | Public Attributes

TMComponentsArg Struct Reference

Search for all occurrences

Detailed Description

See also:
Class Control, Class Matrix3, Class Point3, Class Interval, Class Quat, Class ScaleValue.
Remarks:
This structure is available in release 4.0 and later only.

This structure is for collecting the return results of Control::GetLocalTMComponents. Position, Rotation, or Scale, controllers will put results at the respective component when the corresponding pointer is not NULL.

#include <control.h>

Inheritance diagram for TMComponentsArg:
Inheritance graph
[legend]

List of all members.

Public Types

enum   RotationRep {
  kXYZ, kXZY, kYZX, kYXZ,
  kZXY, kZYX, kXYX, kYZY,
  kZXZ, kQuat, kUnknown
}

Public Member Functions

  TMComponentsArg ()
  TMComponentsArg (Point3 *pos, Interval *posInv, float *rot, Interval *rotInv, ScaleValue *scl, Interval *sclInv)

Public Attributes

Point3 position
  If not NULL this is the position.
Interval posValidity
  If not NULL this points to the validity interval for the position.
float *  rotation
  If not NULL this is the rotation and should be a float[4].
Interval rotValidity
  If not NULL this points to the validity interval for the rotation.
RotationRep  rotRep
  The rotation representation.
ScaleValue scale
  If non-NULL this is the ScaleValue.
Interval sclValidity
  The validity interval for the ScaleValue.

Member Enumeration Documentation


Constructor & Destructor Documentation

TMComponentsArg ( ) [inline]
Remarks:
Constructor
TMComponentsArg ( Point3 pos,
Interval posInv,
float *  rot,
Interval rotInv,
ScaleValue scl,
Interval sclInv 
) [inline]
Remarks:
Constructor
   : position(pos),posValidity(posInv),rotation(rot),rotValidity(rotInv)
   , scale(scl),sclValidity(sclInv) {}

Member Data Documentation

If not NULL this is the position.

If not NULL this points to the validity interval for the position.

float* rotation

If not NULL this is the rotation and should be a float[4].

If not NULL this points to the validity interval for the rotation.

The rotation representation.

This defines what the 4 numbers in the rotation array mean. One of the following enum values:
kXYZ - Same as EULERTYPE_XYZ
kXZY - Same as EULERTYPE_XZY
kYZX - Same as EULERTYPE_YZX
kYXZ - Same as EULERTYPE_YXZ
kZXY - Same as EULERTYPE_ZXY
kZYX - Same as EULERTYPE_ZYX
kXYX - Same as EULERTYPE_XYX
kYZY - Same as EULERTYPE_YZY
kZXZ - Same as EULERTYPE_ZXZ
kQuat - A quaternion representation.
kUnknown - An unknown representation.

If non-NULL this is the ScaleValue.

The validity interval for the ScaleValue.