Skip to content
Elausys

HyperVisu / Administration

Graphics — Live Drawings for Views

Draw or import a plan, place pre-wired symbols, bind shapes to devices, add tap actions and animations, test and export.

elausys · 08 September 2026
On this page

Graphics are SVG drawings wired to the installation: a floor plan whose lamps light up, a heating diagram whose pumps spin, an energy flow whose arrows run with the power, a security plan whose door contacts turn red. You prepare them on the admin panel's Graphics page; residents place them on their views (see “Graphics on Your Views”). The Graphics page is its own entry of the BUILDING group in the sidebar, next to Logic.

A graphic is made of four things:

PartWhat it is
The drawingAn SVG document: something you drew or exported, a background picture, or an empty canvas you fill with symbols
SymbolsReady-made shapes from the library (a lamp, a shutter, a pump, a value pill…) placed on the drawing, with their bindings and actions pre-wired
BindingsRules that change a shape when a value changes: a colour, a text, a class, a position, an animation
ActionsWhat a tap, a double tap or a long press on a shape does: toggle a device, run a scenario, open a room, go to a view

The Graphics page. The table lists every graphic with its number of bindings and actions and where it is Placed ("2 view(s)" or "not placed"). Each row offers Edit, Duplicate, Export and Delete. Above the table: New graphic and Import bundle.

⚠️ Warning: Deleting a graphic that is placed on views removes those placements too — the dialog tells you on how many.

The Graphics page listing the graphics with their binding and action counts and where they are placed.

Creating a graphic

Click New graphic. The first screen asks how the drawing starts:

StartWhat happensSize of the graphic
From an SVG fileYour drawing is the graphic. Symbols go on top of it, and you can bind the shapes it already contains.The file's own size
From a background imageA photo, a scanned plan or a generated scene becomes the background. The graphic is created and saved at once, with the picture stored on the server. Symbols go on top.The picture's size
Blank compositionAn empty canvas — symbols only, a logo for instance. Choose Wide 16:10, Classic 4:3, Square or a Custom width and height.The size you choose
ExamplesTwo complete graphics that ship with the server: Energy flow and Pump station. They are imported as copies you can edit; their device references are matched by name.The example's size

A graphic's size is its coordinate space, shown in the Source tab as Graphic dimensions. You can change it later; the whole drawing rescales with it. A background image always sets it to the picture's own size.

💡 Tip: A light picture (white paper) needs dark strokes whatever the app theme. When you start from a light background image, the Colours setting is switched to Light drawing for you (see Testing, settings, export below).

The "New graphic" start screen: From an SVG file, From a background image, Blank composition and the two Examples.

The editor

The editor has two columns. On the left, the Preview draws the graphic exactly as the apps will, with a toolbar:

ButtonWhat it does
Insert symbolOpens the symbol library (see Symbols below)
MoveCompose mode: drag a symbol to move it, pull the orange dot on its corner to resize it, click it to edit its bindings, press Delete to remove it, Escape to deselect
PickClick any shape of the drawing to select it and edit its bindings — for hand-drawn shapes rather than symbols
Pan, Zoom out, Zoom inMove around and zoom the preview; the mouse wheel zooms too; click the percentage to return to 100 %. The zoom is only your view of the drawing, it changes nothing in the graphic

On the right, four tabs:

  • Source — the name, Upload SVG, the Graphic dimensions, and the SVG text itself, which you can edit directly. Under it, the sanitizer's verdict: "The drawing passes the sanitizer unchanged", or the list of what was removed.
  • Symbols (n) — every symbol placed on the drawing, plus Other elements for the drawing's own shapes (see Symbols below).
  • Test values — feed the preview with values (see Testing, settings, export below).
  • Settings — description, colours, fit, background, extra CSS and image assets (see Testing, settings, export below).

What the sanitizer does. The server cleans every drawing when it is saved: scripts, event handlers, links and external images are removed, animations are restricted to safe attributes. A drawing may weigh at most 2 MB. What the sanitizer changes is listed under the source so nothing disappears silently.

Saving. Nothing reaches the apps until you click Save. If a binding or an action is incomplete — a symbol with no device, a selector that matches nothing — the save is refused and the editor opens the row in question with the reason.

The graphic editor on the "Ground Floor" graphic: the preview on the left, the Source tab with the name, the Graphic dimensions and the SVG text on the right.

Symbols

Symbols are the fastest way to build a graphic: each one comes with the bindings and actions it needs, so placing a lamp and choosing its light is enough to make it live.

The library. Click Insert symbol. The dialog is grouped by category, with a search box.

CategorySymbolWhat it shows and does
LightingLampThe bulb lights up and glows when the light is on; tap toggles it
ClimateRadiatorA radiator with its temperature; tap opens the room
ClimateFanSpins while running; tap toggles it
OpeningsShutterA window whose cover follows the shutter position
Technical roomPumpGreen and spinning while running; tap toggles it after a confirmation
Technical roomValveA two-way valve with its open side highlighted; tap toggles it
Technical roomTankA tank whose fill and figure follow a level in percent
EnergySolar panelA PV array with its production figure
EnergyBatteryA battery whose fill follows the state of charge
EnergyGridThe grid connection, green while exporting, with the power
EnergyEV chargerA car that lights up while charging, with the charging power
Labels & linesFlow lineA dashed arrow whose dashes run while power flows, faster with more power, backwards when the sign flips
Labels & linesAnalog valueA pill showing any reading with its unit; tap opens the device
Labels & linesTextA free label you write yourself; scale and rotate it like any symbol
Labels & linesStatus indicatorA coloured dot with a state word for a digital input — open / closed, on / off
NavigationHotspot, Hotspot (wide)An invisible tappable area to lay over a room of a plan; a tap goes to a room, a category, a view or a device. Tinted blue in the editor only, never in the apps
My symbolsyour ownIcons you uploaded (see below)
The Insert symbol dialog with the Energy category selected: Solar panel, Battery, Grid and EV charger.

Hotspots. A Hotspot is a symbol with no drawing of its own: an invisible rectangle whose whole area answers a tap. Lay one over each room of a floor plan, resize it with the corner dot and choose where it goes in its action (Go to a room is pre-wired). It shows as a blue tint while you compose so you can find it again; residents never see it.

Placing and moving. Choosing a symbol drops it in the middle of the drawing, switches the preview to Move mode and opens the symbol's panel. Drag it where it belongs, pull the orange corner dot to resize it, or type its Placement: X, Y, Scale and Rotate. Fit to canvas scales and centres the symbol's artwork to fill the whole drawing — the way to make a logo-only graphic. A dashed rectangle marks the edge of the canvas while you move things: what falls outside it is cut off in the apps.

The symbol panel. At the top, Device points every binding and action of the symbol at one device in a single choice — for most symbols this is the only thing to set. Under the placement, three sub-tabs list the symbol's own Bindings, Actions and Animations, each editable as described below. Remove symbol deletes it with all its rows.

The editor in Move mode with a lamp selected: the selection ring with its corner dot, and the symbol panel with the Device field, the Placement fields, Fit to canvas and the sub-tabs.

Text. The Text symbol shows the words you type in its Text field. Scale it to change its size; bind its colour or its visibility like any other part.

Other elements. The drawing's own shapes are listed under Other elements, by id — a shape without an id cannot be bound. Give shapes ids in the Source tab, or click them with Pick; then add bindings and actions to them the same way. Rows whose selector is a class or a path rather than an id are grouped under Rows on other selectors.

My symbols. Under the My symbols category, Upload symbol adds an SVG icon of your own — a camera, a logo, a piece of equipment the library lacks:

FieldMeaning
SVG fileThe icon, at most 256 KB. It goes through the same sanitizer as a drawing
NameHow it appears in the library
ColoursOne colour redraws the icon in the drawing's text colour, so a binding can turn it green or red. Keep colours preserves the artwork as it is and only allows show / hide
KeywordsWords the search box finds it by

A custom symbol carries no pre-wired rows: add the bindings and actions you need after placing it. Every graphic that uses it keeps its own copy, so renaming or removing the symbol from the library never touches an existing graphic.

The Insert symbol dialog on the My symbols category with the Upload symbol panel open: the file preview, Name, Colours and Keywords, next to an already uploaded custom symbol.

Bindings

A binding changes one shape when one value changes. Open a symbol (or an element under Other elements), then the Bindings sub-tab. Each row has four parts:

Selector — which shape the binding drives. For a symbol's own rows it is filled in (#lamp_1 .body); for a hand-drawn shape it is the shape's id.

Source — where the value comes from:

SourceFields
DeviceA device and one of its objects — the light's switch state, the meter's power, the sensor's reading
FunctionA function of the Logic engine and one of its outputs (see “Function Setup & Outputs”)
StaticA fixed value you type — useful to test a rule or to force a state

What changes — what the value does to the shape:

KindEffectExtra fields
AttributeSets an SVG attribute (fill, stroke, opacity, width…)the attribute name
StyleSets a CSS propertythe property name
TextReplaces the shape's text with the valuedigits, unit and a template such as {value} {unit}
ClassAdds a class while the value is on, removes it otherwisethe class name — pair it with Extra CSS
VisibilityShows the shape when the value is on, hides it otherwise—
TransformRotates, moves or scales the shape by the valuethe operation
AnimationDrives an animation row (see Animations below): run while on, speed (dur) or direction by signthe animation and the mode
Symbol (href)Swaps the shape for another #symbol of the drawing—

Mapping — how the value becomes what the shape needs:

MappingWhat it doesExample
DirectThe value is used as isa temperature into a Text
On / offOne result when on, another when off#facc15 when on, #64748b when off, for a lamp's fill
RangeMaps a value range onto an output range; Clamp to the range stops it at the ends, Use the magnitude ignores the sign0–100 % into a cover moved by −28 to 0
ThresholdsSteps: up to a value gives a result, then the next, then otherwiseup to 15 red, up to 30 orange, otherwise green, for a tank
LookupA table of exact values, with otherwise for anything else1 → Open, 0 → Closed, for a status word

💡 Tip: The library's rows are the best examples: place a Status indicator and read its three bindings — the dot's fill (On / off), the halo's fill (On / off) and the state word (Lookup). Edit the two words in the Lookup to say "Open" and "Closed", or "Armed" and "Disarmed".

A binding row on a Status indicator: the selector, the device source, What changes set to Text and a Lookup mapping with Open and Closed.

Actions

An action runs a command when a shape is touched. Open a symbol's Actions sub-tab, or add one to a hand-drawn shape.

FieldChoices
SelectorThe shape that receives the gesture — usually the whole symbol
GestureTap, Double tap, Long press
DoesSet a device value (with the Value to send) · Toggle a device · Step a device value · Open the device's room · Open the device's detail (the page its tile opens; a device without one opens its room) · Run a scenario · Run an automation · Global command (lights or shutters, for the whole building, a room or a category) · Go to a view · Go to a room · Go to a category
Ask for confirmationA question shown before the action runs, such as Start the pump?. Leave it empty to run immediately

The same shape can carry several actions with different gestures: in the Pump station example, a pump toggles on a tap (after a confirmation) and opens its device on a long press.

📘 Note: Device commands, scenarios and automations run on the server, whatever app sent them. Open the device's room, Open the device's detail, Global command, Go to a view, Go to a room and Go to a category happen inside the app that was tapped, so the admin preview cannot run them.

📘 Note: Users only get the actions their account may use. A symbol bound to a device outside a user's rooms and categories is a plain drawing for that user; a global command on the whole building is reserved to administrators.

An action row on a Pump symbol: Gesture Tap, Does "Toggle a device" and the Ask for confirmation field filled in.

Animations

An animation row adds a continuous movement to a shape — a spinning rotor, dashes that run along a line, a blinking lamp — that bindings start, stop, speed up or reverse.

FieldMeaning
TargetThe shape that moves (#pump_1 .rotor)
AttributeWhat is animated: transform for a movement, or an attribute such as stroke-dashoffset or opacity
TransformFor transform: rotate, scale, translate, skewX, skewY — a rotation turns about the symbol's centre
From, ToThe start and end values
DurationOne cycle, such as 1s
RepeatA count, or indefinite
Beginindefinite when a binding starts it, load to run as soon as the graphic shows, or an SMIL list such as pump1.click; spin.end+1s
End, FillThe standard SMIL end condition and what remains when the animation stops

To make an animation follow the installation, add a binding whose What changes is Animation: run while on starts and stops it with a state, speed (dur) sets its cycle from a value (a Range mapping from watts to seconds), direction by sign runs it backwards for negative values — the Flow line uses all three.

The Animations sub-tab of a Pump symbol with its spin row: Target, Attribute transform, rotate from 0 to 360, 1s, indefinite.

Testing, settings, export

Test values. The tab lists one input per bound value so you can type a reading and watch the preview react. Switch on Live values to feed the preview with the installation's real values instead. Test actions (which needs Live values) makes clicks in the preview run their action on the server — toggling devices, running scenarios and automations — so you can try a graphic before residents see it. Actions that happen inside an app (opening a room, global commands, going to a view) are reported but not run.

The Test values tab with Live values switched on: the bound values show the installation's real readings and the preview moves with them.

Settings.

SettingMeaning
DescriptionA note shown in the list
ColoursFollow the app theme — symbols and labels take the app's text colour; Light drawing — dark strokes whatever the theme, for a white background image; Dark drawing — light strokes whatever the theme
FitHow the drawing fills its card: contain shows it whole, cover fills the card and crops
BackgroundA colour behind the drawing, or transparent
Min. height (px)The card is never shorter than this
Extra CSSA stylesheet applied to the drawing — classes for Class bindings, keyframes, transitions
Image assetsThe pictures the drawing may reference (PNG, JPEG, WebP). Upload image adds one; Use as background places it as the drawing's background and resizes the graphic to it. A picture the drawing still uses is marked in use and cannot be deleted; when you replace the background, the editor offers to delete the previous file
The Settings tab of the "Solar Production" graphic: Description, Colours, Fit, Background, Min. height, Extra CSS and the Image assets panel with the background picture marked in use.

Export and import. Export downloads a graphic as a bundle file: the drawing, its rows, settings and pictures in one file. Import bundle on the Graphics page creates a graphic from such a file. Device, function, scenario and view references are matched by name; a reference that matches nothing is dropped and the import says how many. This is how the two examples travel, and how a graphic moves from one installation to another.

Backups. Graphics and your custom symbols live in the server database, so they are part of the server backup (see “Backup & Restore”). The pictures a graphic references are stored as files and are not in the backup: export the graphic as a bundle to keep them with it.

Frequently Asked Questions

How can I start a graphic?

Choose an SVG file, a background image, a blank composition or a copy of a built-in example on the Graphics page.

Why is Save refused?

An incomplete binding or action, such as a missing device or unmatched selector, blocks saving. The editor opens the affected row with an explanation.

Do preview test actions operate real devices?

Yes. With Live values and Test actions enabled, device commands, scenarios and automations run on the server. App-only navigation and global commands are reported but not executed there.

Can I make rooms on a floor plan tappable?

Yes. Place and resize Hotspot symbols over them, then assign room-navigation actions. The hotspots are invisible to residents.

Are a graphic’s pictures included in a server backup?

No. Graphics and custom symbols are in the database backup, but referenced picture files are not. Export a graphic bundle to preserve the drawing and its pictures together.

How are references handled when importing a bundle?

Devices, functions, scenarios and views are matched by name. Unmatched references are dropped and counted in the import result.

Keep exploring

Find the other guides for this product in the documentation.

Back to Administration