📄 threejs/Core/Nodes/SplitNode

File: SplitNode.md | Updated: 11/15/2025


title: SplitNode category: Core layout: docs

SplitNode

This module is part of the TSL core and usually not used in app level code. SplitNode represents a property access operation which means it is used to implement any .xyzw, .rgba and stpq usage on node objects. For example:

Code Example

const redValue = color.r;

Constructor

new SplitNode( node : Node, components : string )

Constructs a new split node.

node | The node that should be accessed.
---|---
components | The components that should be accessed. Default is 'x'.

Properties

.components : string

The components that should be accessed.

.isSplitNode : boolean (readonly)

This flag can be used for type testing.

Default is true.

.node : Node

The node that should be accessed.

Methods

.getComponentType( builder : NodeBuilder ) : string

Returns the component type of the node's type.

builder | The current node builder.
---|---

Returns: The component type.

.getNodeType( builder : NodeBuilder ) : string

This method is overwritten since the node type is inferred from requested components.

builder | The current node builder.
---|---

Overrides: Node#getNodeType

Returns: The node type.

.getScope() : Node

Returns the scope of the node.

Overrides: Node#getScope

Returns: The scope of the node.

.getVectorLength() : number

Returns the vector length which is computed based on the requested components.

Returns: The vector length.

Source

src/nodes/utils/SplitNode.js