data types - blossommerz/locus-hub GitHub Wiki

Home > Data-type reference

< Previous: Menu reference | Next: Glossary >

Reference

Data-type reference

The kinds of data that flow between nodes in the node graph, and what each one carries.

Every connection in the Nodes window carries a specific kind of data. Sockets are colored and shaped by type, so you can tell at a glance what a node expects and what it produces - and whether two sockets can be wired together.

The types

The ten data types, each with its socket glyph and color: number (grape open ring), point (blue filled circle), curve (green triangle), region (orange square), boolean (pink right-triangle), color (yellow hexagon), image (cyan outline square), string (slate-grey pentagon), trigger (violet hollow diamond), any (neutral filled dot, same size as point)

Each type has its own color and socket shape - the same pairing everywhere sockets, wires, and legends appear.

Type Looks like What it carries
number grape open ring A single number - a count, a spacing, a radius, an angle
point blue filled circle One or more points in space
curve green triangle Lines and arcs - open paths
region orange square A filled, enclosed area
boolean pink right-triangle An on/off value (true or false)
color yellow hexagon A color, used for fills and strokes
image cyan outline square A raster image, sampled into a field
string slate-grey pentagon Text, such as a mask or a label
trigger violet hollow diamond A one-shot pulse (execution) - press a Button, or wire one in, to run a manual node
any takes on the live type A flexible socket that adopts whatever flows in

About any sockets

An any socket doesn't commit to a single type. When you wire something into it, it adopts the color and shape of the value actually flowing through - so an any socket carrying a region shows green, and one carrying points shows blue.

This is why some nodes' sockets seem to "change color" as you connect them: they're reflecting the live type passing through, not switching what they are. An any socket still accepts anything, no matter what's currently flowing.

Tip

A thick wire means the connection is carrying a list of several items rather than a single one - for example a whole array of regions instead of one. It's a quick visual cue that a node is fanning out into many pieces.

Note

Points, curves, and regions are all forms of geometry - points are locations, curves are open paths, and regions are enclosed areas you can fill. Number, boolean, string, and color describe or style that geometry rather than being shapes themselves.

Matching sockets when you wire

A ten-by-ten compatibility grid: output types down the left, input types across the top. A check marks a valid connection - the diagonal (same type to same type) plus the whole any row and any column, highlighted as universally compatible; every other cell is blocked

You can connect an output to an input whenever their types are compatible. In practice that means:

  • Same type to same type always connects: a region output into a region input, a number into a number.
  • An any socket accepts any type, so it's the most flexible connection point.
  • A concrete output (say, a curve) won't fit a socket that expects a different concrete type (say, a color).

If a wire won't attach, check that the two sockets' shapes and colors are compatible - the visual cue is telling you the types don't line up.

Outputs (rows) against inputs (columns): a check means they connect. Same type always connects, and any - the last row and column - bridges everything.

Tip

When you're unsure what a socket carries, hover to read its name and watch its color. An any socket that's already wired shows you the live type flowing through it, which is often the fastest way to understand a node graph you didn't build.

< Previous: Menu reference | Next: Glossary >

⚠️ **GitHub.com Fallback** ⚠️