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|WriteGets/Set the map channel used for vertex colors when .vertexColorType is set to the new enum value #map_channel .
.posInParent : point3 : ReadGets 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 : ReadGets the node’s rotation relatively to its parent.
.scaleInParent : point3 : ReadGets the node’s scale relatively to its parent.
.scaleOrientInParent : quat : ReadGets the node’s scale orientation relatively to its parent.
.boneEnable : boolean : Read|WriteGets/Sets the node’s Bone property.
.posTaskWeight : float : Read|WriteGets/Sets the the Bind Position Weight value under the Hierarchy > IK. Panel.
.rotTaskWeight : float : Read|WriteGets/Sets the the Bind Orientation Weight value under the Hierarchy > IK. Panel.
.boneAutoAlign : boolean : Read|WriteGets/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.
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|WriteGets/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 : ReadGets the the node’s Stretch Transformation Matrix. Normally, matrix concatenation occurs in the following manner:
objectTM = objectOffsetTM * stretchTM * nodeTMSo 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|WriteGets/Sets the node’s Bone Flip Axis option.
.primaryVisibility : boolean : Read|WriteGets/Sets the node’s Visible to Camera option.
.secondaryVisibility : boolean : Read|WriteGets/Sets the node’s Visible to Reflection/Refraction option.
.applyAtmospherics : boolean : Read|WriteGets/Sets the node’s Apply Atmospherics option.
.showVertexColors : integer : Read|WriteGets/Sets the node’s Show Vertex Colors option.
.shadeVertexColors : integer : Read|WriteGets/Sets the node’s Shade Vertex Colors option.
.handle : integer : ReadGets the node’s handle. It provides a unique identifier independent from the object’s name.
.isSceneXRefNode : boolean : ReadContains True if the node is part of a Scene XRef, False otherwise.
Available in 3ds Max 2015 and higher.
.isSceneNode : boolean : ReadReturns true if called on scene root or node under scene root. Returns false if called on Xref scene node or node under scene Xref node. Returns false on deleted node or stand-alone node (createInstance NodeObject forceCreate:true).
Available in 3ds Max 2025 and higher.
.wasLoadedByLastMerge : boolean : ReadContains True of the node was loaded by the last merge operation, for example with mergeMaxfFile(), False otherwise.
Methods
<void>setBoneEnable <boolean>onOff <time>timeEnables/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.
<bool>isSceneNode()Method returns true if called on scene root or node under scene root. Returns false if called on Xref scene node or node under scene Xref node. Returns false on deleted node or stand-alone node (createInstance NodeObject forceCreate:true).
Available in 3ds Max 2025 and higher.