CSLXSIShapeAnimation Class Reference

This class represents an XSI_ShapeAnimation template. More...

#include <XSIShapeAnimation.h>

Inheritance diagram for CSLXSIShapeAnimation:

CSLTemplate CSIBCNode CSLCOLLADAShapeAnimation List of all members.

Public Member Functions

  CSLXSIShapeAnimation (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate, EFCurveInterpolationType in_Type)
CSLXSIShape AddXSIShape ()
CSLXSIShape InsertXSIShape (SI_Int in_nIndex)
SI_Int  GetXSIShapeCount ()
CSLXSIShape **  XSIShapes ()
SI_Error  RemoveXSIShape (SI_Int in_nIndex)
SI_Error  RemoveXSIShape (CSLXSIShape *in_pObject)
SI_Error  ClearXSIShapes ()
CSLFCurve Animation ()
CSLFCurve AddAnimation ()
CSLActionClip GetFirstActionClipByShape (CSLXSIShape *in_pShape)
virtual SI_Error  Fix ()
virtual SI_Error  Synchronize ()
virtual ETemplateType  Type ()

Detailed Description

This class represents an XSI_ShapeAnimation template.

Describes a mesh shape animation for dotXSI 5.0+ (see the XSI_ShapeAnimation template reference).

See also:
CSLAction


Constructor & Destructor Documentation

CSLXSIShapeAnimation ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate,
EFCurveInterpolationType  in_Type  
)

Constructor

Parameters:
[in]  in_pScene  Parent scene
[in]  in_pModel  Parent model
[in]  in_pTemplate  referred template
[in]  in_Type  Default interpolation type


Member Function Documentation

CSLXSIShape* AddXSIShape (  ) 

Adds a new shape at the end of the animation.

Returns:
Pointer to the newly created shape.

CSLXSIShape* InsertXSIShape ( SI_Int  in_nIndex  ) 

Inserts a new shape into the animation.

Note:
Animation is inserted at the end of the list if the index is out of bounds
Parameters:
[in]  in_nIndex  Index of insertion of the new shape.
Returns:
Pointer to the newly created shape.

SI_Int GetXSIShapeCount (  ) 

Returns the number of shapes in the animation.

Returns:
Number of shapes.

CSLXSIShape** XSIShapes (  ) 

Returns an array of all shapes in the animation.

Returns:
Pointer to the array of pointers to shape objects.

SI_Error RemoveXSIShape ( SI_Int  in_nIndex  ) 

Removes a single shape from the animation.

Parameters:
[in]  in_nIndex  Index of the shape to remove.
Return values:
SI_Error::SI_SUCCESS  The animation was removed
SI_Error::SI_ERR_BAD_ARGUMENT  Invalid index

SI_Error RemoveXSIShape ( CSLXSIShape in_pObject  ) 

Removes a single shape from the animation.

Parameters:
[in]  in_pObject  Pointer to the shape to remove.
Return values:
SI_Error::SI_SUCCESS  The animation was removed
SI_Error::SI_ERR_BAD_ARGUMENT  Shape was not found

SI_Error ClearXSIShapes (  ) 

Removes all shapes from the shape animation.

Return values:
SI_Error::SI_SUCCESS 

CSLFCurve* Animation (  ) 

Returns the fcurve containing the animation of the shape.

Returns:
Pointer to a fcurve object.

CSLFCurve* AddAnimation (  ) 

Verifies if we have an animation fcurve, if not, it creates the template of the fcurve, creates the semantic layer object of the fcurve and connect it to the template.

Returns:
Pointer to a fcurve containing the animation of the shape (new or existing one).

CSLActionClip* GetFirstActionClipByShape ( CSLXSIShape in_pShape  ) 

Returns the first action clip that uses this shape as a source.

Parameters:
[in]  in_pShape  Shape source for finding action clip
Returns:
Pointer on the action clip if found, NULL if not.

virtual SI_Error Fix (  )  [virtual]

Cleans invalid data from the template.

Returns:
Error code

Reimplemented from CSLTemplate.

virtual SI_Error Synchronize (  )  [virtual]

Synchronizes to ensure that the animated parameter is up to date.

Returns:
Error code

Reimplemented from CSLTemplate.

Reimplemented in CSLCOLLADAShapeAnimation.

virtual ETemplateType Type (  )  [inline, virtual]

Returns the type of this template

Return values:
CSLTemplate::XSI_SHAPE_ANIMATION  Template type

Implements CSLTemplate.


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