## ChainElement

Object Hierarchy | Related C++ Class: ChainElement

### Inheritance

SIObject

ProjectItem

SceneItem

X3DObject

ChainElement

### Introduced

v1.5

### Description

The ChainElement object represents a component of a skeleton chain. All components of a skeleton chain inherits the properties and methods of this class.

### Methods

Add2DChain | Add3DChain | AddAnnotation | AddCamera
AddCameraRig | AddChild | AddControl | AddCustomOp
AddCustomProperty | AddFxTree | AddGeometry | AddICEAttribute
AddLattice | AddLight | AddLightRig | AddMaterial
AddModel | AddNull | AddNurbsCurve | AddNurbsCurveList
AddNurbsCurveList2 | AddNurbsSurface | AddNurbsSurfaceMesh | AddNurbsSurfaceMesh2
AddPolygonMesh | AddPrimitive | AddProperty | AddScriptedOp
AddScriptedOpFromFile | AnimatedParameters2 | ApplyEnvelope | BelongsTo
EvaluateAt | FindChild | FindChild2 | FindChildren
FindChildren2 | GetActivePrimitive2 | GetActivePrimitive3 | GetBoundingBox
GetICEAttributeFromName | GetLocalPropertyFromName | GetLocalPropertyFromName2 | GetModels2
GetPropertyFromName | GetPropertyFromName2 | GetStaticKinematicState | HasStaticKinematicState
IsA | IsAnimated2 | IsClassOf | IsEqualTo
IsKindOf | IsLocked | IsNodeAnimated | IsSelected
LockOwners | NodeAnimatedParameters | RemoveChild | RemoveFromParent
RemoveICEAttribute | SetAsSelected | SetCapabilityFlag | SetLock
SetMaterial | ShapeAnimatedClusters | TaggedParameters | UnSetLock

### Properties

ActivePrimitive | Application | BranchFlag | Capabilities
Categories | Children | Effector | Envelopes
EvaluationID | Families | FullName | Help
HierarchicalEvaluationID | ICEAttributes | Kinematics | LocalProperties
LocalRotation | LocalScaling | LocalTranslation | LockLevel
LockMasters | LockType | Material | Materials
Model | Models | Name | NestedObjects
ObjectID | Origin | OriginPath | Owners
PPGLayout | Parameters | Parent | Parent3DObject
Primitives | Properties | Root | Selected
Type |  |  |

### Examples

#### VBScript Example

    ' Effector for first bone
    set oEff1 = XSIMath.CreateVector3()
    oEff1.x = 3
    oEff1.y = 3
    oEff1.z = 3
    ' Effector for second bone
    set oEff2 = XSIMath.CreateVector3()
    oEff2.x = 6
    oEff2.y = 0
    oEff2.z = 0
    ' Construct skeleton
    set oRoot = ActiveProject.ActiveScene.Root
    set oChain = oRoot.Add3dChain()
    set oBone1 = oChain.AddBone(oEff1)
    set oBone2 = oChain.AddBone(oEff2)

### See Also

X3DObject.Add2DChain X3DObject.Add3DChain ChainBone ChainRoot ChainEffector