Interface : INode

This represents a Node Interface providing access to some properties and methods available in all nodes.

   

Properties

.vertexColorType : enum : Read|Write 	 

vertexColorType enums: {#color | #illum | #alpha | #color_plus_illum | #soft_select | #map_channel}   

Gets/Sets the vertex color display type.

   

.vertexColorMapChannel : integer : Read|Write 

Gets/Set the map channel used for vertex colors when .vertexColorType is set to the new enum value #map_channel .

   

.posInParent : point3 : Read 

Gets the node’s position relatively to its parent. When the parent is undefined (node is child of the world), returns the world position.

   

.rotInParent : point3 : Read 

Gets the node’s rotation relatively to its parent.

   

.scaleInParent : point3 : Read 

Gets the node’s scale relatively to its parent.

   

.scaleOrientInParent : quat : Read 

Gets the node’s scale orientation relatively to its parent.

   

.boneEnable : boolean : Read|Write 

Gets/Sets the node’s Bone property.

   

.posTaskWeight : float : Read|Write 

Gets/Sets the the Bind Position Weight value under the Hierarchy > IK. Panel.

   

.rotTaskWeight : float : Read|Write 

Gets/Sets the the Bind Orientation Weight value under the Hierarchy > IK. Panel.

   

.boneAutoAlign : boolean : Read|Write 

Gets/Sets the the node’s AutoAlign Bone property. When turned off, the bone's pivot point will not align to its child object. The translation of a child bone will not be converted into rotation of the parent. Instead the child will be allowed to move away from the parent's X-axis.

NOTE:

Changing the state of this check box will not have an immediate visual effect on the skeleton. It only affects future behavior when bones are moved. This option is only available if Bone is off.

   

.boneFreezeLength : boolean : Read|Write 

Gets/Sets the the node’s Freeze Length property. When turned on, the bone maintains its length. When turned off, the bone's length is based on the translation of its child bone. This option is available only if Auto-Align is on.

   

.boneScaleType : enum : Read|Write 

boneScaleType enums : {#scale|#squash|#none} 

Gets/Sets the the node’s Bone Scale Type property.

Scale: Lets the bone scale. The stretch happens along one axis.

Squash: Lets the bone squash. The bone gets fatter as it gets shorter, and thinner as it gets longer.

None: No stretch takes place.

   

.stretchTM : matrix3 by value : Read 

Gets the the node’s Stretch Transformation Matrix. Normally, matrix concatenation occurs in the following manner:

objectTM = objectOffsetTM * stretchTM * nodeTM

So code that uses the objectTM will transparently inherit the effects of the stretchTM. However if you want the stretchTM included but not the object offset, this property will return the stretchTM alone. If the node is not a bone or has no stretching, this property will return the identity matrix.

   

.boneAxis : enum : Read|Write 

boneAxise nums : {#X | #Y | #Z} 

Gets/Sets the node’s Bone Axis.

   

.boneAxisFlip : boolean : Read|Write 

Gets/Sets the node’s Bone Flip Axis option.

   

.primaryVisibility : boolean : Read|Write 

Gets/Sets the node’s Visible to Camera option.

   

.secondaryVisibility : boolean : Read|Write 

Gets/Sets the node’s Visible to Reflection/Refraction option.

   

.applyAtmospherics : boolean : Read|Write 

Gets/Sets the node’s Apply Atmospherics option.

   

.showVertexColors : integer : Read|Write 

Gets/Sets the node’s Show Vertex Colors option.

   

.shadeVertexColors : integer : Read|Write 

Gets/Sets the node’s Shade Vertex Colors option.

   

.handle : DWORD : Read 

Gets the node’s handle. It provides a unique identifier independent from the object’s name.

   

.isSceneXRefNode : bool : Read

Contains True if the node is part of a Scene XRef, False otherwise.

Available in 3ds Max 2015 and higher.

   

.wasLoadedByLastMerge : bool : Read

Contains True of the node was loaded by the last merge operation, for example with mergeMaxfFile(), False otherwise.

Methods:

<void>setBoneEnable <boolean>onOff <time>time 

Enables/Dsiables the bone.

When the first argument is True, the bone or object behaves as a bone. Turning this option off causes the node to stop behaving like a bone. There is no auto alignment or stretching. Note that turning this option on will not cause the object to immediately align or stretch. However future translations of children may cause rotation and stretching. Default is True or bone objects, False for other objects.

The second argument specifies the time at which to calculate and store initial child position. This is usually used with the current time slider position. The time associated with the time slider can be queried and set using the sliderTime global variable.Time Control

   

<void>realignBoneToChild() 

Rotates the node such that its X axis points at the average position of all children with the bone property turned on.

   

<void>resetBoneStretch() 

Resets the initial child position used to compute the stretch factor to the current child position. This will cause the stretch factor to become equal to one. If it was previously not equal to one then the object would snap to its original unstretched state.

   

See Also