# CSLXSITransform Class Reference

`#include <XSITransform.h>`

Inheritance diagram for CSLXSITransform:

List of all members.

## Public Member Functions
CSIBCMatrix4x4 | GetMatrix ()
CSIBCVector3D | GetEulerRotation ()
SI_Void | SetEulerRotation (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetScale ()
SI_Void | SetScale (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetTranslation ()
SI_Void | SetTranslation (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetShear ()
SI_Void | SetShear (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotPosition ()
SI_Void | SetPivotPosition (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotRotation ()
SI_Void | SetPivotRotation (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotScale ()
SI_Void | SetPivotScale (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotCompPosition ()
SI_Void | SetPivotCompPosition (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotCompRotation ()
SI_Void | SetPivotCompRotation (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetPivotCompScale ()
SI_Void | SetPivotCompScale (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetNeutralPosePosition ()
SI_Void | SetNeutralPosePosition (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetNeutralPoseRotation ()
SI_Void | SetNeutralPoseRotation (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetNeutralPoseScale ()
SI_Void | SetNeutralPoseScale (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetNeutralPoseShear ()
SI_Void | SetNeutralPoseShear (CSIBCVector3D &in_rValue)
SI_Bool | GetHierarchicalScaling ()
SI_Void | SetHierarchicalScaling (SI_Bool in_bValue)
CSLTemplate::ERotationOrder | GetRotationOrder ()
const SI_Char * | GetRotationOrderAsString ()
SI_Error | SetRotationOrder (CSLTemplate::ERotationOrder)
SI_Error | SetRotationOrderAsString (const SI_Char *)
SI_Error | ComputeLocalMatrix ()
SI_Error | ComputeGlobalMatrix ()
CSIBCMatrix4x4 & | GetGlobalMatrix ()
SI_Error | ComputeLocalMatrix (SI_Float in_fTime)
SI_Error | ComputeGlobalMatrix (SI_Float in_fTime)
virtual CSLAnimatableType * | ParameterFromName (SI_Char *in_szName)
virtual CSLAnimatableType * | ParameterFromType (EFCurveType in_Type, SI_Char *in_szParameterName)
virtual ETemplateType | Type ()
virtual SI_Error | Synchronize ()
virtual const SI_Char * | GetParameterName (CSLAnimatableType *in_pParameter)
CSLVector3DProxy * | ScaleProxy ()
CSLBoolProxy * | HierarchicalScalingProxy ()
CSLVector3DProxy * | RotationProxy ()
CSLVector3DProxy * | TranslationProxy ()
CSLVector3DProxy * | ShearProxy ()
CSLVector3DProxy * | PivotPositionProxy ()
CSLVector3DProxy * | PivotRotationProxy ()
CSLVector3DProxy * | PivotScaleProxy ()
CSLVector3DProxy * | PivotCompPositionProxy ()
CSLVector3DProxy * | PivotCompRotationProxy ()
CSLVector3DProxy * | PivotCompScaleProxy ()
CSLVector3DProxy * | NeutralPoseScaleProxy ()
CSLVector3DProxy * | NeutralPoseRotationProxy ()
CSLVector3DProxy * | NeutralPosePositionProxy ()
CSLVector3DProxy * | NeutralPoseShearProxy ()
CSLStrEnumProxy< ERotationOrder, SI_ZYX > * | RotationOrderProxy ()
CSLXSILimit * | ConnectXSILimit (CSLXSILimit *in_pXSILimit)
CSLXSILimit * | AddXSILimit (CSLAnimatableType *in_pParameter)
SI_Error | ClearXSILimits ()
CSLXSILimit ** | GetXSILimitList ()
SI_Int | GetXSILimitCount ()
SI_Error | RemoveXSILimit (SI_Int in_nIndex)
SI_Error | RemoveXSILimit (CSLXSILimit *in_pToRemove)

## Detailed Description

Handles the transformation matrix of a model. It provides functions to set all aspects of the transformation like SRT, pivots, shearing, etc (see the XSI_Translate template reference).

## Member Function Documentation

CSIBCMatrix4x4 GetMatrix | ( |  | ) |

Return the transformation matrix.

Returns:
  CSIBCMatrix4x4 Transformation matrix.

CSIBCVector3D GetEulerRotation | ( |  | ) |

Return the actual rotation in euler representation.

Returns:
  CSIBCVector3D Rotation value.

SI_Void SetEulerRotation | ( | CSIBCVector3D & | in_rValue | ) |

Change the rotation value in euler representation.

Parameters:

  | CSIBCVector3D& | New rotation value

Returns:
  None

CSIBCVector3D GetScale | ( |  | ) |

Return the actual scale.

Returns:
  CSIBCVector3D Scale value.

SI_Void SetScale | ( | CSIBCVector3D & | in_rValue | ) |

Change the scale value.

Parameters:

  | CSIBCVector3D& | New scale value

Returns:
  None

CSIBCVector3D GetTranslation | ( |  | ) |

Return the actual translation.

Returns:
  CSIBCVector3D Translation value.

SI_Void SetTranslation | ( | CSIBCVector3D & | in_rValue | ) |

Change the translation value.

Parameters:

  | CSIBCVector3D& | New translation value

Returns:
  None

CSIBCVector3D GetShear | ( |  | ) |

Return the shear.

Returns:
  CSIBCVector3D Shear value.

SI_Void SetShear | ( | CSIBCVector3D & | in_rValue | ) |

Change the shear value.

Parameters:

  | CSIBCVector3D& | New translation value

Returns:
  None

CSIBCVector3D GetPivotPosition | ( |  | ) |

Return the pivot position.

Returns:
  CSIBCVector3D Pivot position value.

SI_Void SetPivotPosition | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot position value.

Parameters:

  | CSIBCVector3D& | New pivot position value

Returns:
  None

CSIBCVector3D GetPivotRotation | ( |  | ) |

Return the pivot rotation.

Returns:
  CSIBCVector3D Pivot rotation value.

SI_Void SetPivotRotation | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot rotation value.

Parameters:

  | CSIBCVector3D& | New pivot rotation value

Returns:
  None

CSIBCVector3D GetPivotScale | ( |  | ) |

Return the pivot scale.

Returns:
  CSIBCVector3D Pivot scale value.

SI_Void SetPivotScale | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot scale value.

Parameters:

  | CSIBCVector3D& | New translation value

Returns:
  None

CSIBCVector3D GetPivotCompPosition | ( |  | ) |

Return the pivot compensation position.

Returns:
  CSIBCVector3D pivot compensation position value.

SI_Void SetPivotCompPosition | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot compensation position value.

Parameters:

  | CSIBCVector3D& | New pivot compensation position value

Returns:
  None

CSIBCVector3D GetPivotCompRotation | ( |  | ) |

Return the pivot compensation rotation.

Returns:
  CSIBCVector3D pivot compensation rotation value.

SI_Void SetPivotCompRotation | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot compensation rotation value.

Parameters:

  | CSIBCVector3D& | New pivot compensation rotation value

Returns:
  None

CSIBCVector3D GetPivotCompScale | ( |  | ) |

Return the pivot compensation scale.

Returns:
  CSIBCVector3D pivot compensation scale value.

SI_Void SetPivotCompScale | ( | CSIBCVector3D & | in_rValue | ) |

Change the pivot compensation scale value.

Parameters:

  | CSIBCVector3D& | New pivot compensation scale value

Returns:
  None

CSIBCVector3D GetNeutralPosePosition | ( |  | ) |

Return the neutral pose position.

Returns:
  CSIBCVector3D neutral pose position value.

SI_Void SetNeutralPosePosition | ( | CSIBCVector3D & | in_rValue | ) |

Change the neutral pose position value.

Parameters:

  | CSIBCVector3D& | New neutral pose position value

Returns:
  None

CSIBCVector3D GetNeutralPoseRotation | ( |  | ) |

Return the neutral pose rotation.

Returns:
  CSIBCVector3D neutral pose rotation value.

SI_Void SetNeutralPoseRotation | ( | CSIBCVector3D & | in_rValue | ) |

Change the neutral pose rotation value.

Parameters:

  | CSIBCVector3D& | New neutral pose rotation value

Returns:
  None

CSIBCVector3D GetNeutralPoseScale | ( |  | ) |

Return the neutral pose scale.

Returns:
  CSIBCVector3D neutral pose scale value.

SI_Void SetNeutralPoseScale | ( | CSIBCVector3D & | in_rValue | ) |

Change the neutral pose scale value.

Parameters:

  | CSIBCVector3D& | New neutral pose scale value

Returns:
  None

CSIBCVector3D GetNeutralPoseShear | ( |  | ) |

Return the neutral pose shear.

Returns:
  CSIBCVector3D neutral pose shear value.

SI_Void SetNeutralPoseShear | ( | CSIBCVector3D & | in_rValue | ) |

Change the neutral pose shear value.

Parameters:

  | CSIBCVector3D& | New neutral pose shear value

Returns:
  None

SI_Bool GetHierarchicalScaling | ( |  | ) |

Return the hirearchical scaling flag.

Returns:
  bool hirearchical scaling flag value.

SI_Void SetHierarchicalScaling | ( | SI_Bool | in_bValue | ) |

Change the hirearchical scaling flag value.

Parameters:

  | bool& | New hirearchical scaling flag value

Returns:
  None

CSLTemplate::ERotationOrder GetRotationOrder | ( |  | ) |

Return the rotation order.

Returns:
  CSIBCVector3D Rotation order.

const SI_Char* GetRotationOrderAsString | ( |  | ) |

Return the rotation order as a string.

Returns:
  SI_Char* Rotation order.

SI_Error SetRotationOrder | ( | CSLTemplate::ERotationOrder |  | ) |

Change the rotation order.

Parameters:

  | CSLTemplate::ERotationOrder | New rotation order

Returns:
  SI_Error Operation successful or not.

SI_Error SetRotationOrderAsString | ( | const SI_Char * |  | ) |

Change the rotation order using a string value.

Parameters:

  | SI_Char* | New rotation order

Returns:
  SI_Error Operation successful or not.

SI_Error ComputeLocalMatrix | ( |  | ) |

Computes this CSLTransform's local matrix.

Returns:
  Error code

SI_Error ComputeGlobalMatrix | ( |  | ) |

Computes this CSLTransform's global matrix.

Returns:
  Error code

CSIBCMatrix4x4& GetGlobalMatrix | ( |  | ) |

Returns the global matrix

Returns:
  CSIBCMatrix4x4 The global matrix

SI_Error ComputeLocalMatrix | ( | SI_Float | in_fTime | ) |

Computes this CSLTransform's local matrix at the specified time value.

Parameters:

  | in_fTime | The time

Returns:
  Error code

SI_Error ComputeGlobalMatrix | ( | SI_Float | in_fTime | ) |

Computes this CSLTransform's global matrix at the specified time value. Also forces an evaluation of the parent global matrix to ensure a correct global matrix.

Parameters:

  | in_fTime | The time

Returns:
  Error code

virtual CSLAnimatableType* ParameterFromName | ( | SI_Char * | in_szName | ) | `[virtual]`

Return a proxy to the specified parameter.

Parameters:

  | in_szName | Name of the parameter

Returns:
  CSLAnimatableType* Pointer to a parameter proxy.

Reimplemented from CSLTemplate.

virtual CSLAnimatableType* ParameterFromType | ( | EFCurveType | in_Type,
|  | SI_Char * | in_szParameterName |
| ) |  |  | `[virtual]`

Return a proxy to the specified parameter.

Parameters:

  | in_Type | Type of parameter
  | in_szParameterName | Name of the parameter if the type is SI_PARAMETER

Returns:
  CSLAnimatableType* Pointer to a parameter proxy.

Reimplemented from CSLTemplate.

virtual ETemplateType Type | ( |  | ) | `[virtual]`

Indicate which dotXSI template this object describes.

Returns:
  ETemplateType Type of template

Implements CSLTemplate.

virtual SI_Error Synchronize | ( |  | ) | `[virtual]`

Synchronize will ensure that the animated parameter is up to date.

Returns:
  SI_Error Error code

Reimplemented from CSLTemplate.

virtual const SI_Char* GetParameterName | ( | CSLAnimatableType * | in_pParameter | ) | `[virtual]`

Return the name (string) of a specified sub parameter.

Parameters:

  | in_pParameter | The sub parameter

Returns:
  SI_Char* Name of the sub parameter.

Reimplemented from CSLTemplate.

CSLVector3DProxy* ScaleProxy | ( |  | ) | `[inline]`

Returns the proxy to the scale vector

Returns:
  CSLVector3DProxy*

CSLBoolProxy* HierarchicalScalingProxy | ( |  | ) | `[inline]`

Returns the proxy to the hierarchical scaling value

Returns:
  CSLBoolProxy*

CSLVector3DProxy* RotationProxy | ( |  | ) | `[inline]`

Returns the proxy to the Rotation vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* TranslationProxy | ( |  | ) | `[inline]`

Returns the proxy to the Translation vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* ShearProxy | ( |  | ) | `[inline]`

Returns the proxy to the Shear vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotPositionProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Position vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotRotationProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Rotation vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotScaleProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Scale vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotCompPositionProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Comp Position vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotCompRotationProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Comp Rotation vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* PivotCompScaleProxy | ( |  | ) | `[inline]`

Returns the proxy to the Pivot Comp Scale vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* NeutralPoseScaleProxy | ( |  | ) | `[inline]`

Returns the proxy to the Neutral Pose Scale vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* NeutralPoseRotationProxy | ( |  | ) | `[inline]`

Returns the proxy to the Neutral Pose Rotation vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* NeutralPosePositionProxy | ( |  | ) | `[inline]`

Returns the proxy to the Neutral Pose Position vector

Returns:
  CSLVector3DProxy*

CSLVector3DProxy* NeutralPoseShearProxy | ( |  | ) | `[inline]`

Returns the proxy to the Neutral Pose Shear vector

Returns:
  CSLVector3DProxy*

CSLStrEnumProxy<ERotationOrder, SI_ZYX>* RotationOrderProxy | ( |  | ) | `[inline]`

Returns the proxy to the Rotation Order value

Returns:
  CSLStrEnumProxy<ERotationOrder, SI_ZYX>*

CSLXSILimit* ConnectXSILimit | ( | CSLXSILimit * | in_pXSILimit | ) |

Connects a limit to this template

Parameters:

  | CSLXSILimit* | the limit to connect

Returns:
  CSLXSILimit* Pointer to the specified limit

CSLXSILimit* AddXSILimit | ( | CSLAnimatableType * | in_pParameter | ) |

Adds a limit to this template

Returns:
  CSLXSILimit* Pointer to the newly created limit, NULL if failed

SI_Error ClearXSILimits | ( |  | ) |

Clears all limits on that template

Returns:
  SI_Error whether the function failed or succeeded

CSLXSILimit** GetXSILimitList | ( |  | ) |

Return the list of limits on that template

Returns:
  CSLXSILimit** array of limits

SI_Int GetXSILimitCount | ( |  | ) |

Return the number of limits on that template

Returns:
  SI_Int the number of limits on that template

SI_Error RemoveXSILimit | ( | SI_Int | in_nIndex | ) |

Removes a limit by index

Returns:
  SI_Error whether the function failed or succeeded

SI_Error RemoveXSILimit | ( | CSLXSILimit * | in_pToRemove | ) |

Removes a limit

Returns:
  SI_Error whether the function failed or succeeded

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

- XSITransform.h