The ChainBone object is part of a skeleton chain.
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); app.LogMessage(CString(L"The chain bone name is : ") + myChainBone2.GetFullName());
#include <xsi_chainbone.h>

| Public Member Functions | |
| ChainBone () | |
| ~ChainBone () | |
| ChainBone (const CRef &in_ref) | |
| ChainBone (const ChainBone &in_obj) | |
| bool | IsA (siClassID in_ClassID) const | 
| siClassID | GetClassID () const | 
| ChainBone & | operator= (const ChainBone &in_obj) | 
| ChainBone & | operator= (const CRef &in_ref) | 
| LONG | GetIndex () const | 
| Joint | GetJoint () const | 
| ChainBone | ( | ) | 
Default constructor.
| ~ChainBone | ( | ) | 
Default destructor.
| bool IsA | ( | siClassID | in_ClassID | ) | const  [virtual] | 
Returns true if a given class type is compatible with this API class.
| in_ClassID | class type. | 
Reimplemented from ChainElement.
| siClassID GetClassID | ( | ) | const  [virtual] | 
Creates an object from another object. The newly created object is set to empty if the input object is not compatible.
| in_obj | constant class object. | 
Creates an object from a reference object. The newly created object is set to empty if the input reference object is not compatible.
| in_ref | constant class object. | 
Reimplemented from ChainElement.
| LONG GetIndex | ( | ) | const | 
Returns the bone index in the skeleton chain.