Structure TMComponentsArg

3DS Max Plug-In SDK

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.