Utility node

Reroute

A tiny pass-through waypoint that routes a cable through a chosen point — the primary tool for keeping large graphs readable. Drop one onto any cable to bend it around node clusters, split long runs into tidy segments, or fan one output to many destinations from a convenient hub. Beyond layout, Reroute doubles as an inline type converter: it can detect the types flowing through it and convert between compatible port types with configurable rounding, parsing, and threshold rules.

Inputs

PortType
InThe cable passing through this point. Anything can be plugged in — the value leaves the other side unchanged, converted only if the destination port needs a different type.any

Outputs

PortType
Outany

How It Works

Creating one. Three ways: Command+click on a cable, double-click on a cable, or place a Reroute from the node library. Cable-created reroutes splice themselves in — the original connection is replaced by source → Reroute → target, and undo removes the reroute and restores the direct cable. A reroute created on a cable adopts that cable's port type; the library version has generic In and Out ports of type Any that specialize once connected.

Transparent resolution. At runtime, reroutes cost essentially nothing: the connection resolver walks straight through reroute chains to the original source, so a value crossing five reroutes is resolved in one step rather than five node evaluations. What the walk does collect is the ordered list of conversion steps — every reroute in the chain that has a manual output type contributes one conversion (source → R1 → R2 → … → target), applied in order when the value is read. The one exception is inside a Macro Group: crossing the group boundary evaluates the reroute directly, where it simply forwards its input value.

Type detection and conversion. Each reroute continuously detects its input type (from the connected source) and output type (from the connected target). By default the output follows the target automatically; in the inspector you can pin a manual output type from the set of types convertible from the input. When input and output types differ, the reroute converts — and shows the conversion rules that apply:

ConversionSettingOptions
Float → IntRounding ModeRound (default), Floor, Ceiling, Truncate
String → NumberParse ModeStrict (invalid → nil), Default 0 (default), Default 1
Number → BoolBool ThresholdNon-Zero (default), Positive, Threshold 0.5, Threshold 1.0
Bool → Numberfixedtrue → 1, false → 0
Number → Stringfixeddecimal formatting

Incompatible pairs are flagged in red in the inspector and by the cable gate — you cannot complete a connection the converter cannot service.

On the canvas. A reroute renders as a minimal fully-rounded pill (0.056 × 0.019 Grafit units, no title), and its two port dots are tinted with the detected input and output types' cable colors — a converting reroute visibly changes color from one side to the other. The inspector adds a live value display (refreshed every 100 ms) showing what is currently flowing through, formatted per type, plus IN/OUT type badges and the conversion controls. Per-node conversion settings are cleaned up when the reroute is deleted.

Parameters in Depth

  • In (any) — the single input port. Its effective type is detected from whatever source is connected; the inspector's value readout displays the current value (numbers, strings, bools, colors) or a type label for structures and images.

Everything else lives in the inspector rather than on ports:

  • Output Type — a grid of the types the detected input can convert to. Auto (default) follows the connected target's type; clicking a type pins a manual override (marked "Manual override active"), and the Auto button clears it. Manual overrides are how you build deliberate conversion chains.
  • Rounding Mode — visible only for Float → Int conversions. Round is standard rounding (2.5 → 3), Floor always rounds down (−2.1 → −3), Ceiling always up, Truncate cuts decimals toward zero (−2.9 → −2).
  • Parse Mode — visible only for String → Number conversions. Strict propagates failure for unparseable text; Default 0 / Default 1 substitute a fallback value.
  • Bool Threshold — visible only for Number → Bool conversions. Non-Zero is C-style (≠0 → true); Positive requires > 0; the two Threshold modes compare against 0.5 and 1.0 — handy for treating normalized floats as switches.

Use Cases

  • Cable management: route a Time output around a dense particle cluster with two reroutes so the cable hugs the layout instead of slicing through node bodies.
  • Fan-out hub: Audio Analysis level → one Reroute placed centrally → out to Points Visualize Size, Canvas Opacity, and Liquid Simulation Force — one hub to re-patch instead of three long cables.
  • Float to Int with intent: LFO → Reroute (manual output type Int, Rounding Mode Floor) → Get by Index — stepping through array elements without the half-step early jumps that Round would cause.
  • Threshold gate: Audio Analysis → Reroute (output type Bool, Threshold 0.5) → Switch — turning a continuous level into a clean on/off without a dedicated Compare node.
  • Parsing network text: OSC Receiver string → Reroute (output type Float, Parse Mode Default 0) → Math — malformed packets become 0 instead of breaking the chain.
  • Readable macro plumbing: inside a Macro Group, align reroutes into a vertical bus along the group's Port nodes so every bridged signal enters the internals at one visual column.

Tips

  • Double-click is the fastest way to drop a reroute exactly where a cable crosses trouble; Command+click does the same when double-click is inconvenient mid-drag.
  • Chains are free: any number of reroutes between source and target resolve as a single hop, with only manual-typed reroutes adding conversion steps. Use as many as layout demands.
  • The port-dot colors are live diagnostics — if the two ends of a reroute show different colors, a conversion is active; if the inspector shows "Incompatible types" in red, the value is not getting through.
  • A manual output type sticks even as you re-cable the downstream side; the orange "Manual override active" label (and Auto button) in the inspector tells you the reroute is opinionated, not transparent.
  • Deleting a reroute that sits mid-cable removes its connections — re-drag the direct cable afterward, or use undo immediately after creation, which restores the original direct connection automatically.
  • For organizing nodes rather than cables, reach for Comment Box or a Macro Group instead; Reroute is strictly about the wiring.

Open Reroute in the interactive catalog →

Reroute 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 Utility nodes