Skip to main content

Variable Graph

The Variable Graph is a visual node-based editor that shows how variables, pattern pieces, and modules are connected. It gives you a bird's-eye view of your parametric relationships and lets you create, edit, and manage variable links by dragging connections between nodes.

Open the Variable Graph by clicking the graph icon in the Variables section header, or from the bottom panel tab.


Overview

The graph displays three types of nodes:

  • Variable nodes — orange header, show the variable name, value, and optional formula/slider
  • Shape nodes — blue header, represent pattern pieces with their geometric properties (points, lines, curves)
  • Module nodes — olive/green header, represent module instances with transform properties (scaleX, scaleY, rotation)

Connections (edges) between nodes show which variables drive which properties. Orange edges connect variables to shape properties; olive edges connect variables to module transforms; blue edges show direct shape-to-shape property links.


Node Filtering

The graph automatically filters nodes based on your current selection:

  • Shape selected — only that shape and its connected variables are shown
  • Module selected — only that module and its connected variables are shown
  • Nothing selected — all shapes, modules, and variables are visible

Search Filter

Click the magnifying glass button in the top-left toolbar to open a search input. Type to filter nodes by name, piece letter (A, B, C...), or module abbreviation (Md1, Md2...). Connected nodes are kept visible automatically. Press Escape or click the X to clear the filter.


Variable Nodes

Each variable node displays:

  • Name — click to rename inline
  • Value — click to edit the numeric value directly
  • Formula indicator — click the fx button to toggle formula mode
  • Slider — click the gear icon to add a slider for quick value adjustments; click again to configure min/max/step
  • Output handle (right side) — drag from here to connect to a shape or module input

Editing Variables in the Graph

You can do all variable editing without leaving the graph:

  1. Change value — click the value, type a new number, press Enter
  2. Rename — click the name, type a new name, press Enter
  3. Toggle formula — click fx to switch between fixed value and formula mode
  4. Edit formula — expand the node (click the chevron), then edit the formula with syntax highlighting; use the code button to insert expressions from a categorized dropdown
  5. Add slider — click the gear icon; configure min, max, and step values
  6. Delete — click the trash icon to remove the variable and all its links
  7. Duplicate — use the context menu to create a copy

Formula Editor

When a variable is in formula mode and expanded, the node shows a syntax-highlighted code editor. Formulas use the same expression language as the sidebar:

  • VariableName — references to other variables (orange)
  • A1.A2 — geometric expressions like line lengths (yellow)
  • + - * / ( ) — operators (blue)

A live preview below the editor shows the computed value, or "Invalid formula" if there's an error.


Shape Nodes

Shape nodes represent pattern pieces and show their geometric properties as input handles on the left side:

  • Point propertiesA1.x, A1.y (coordinates), A1.r (border radius)
  • Line propertiesA1.A2 (line length), A1.A2.curve (curvature), A1.A2.seam (seam allowance)
  • Panel propertiesA.width, A.height, A.perimeter, A.area

Expanding Properties

Shape nodes start collapsed, showing only properties that already have connections. Click the chevron to expand and see all available properties.

To add a specific property without expanding, click the + button and select from the categorized dropdown. Properties are grouped by:

  • Points — coordinates and border radius
  • Lines — lengths, curves, seam allowances
  • Panel — overall dimensions

Point & Line Selection

Click on a point property (e.g., A1) to select that point on the canvas. Click on a line property (e.g., A1.A2) to select that line. This syncs the graph with the canvas selection.


Module Nodes

Module nodes show the transform properties of module instances:

  • scaleX — horizontal scale factor
  • scaleY — vertical scale factor
  • rotation — rotation angle in degrees

Connect a variable to any of these properties to control module transforms parametrically.


Creating Connections

Variable to Shape Property

  1. Drag from a variable node's output handle (right side)
  2. Drop on a shape property's input handle (left side)
  3. The variable now drives that shape property

Variable to Module Property

  1. Drag from a variable node's output handle
  2. Drop on a module property's input handle
  3. The variable now controls that module transform

You can also connect shape properties directly to each other without an intermediate variable:

  1. Drag from a shape property's output handle (right side)
  2. Drop on another shape property's input handle
  3. The target property now mirrors the source

Direct links appear as blue edges in the graph.

Creating Variables on Connect

If you drag a connection from a shape property that has no variable, a new variable is automatically created with the current value and linked to that property.


Removing Connections

  • Select an edge and press Delete to unlink
  • Drag an edge endpoint away from its target and release on empty space to unlink
  • Reconnect by dragging an edge's target handle to a different property

Toolbar

The top-left toolbar provides:

ButtonAction
Zoom InZoom into the graph
Zoom OutZoom out of the graph
Fit ViewFit all nodes into the viewport
RefreshRe-layout all nodes (sorted by name)
SearchOpen the node filter input

You can also scroll to zoom and drag the background to pan.


Tips

  • Hover over a node to highlight all its connected edges — dimming unrelated connections makes it easy to trace relationships
  • Use the search filter when working with large patterns to focus on specific pieces or variables
  • Expand variable nodes (chevron) to see and edit formulas inline
  • Direct shape-to-shape links are great for keeping dimensions in sync without creating extra variables
  • The graph and canvas stay in sync — selecting a point or line in the graph selects it on the canvas, and vice versa