# ModelNode

#### internal constructor new Cesium.ModelNode()
engine/Source/Scene/Model/ModelNode.js 25

Use `Model#getNode` to get a node from a loaded model. Do not call the constructor directly.
A model node with a modifiable transform to allow users to define their own animations. While a model's asset can contain animations that target a node's transform, this class allows users to change a node's transform externally. In this way, animation can be driven by another source, not just by the model's asset.

##### Example:

    const node = model.getNode("Hand");
    node.matrix = Cesium.Matrix4.fromScale(new Cesium.Cartesian3(5.0, 1.0, 1.0), node.matrix);

##### See:

- Model#getNode

### Members

#### readonly id : number
engine/Source/Scene/Model/ModelNode.js 58

The index of the node in the glTF.

#### matrix : Matrix4
engine/Source/Scene/Model/ModelNode.js 94

The node's 4x4 matrix transform from its local coordinates to its parent's. Setting the matrix to undefined will restore the node's original transform, and allow the node to be animated by any animations in the model again.

For changes to take effect, this property must be assigned to; setting individual elements of the matrix will not work.

#### readonly name : string
engine/Source/Scene/Model/ModelNode.js 44

The value of the `name` property of this node.

#### originalMatrix : Matrix4
engine/Source/Scene/Model/ModelNode.js 118

Gets the node's original 4x4 matrix transform from its local coordinates to its parent's, without any node transformations or articulations applied.

#### show : boolean
engine/Source/Scene/Model/ModelNode.js 72

Determines if this node and its children will be shown.

Default Value: `true`

Need help? The fastest way to get answers is from the community and team on the Cesium Forum.