Symbol

Dashboard component reference for the Symbol, an animated industrial SVG driven by live points, with its inputs, connections and orientation.

View as Markdown

The Symbol places an industrial SVG drawing on the screen — a pump, a valve, a tank — and drives its declared inputs from live points, so the artwork animates with the plant. It is the one component whose identity is chosen before placement: the palette entry opens the symbol library (the embedded system pack plus the operator's own imported symbols), and the one you pick is what lands on the canvas. A component whose reference cannot be resolved renders a neutral placeholder rather than an arbitrary piece of equipment, with the reason in its tooltip.

What a symbol can do — which sub-elements animate, what each input accepts, where its terminals sit — is authored in the symbol itself, not in this panel. The file format and its vocabulary are documented in Portable SVG symbols.

Content

The panel opens with what this instance is: a preview, the symbol's name and its origin (<library> · <category>). Change symbol… opens the library to swap the drawing; only the drawing changes — position, size, orientation and every connection and binding the new symbol still declares stay as they are. A symbol that declares no dynamic inputs says so here.

Data: the symbol's inputs

Each input the symbol declares appears as one field, captioned with what it takes — the value category and, where the declaration bounds the input, the range, for example decimal · 0 to 100, boolean, color, text. The same category filters the address suggestions, so what the field says and what it offers cannot disagree.

Every input carries an explicit source choice, so exactly one of the two is ever in force — the source is the operator's decision, never a guess over which field happens to hold text:

Source What the field takes
Address A rooted Logic address of the declared category. Once named, the point's current reading shows under the field — a colour arrives painted beside its hex, since the literal says nothing about the paint it stands for.
Fixed value A constant, typed on the declaration's own terms: a number field with the declared bounds, a true/false switch, a colour picker (a hex value, a CSS colour name or a var(--color-…) token), or plain text.

A fixed value the input refuses — a number outside the declared range, a paint the sanitizer rejects — stays on screen with the reason beside it instead of silently snapping back; nothing is stored until the entry is one the symbol accepts. An empty entry is a source whose value is not set yet: the input stays neutral, exactly like an empty address. Bad quality on a bound point reads as an unusable sample: the input applies nothing, and that element keeps its authored state rather than animating on a value nobody measured.

Connections

Shown only for symbols that declare terminals. The section lists:

  • Type configurations — where the symbol shares one connection type across several terminals (a process fluid, say), each configuration is one dropdown over its allowed types, and the choice is shared by every terminal that uses it.
  • Terminals — a read-only roster of the symbol's connection points: anchor, role (input, output, bidirectional) and resolved type. It answers "what can this symbol be wired to" without leaving the panel; the free/occupied state stays on the canvas markers, where the wiring gesture is.

Orientation

Which way the drawing faces is the one appearance a Symbol has that no other kind does. How big it is drawn is not asked here: that is the shared content scale in the Appearance section.

Property What it does Values Default
Rotation Clockwise artwork rotation, in quarter turns. 0° · 90° · 180° · 270°
Flip horizontal Mirrors the artwork around its vertical axis. on / off off
Flip vertical Mirrors the artwork around its horizontal axis. on / off off