Connect Points

Connect a set of points into a polyline or closed polygon.

What it does

Connect Points turns a set of points into a shape by drawing lines between them. Sequential mode walks the points in index order to build a polyline, optionally closing it into a polygon, optionally smoothing it into a curve that still passes through every point. K-Nearest and Within Radius link each point to nearby points, so the result reads as a proximity graph rather than a single ordered path.

Where the points carry a grouping attribute, separate strokes or recorded sessions for example, Split By turns one tangled shape into one shape per group. Fill, Stroke, and Stroke Width control how the resulting shape paints.

When to use it

ParameterTypeDefaultWhat it does
points_inCollection or Vec3[]—Points to connect into a path
connectionString"Sequential"How to determine which points connect: Sequential = index order, K-Nearest = nearest neighbors, Within Radius = all points within distance. One of: Sequential, K-Nearest, Within Radius.
neighborsNumber3Number of nearest neighbors to connect to
max_distanceNumber0Maximum connection distance (0 = unlimited)
deduplicateBooleantrueRemove duplicate edges (A-B and B-A become one line)
closedBooleanfalseConnect the last point to the first
interpolationString"Linear"How to interpolate between points. One of: Linear, Smooth.
tensionNumber0.500Curve tightness (0 = loose, 1 = tight)
subdivisionsNumber16Number of subdivisions per segment
split_byString""Attribute name to group by (e.g. 'session'). Empty = one shape from all points.
fillColor or Color Field or Color[] or Field or Material or Material[] or Frame Sequencergba(0.00, 0.00, 0.00, 0.00)Fill color, or connect a Fill/Color/Image node
strokeColor or Color Field or Color[] or Field or Material or Material[] or Frame Sequencergba(1.00, 1.00, 1.00, 1.00)Stroke color, or connect a Stroke/Color node
stroke_widthNumber2Stroke width (0 = no stroke)
positionVec3(0, 0, 0)Position offset (X, Y, Z)
rotationVec3(0, 0, 0)Rotation in degrees (X, Y, Z)
scaleVec3(1, 1, 1)Scale (X, Y, Z)
opacityNumber1Layer opacity (0 = transparent, 1 = opaque). Editable, wirable, keyframable.

Gotchas

In Within Radius mode a Max Distance of 0 does NOT mean unlimited. It means a radius of zero, so by default nothing connects. The 0 = unlimited shortcut only applies in K-Nearest mode. Raise Max Distance above 0 if Within Radius gives an empty result.

Closed, Interpolation, Tension, and Subdivisions only apply, and are only shown, in Sequential mode. K-Nearest and Within Radius hide them, since those modes connect by proximity rather than by an ordered path.

Tension controls how tightly the Smooth curve pulls to the polyline: 0 is loose and curvy, 1 pulls it straight. The curve passes through the original points either way, and only the handles in between change.

Worked example

  1. Feed a set of points into Connect Points, from a scatter, a simulation result, or a recorded stroke.

  2. Leave Connection on Sequential to draw them in order. Turn on Closed to join the last point back to the first and get a polygon.

  3. Set Interpolation to Smooth and adjust Tension to soften the line into a curve that still passes through every point.

  4. Wire a Color node into Stroke (and Fill, if you closed the shape) to paint the result.

  5. If your points carry a grouping attribute, type its name into Split By to get one shape per group instead of one shape joining everything together.

See also

Pen · Resample · Subdivide · Convex Hull