Structure TMComponentsArg
See Also: Class Control, Class Matrix3, Class Point3, Class Interval, Class Quat, Class ScaleValue.
struct TMComponentsArg
Description:
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.
Function:
TMComponentsArg():position(0),rotation(0),scale(0),rotRep(kUnknown);
Remarks:
Constructor.
Function:
TMComponentsArg(Point3* pos, Interval* posInv, float* rot, Interval* rotInv, ScaleValue* scl, Interval* sclInv) : position(pos),posValidity(posInv),rotation(rot),rotValidity(rotInv), scale(scl),sclValidity(sclInv);
Remarks:
Constructor.
Data:
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. 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.
ScaleValue* scale;
If non-NULL this is the ScaleValue.
Interval* sclValidity;
The validity interval for the ScaleValue.