# ChainElement Class Reference

Related Scripting Object: ChainElement

The ChainElement object represents a component of a skeleton chain. More...

`#include <xsi_chaineffector.h>`

Inheritance diagram for ChainElement:

List of all members.

## Public Member Functions
| ChainElement ()
| ~ChainElement ()
| ChainElement (const CRef &in_ref)
| ChainElement (const ChainElement &in_obj)
bool | IsA (siClassID in_ClassID) const
siClassID | GetClassID () const
ChainElement & | operator= (const ChainElement &in_obj)
ChainElement & | operator= (const CRef &in_ref)
ChainRoot | GetRoot () const
ChainEffector | GetEffector () const

## Detailed Description

The ChainElement object represents a component of a skeleton chain.

All components of a skeleton chain inherit the functions of this class.

See also:
  ChainRoot,ChainBone

Example:

              using namespace XSI;
              Application app;
              Model root = app.GetActiveSceneRoot();

              ChainRoot myChainRoot;
              root.Add3DChain(    MATH::CVector3(0,0,0),
                                  MATH::CVector3(1,0,0),
                                  MATH::CVector3(0,0,1),
                                  L"",
                                  myChainRoot);

              ChainBone myChainBone1;
              myChainRoot.AddBone(MATH::CVector3(3,3,3),siChainBonePin,L"",myChainBone1);

              ChainBone myChainBone2;
              myChainRoot.AddBone(MATH::CVector3(6,0,0),siChainBoneBallJoint,L"",myChainBone2);

              ChainElement myRoot(myChainBone1.GetRoot());

              app.LogMessage(CString(L"The chain element name is : ") + myRoot.GetFullName());

## Constructor & Destructor Documentation

ChainElement | ( |  | ) |

Default constructor.

~ChainElement | ( |  | ) |

Default destructor.

ChainElement | ( | const CRef & | in_ref | ) |

Constructor.

Parameters:

  | in_ref | constant reference object.

ChainElement | ( | const ChainElement & | 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 X3DObject.

Reimplemented in ChainBone, ChainEffector, and ChainRoot.

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

Returns the type of the API class.

Returns:
  The class type.

Reimplemented from X3DObject.

Reimplemented in ChainBone, ChainEffector, and ChainRoot.

ChainElement& operator= | ( | const ChainElement & | 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 ChainElement object.

ChainElement& 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 ChainElement object.

Reimplemented from X3DObject.

Reimplemented in ChainBone, ChainEffector, and ChainRoot.

ChainRoot GetRoot | ( |  | ) | const

Returns the root object of the skeleton chain.

Returns:
  The root object of the skeleton chain.

ChainEffector GetEffector | ( |  | ) | const

Returns the effector object of the skeleton chain.

Returns:
  The effector of this skeleton chain.

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

- xsi_chainelement.h