# `GSPath.nodes`

*Instance Property*

The ordered nodes describing the path.

## Declaration

```swift
var nodes: [GSNode] { get set }
```

```objc
@property (nonatomic, strong) NSArray<GSNode *> * nodes;
```

[See also `nodes` in the Python API](https://docu.glyphsapp.com/#GSPath.nodes)

```python
pyobjc_instanceMethods.nodes() -> list[GSNode]
pyobjc_instanceMethods.setNodes_(nodes: list[GSNode])
```

## Discussion

A node can belong to only one path. Remove a node from its current path before adding it to another path.

Setting this property replaces all nodes. Use path mutation methods rather than modifying the returned array directly.

## See Also

### Nodes

- [`GSNode`](/Core/GlyphsCore/GSNode) — An on-curve or off-curve point of a path.
- [`GSPath setNodesFast:`](/Core/GlyphsCore/GSPath/setNodesFast:) — Replaces all nodes without registering undo or notifying the layer.
- [`GSPath countOfNodes`](/Core/GlyphsCore/GSPath/countOfNodes) — The number of nodes.

