Points node

Path

Draws a real curve THROUGH a point cloud — the node that turns points into a line you can hand on. It walks the cloud by any of fourteen orderings (index, sweeps, depth, spiral, zig-zag, nearest neighbour, Hilbert, random — the same routes Lines Visualize draws with), then interpolates a smooth curve rather than a polyline. Its Start and End outputs carry the anchor AND the heading, and its Start and End inputs accept the same, so ONE cable joins Path to Path: the next curve leaves exactly where this one arrived, travelling the way it was travelling. Each link still rebuilds on its own, so changing anything mid-chain just reflows the rest. Start Direction and End Direction take a heading on its own cable when you would rather aim the curve than join it.

Inputs

PortTypeDefault
PointsThe cloud to walk. Anything: a Curve, a scatter, a tracker’s features, a particle snapshot. This node decides the ROUTE through them and hands the result on as a curve.structure—
Order ModeWhich route to take through the cloud — index, directional sweeps, depth, centre-out, angle, spiral, zig-zag scanlines, a greedy nearest-neighbour walk, Hilbert order or a seeded shuffle. The same list Lines Visualize draws with, from the same place, so the line you SEE and the path you sweep take the same route.int0
CurveStraight keeps the walk as it is, corner for corner. Smooth Curve interpolates a real curve that passes THROUGH every point — not near them.int1
Curve DetailSubdivisions per segment in Smooth mode. More is a finer curve and more points downstream; the shape stops changing long before the count does.int8
SmoothingRounds the corners of the walk BEFORE it is curved, by averaging each point with its neighbours. Different from Curve: this moves the points, that interpolates between them. Open ends stay pinned.float0
ClosedJoins the last point back to the first, so the curve is a loop with no corner at the seam. It is reported on the Closed output too, ready to cable into Sweep.boolfalse
StartWhere this path begins, and optionally which way it is heading there. Cable another Path’s End straight in and the two become one continuous run: this one leaves where that one arrived, travelling the way it was travelling. One point sets the position; two set the heading too, which is what an End output already is.structure—
EndWhere this path finishes, same bundle as Start. Use it to aim a chain at a target: the curve will arrive there going the way you asked.structure—
Start DirectionThe heading to leave in, on its own cable — for when you want to AIM the curve rather than join it. It overrides whatever a Start bundle carried, and works with no bundle at all: the curve still begins on its own first point and only its departure is aimed. Any vector will do: a Distance direction, a normal, a hand.structure—
End DirectionThe heading to arrive in. Aims the far end the same way Start Direction aims the near one, which is what lets a chain be pointed at something rather than merely stopped.structure—
TensionHow strongly a supplied heading steers the curve away from its ends. 0 ignores the heading and lets the neighbouring points decide; 1 follows it naturally; higher pulls the curve out along the heading before it turns — longer, lazier joins.float1
ResampleRewalks the finished curve at a constant spacing and returns exactly this many points. 0 leaves it alone. Worth turning on before a Sweep: a curve sampled per segment is densest where the original points were, which shows as rings bunching.int0
SeedReplays the Random ordering exactly. Only used by that one mode.int0

Outputs

PortType
Pathstructure
StartWhere this path begins, and optionally which way it is heading there. Cable another Path’s End straight in and the two become one continuous run: this one leaves where that one arrived, travelling the way it was travelling. One point sets the position; two set the heading too, which is what an End output already is.structure
EndWhere this path finishes, same bundle as Start. Use it to aim a chain at a target: the curve will arrive there going the way you asked.structure
Start DirectionThe heading to leave in, on its own cable — for when you want to AIM the curve rather than join it. It overrides whatever a Start bundle carried, and works with no bundle at all: the curve still begins on its own first point and only its departure is aimed. Any vector will do: a Distance direction, a normal, a hand.structure
End DirectionThe heading to arrive in. Aims the far end the same way Start Direction aims the near one, which is what lets a chain be pointed at something rather than merely stopped.structure
Countint
ClosedJoins the last point back to the first, so the curve is a loop with no corner at the seam. It is reported on the Closed output too, ready to cable into Sweep.bool
Lengthfloat

How It Works

Path draws a real curve through a point cloud — it is the node that turns a bag of points into a line you can hand on. First it orders the cloud by one of fourteen routes (index, sweeps, depth, spiral, zig-zag, nearest neighbour, Hilbert, random — the same routes Lines Visualize draws with), then it interpolates a smooth curve through the ordered points rather than connecting them with straight segments.

The chaining is what makes it a family. Start and End outputs carry the anchor and the heading, and the Start and End inputs accept the same, so one cable joins Path to Path: the next curve leaves exactly where this one arrived, travelling the way it was travelling. Each link still rebuilds on its own, so changing something mid-chain simply reflows the rest. Start Direction and End Direction take a heading on its own cable when you would rather aim the curve than join it.

Smoothing and Tension shape the interpolation, Closed joins the ends, Resample re-spaces the result to a fixed count, and Seed makes the random ordering repeatable.

Use Cases

  • Route a scatter into a line — Nearest-neighbour ordering turns a random cloud into a single continuous stroke.
  • A spine from real data — Order a tracked point cloud, smooth it, and sweep a profile along the result.
  • Multi-segment shapes — Chain three Paths and you have a route with three distinct characters that still reads as one continuous curve.
  • Ordered input for Scope Voice — Oscilloscope music needs an ordered path; Path is how an unordered cloud becomes one.
  • Drawing hand-made outlines — Points placed by hand, ordered by index, smoothed into a curve.

Tips

  • Ordering matters more than smoothing: a bad route makes a tangle that no amount of tension will fix. Try Nearest Neighbour first on scattered data.
  • Hilbert ordering fills an area without long jumps — good for dense clouds you want to draw as one stroke.
  • Resample after ordering when downstream needs evenly spaced samples (Sweep and Scope Voice both like that).
  • Closed turns a route into a loop; combine with Extrude Path or Triangulate for a solid.
  • Feed Curve into Path when you want a generated shape re-ordered or re-sampled before use.

Open Path in the interactive catalog →

Path is one of 381 nodes in Grafit Pro.

Free download. Every feature for 7 days, no card. Then €99.99 once — or keep playing your projects as a Player.

More Points nodes