Public Member Functions
ShapeClip Class Reference

## Detailed Description

A ShapeClip is an instance of a shape key (source) at a particular position along a shape track in the animation mixer.

You can create shape clips using the SaveShapeKey command. To enumerate existing shape clips you must pass the full string path of the shape track's ClipList to the EnumElements command which returns a collection of ShapeClip objects.

You can create multiple clips of the same source (using the AddClip command), thereby returning to the same shape several times in the same animation, or rearrange the order of the shape clips on the tracks to change the shape animation completely.

ShapeClip allows you to access the shape animation stored in clusters by using Clip::GetMappedItems. Each MappedItem object returns the ShapeKey object (a specialized kind of ClusterProperty) from MappedItem::GetAnimationSource. ShapeKeys contain shape animation data and you can use SIObject::GetParent on the ShapeKey to get the shape-animated Cluster object.

When you save a shape key in local reference mode (siShapeLocalReferenceMode) only the deltas to the point's local referential are stored. If you need to get the absolute position for each point in the shape you will need the local referential for the point and the original position of the point before the shape key was applied.

In order to get the local referential (see Geometry0D.LocalReferenceFrame) and the original position for each point you will need to mute the shape combiner and all other operators above it using the DeactivateAbove command.

See also:
  SaveShapeKey, Geometry.SaveShapeKey, GetDrivingActions, EnumElements

`#include <xsi_shapeclip.h>`

Inheritance diagram for ShapeClip:
[legend]

List of all members.

## Public Member Functions
| ShapeClip ()
| ~ShapeClip ()
| ShapeClip (const CRef &in_ref)
| ShapeClip (const ShapeClip &in_obj)
bool | IsA (siClassID in_ClassID) const
siClassID | GetClassID () const
ShapeClip & | operator= (const ShapeClip &in_obj)
ShapeClip & | operator= (const CRef &in_ref)

## Constructor & Destructor Documentation

ShapeClip | ( |  | ) |

Default constructor.

~ShapeClip | ( |  | ) |

Default destructor.

ShapeClip | ( | const CRef & | in_ref | ) |

Constructor.

Parameters:

  in_ref | constant reference object.

ShapeClip | ( | const ShapeClip & | in_obj | ) |

Copy constructor.

Parameters:

  in_obj | constant class object.

## Member Function Documentation

bool IsA | ( | siClassID | in_ClassID | ) | const`[virtual]`

Returns true if a given class type is compatible with this API class.

Parameters:

  in_ClassID | class type.

Returns:
  true if the class is compatible, false otherwise.

Reimplemented from ProjectItem.

siClassID GetClassID | ( |  | ) | const`[virtual]`

Returns the type of the API class.

Returns:
  The class type.

Reimplemented from ProjectItem.

ShapeClip& operator= | ( | const ShapeClip & | in_obj | ) |

Creates an object from another object. The newly created object is set to empty if the input object is not compatible.

Parameters:

  in_obj | constant class object.

Returns:
  The new ShapeClip object.

ShapeClip& operator= | ( | const CRef & | in_ref | ) |

Creates an object from a reference object. The newly created object is set to empty if the input reference object is not compatible.

Parameters:

  in_ref | constant class object.

Returns:
  The new ShapeClip object.

Reimplemented from ProjectItem.

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

- xsi_shapeclip.h