This Function Publishing Interface is exposed by various components of 3ds Max CAT.
Properties:
.NumArbBones: integer : Read Contains the number of arbitrary bones in the CATRig.
Read-only.
.Node: node : Read Contains the node the controller is assigned to.
Read-only.
.Address: String by value : Read Contains the address of the bone.
Read-only.
FOR EXAMPLE:
$[3].Address --get the address from the transform controller of a selected bone: "SceneRootNode.Hub.Limb[0].LimbBone[0].BoneSeg[1]"
.SetupTM : matrix3 by value : Read|Write Get/set the Setup Transformation Matrix.
.BoneDimensions : point3 by value : Read Contains the Bone's Dimensions (Length, Widht and Height).
Read-only.
.Stretchy : boolean : Read|Write
REMOVED in 3ds Max 2015: Get/set the Stretchy property of the Bone in versions prior to 3ds Max 2015. Replaced by the two methods below:
.SetupStretchy : boolean : Read|WriteGet/set the Stretchy property of the Bone for setup mode. Available in 3ds Max 2015 and higher.
.AnimationStretchy : boolean : Read|WriteGet/set the Stretchy property of the Bone for animation mode. Available in 3ds Max 2015 and higher.
.EffectHierarchy: boolean : Read|Write Get/set whether changes to the Bone will affect the hierarchy or not.
.ApplyTransforms: boolean : Read|Write Get/set whether to apply transforms to the Bone.
.NumLayerFloats: integer : Read Contains the number of LayerFloat Controllers.
Read-only.
.SetupModeLocks: bitArray : Read|Write|Validated by Validator function Get/set the bitarry of Setup Mode Locks.
.AnimationLocks: bitArray : Read|Write|Validated by Validator function Get/set the bitarry of Animation Locks.
.MirrorBone: node : Read|Write Get/set the mirror bone node.
Methods:
<Interface>AddArbBone AsNewGroup:<boolean>
AsNewGroup default value: falseAdds an arbitrary Bone to the Rig.
Returns the new Bone's CATNodeControlFPInterface Interface since 3ds Max 2013. In previous versions, it used to return the bone's ArbBone controller
You can use the Interface's .Node property to access the actual node of the new arbitrary Bone (see top of this page).
The AsNewGroup: optional argument can be set to True to add the bone to a new group since 3ds Max 2015. It defaults to False.
<Interface>GetArbBone <index>index Returns the CATNodeControlFPInterface Interface of the indexed Arbitrary Bone since 3ds Max 2013. In previous versions, it used to return the bone's ArbBone controller.
<control>CreateLayerMatrix3 AsNewGroup:<boolean>
AsNewGroup default value: falseCreates and returns a new LayerMatrix3 Controller.
The AsNewGroup: optional argument can be set to True to add the controller to a new group since 3ds Max 2015. It defaults to False.
<control>CreateLayerFloat() Creates and returns a new LayerFloat Controller.
Exposed by
CATBoneDataMatrix3Controller : Matrix3Controller
CATBoneSegTrans : Matrix3Controller
CATCollarBone : Matrix3Controller
CATDigitSegTrans : Matrix3Controller
CATFootTrans2 : Matrix3Controller
CATSpineTrans2 : Matrix3Controller