Cluster

Object Hierarchy | Related C++ Class: Cluster

Inheritance

SIObject
   ProjectItem
       SceneItem
          Cluster

Description

A cluster represents a set of components on a Geometry. For example, the polygons of the left arm of a human model might be grouped together by creating a cluster.

A cluster has a SIObject.Type which corresponds to the component type that it contains, (pnt, knot, poly). A geometry can have multiple clusters, including clusters of different types. Any particular component might be included in multiple clusters. The ClusterTypes that are supported on a geometry depend on the type of object. For example only NurbsSurface or NurbsCurve can have a siKnotCluster.

Clusters can be created on the geometry of a ParticleCloud. These clusters are of type siVertexCluster but they contain Particles.

A cluster that includes all the components of a particular type is said to be "always complete", which you can verify with the Cluster.IsAlwaysComplete method. An always-complete cluster always covers all components of the geometry, even when components are added by a modeling operation; however, notice that a cluster which covers all components of a geometry is not necessarily always-complete. Other clusters may contain a subset of components. In all cases the indices of the components in the cluster do not directly match the indices of the component on the geometry. The mapping between cluster indices and geometry indices is available through Cluster.Elements and Cluster.FindIndices.

Clusters are useful for storing per-component data with a ClusterProperty or UserDataMap. Clusters can also have their own CustomProperty objects. All these properties can be created with SceneItem.AddProperty and enumerated with SceneItem.LocalProperties. Notice that some types of ClusterProperty require the cluster to be always complete.

Warning: Operations that change the geometry, for example adding an edge to a mesh, can result in the cluster growing or shrinking.

Note: As of v5.0, the base property SIObject.Parent called on a Cluster object returns a Primitive instead of an X3DObject.

Methods

AddCustomOp

AddCustomProperty

AddMaterial

AddProperty

AddScriptedOp

AddScriptedOpFromFile

AnimatedParameters2

ApplyEnvelope

BelongsTo

CreateSubComponent

EvaluateAt

FindIndex

FindIndices

GetICEAttributeFromName

GetLocalPropertyFromName

GetPropertyFromName

GetStaticKinematicStates

HasStaticKinematicState

IsA

IsAlwaysComplete

IsAnimated2

IsClassOf

IsEqualTo

IsKindOf

IsLocked

IsSelected

LockOwners

SetAsSelected

SetCapabilityFlag

SetLock

SetMaterial

TaggedParameters

UnSetLock

 

 

 

Properties

Application

BranchFlag

Capabilities

Categories

CenterReference

Elements

Envelopes

EvaluationID

Families

FullName

Help

HierarchicalEvaluationID

ICEAttributes

LocalProperties

LockLevel

LockMasters

LockType

Material

Model

Name

NestedObjects

ObjectID

Origin

OriginPath

Owners

Parameters

Parent

Parent3DObject

PPGLayout

Properties

Selected

Type

See Also

ClusterProperty

Geometry.AddCluster

Geometry.Clusters

Geometry.SaveShapeKey

Examples

• See Cluster.1.vbs

• See Cluster.2.js



Autodesk Softimage 2011