Skip to main content
Category: Display · Reads data: live model state · Sends commands: no

Mental model

A 3D Virtual Twin is a live digital twin. A full 3D scene of one or more models, with lighting and environment — and you can move, rotate, recolor, and animate the models in real time from a device.

When to use it

  • A digital twin that mirrors a physical device’s state
  • A rich multi-model 3D scene

Settings

Style / Scene

  • Environment preset · background color
  • Ambient / directional intensity · shadows
  • Field of view · axes size
  • Animation index / speed
  • Enable controls / damping / antialiasing
On first drop, the scene shows a sample cube so it’s interactive immediately — replaced once you add models.

Example — drive models live from firmware

std::vector<ThreeDModelUpdate> models = { /* id, position, rotation, scale, color… */ };
device.update3DWidget(targetId, "twin", models);

Script API example

The same interactions from a dashboard script:
// Update one model in the scene (same shape the device pushes)
widget.setValue('twin', { modelId: 'arm', updates: { rotation: [0, 45, 0] } });

3D Viewer

A single-model viewer.