Skip to main content

Viewport Tools

The viewport toolbar is a floating bar centered at the bottom of the 3D viewport. It contains the primary interaction tools for manipulating objects in the scene.

Toolbar location and appearance

The toolbar floats horizontally above the status bar, centered along the bottom edge of the viewport. It has a translucent background with a subtle border and backdrop blur.

Available tools

Select

The Select tool is always visible in both Setup and Results mode. When active, clicking an object in the viewport selects it, and hovering over objects shows a tooltip with the object name and context.

  • Keyboard shortcut: Escape deselects all objects.
  • The select tool is the default when a scene first loads.

Move

The Move tool activates a translate gizmo on the selected object. Three axis arrows (one per axis) and a center sphere appear on the object.

  • Drag an individual axis arrow to constrain movement to that axis.
  • Drag the center sphere to move freely on the camera-facing plane.
  • Positions snap to 0.1 mm increments by default, with whole-number positions being slightly "sticky" to make round values easier to land on.
  • Each axis displays an editable label showing the current position value. Click a label to type an exact coordinate.

Rotate

The Rotate tool activates a rotation gizmo with three torus rings, one for each axis.

  • Drag a ring to rotate around that axis.
  • Rotation snaps to 5-degree increments.
  • Each axis displays a label showing the cumulative rotation in degrees. Click a label to type an exact rotation delta.

Scale (Resize)

The Scale tool activates a bounding-box resize gizmo. It is only available for parametric shapes that have width and height parameters (Rectangle, Box).

  • Corner handles (spheres at each corner) perform uniform proportional resize across all dimensions simultaneously.
  • Edge midpoint handles (smaller spheres at edge centers) resize along a single axis -- width or height.
  • Resulting dimensions snap to 0.1 mm increments.
  • The minimum dimension when dragging is 1 mm. When typing a value directly, the minimum is 0.1 mm.
  • Width and height labels are shown next to the bounding box edges. Click a label to type an exact dimension.

Scale mode adjusts the object's dimension parameters (width, height, depth) directly rather than applying a non-uniform scale. This keeps the object parametric.

Mode visibility

The toolbar adapts to the active viewport tab:

TabVisible tools
SetupSelect, Move, Rotate, Scale
ResultsSelect only

When switching from Setup to Results, the Move, Rotate, and Scale buttons animate out (collapse to zero width). Switching back animates them in.

2D vs 3D scenes

Axis visibility adapts automatically based on whether the scene is tagged as 2D:

Mode2D scene3D scene
MoveX, Y onlyX, Y, Z
RotateZ only (in-plane rotation)X, Y, Z
ScaleX, Y onlyX, Y, Z

In 2D scenes, axes that would move or rotate objects out of the working plane are hidden to prevent accidental 3D manipulation.

Canceling a drag

Press Escape during any gizmo drag to cancel the operation. The object snaps back to its position, rotation, or scale from before the drag started.

Hover tooltip

When hovering over objects in the viewport with any tool active, a tooltip appears near the cursor showing:

  • The object name (or "Unnamed" if no name is set).
  • A context label in parentheses that varies by object type:
    • Parts: the associated preserve type (Input, Output, Fixed, Flexure IO, Output Surface).
    • Preserves: the preserve subtype (Input Preserve, Output Preserve, Fixed Preserve, Flexure IO).
    • Obstacles: "Obstacle".
    • Paths: "Linear Path" or "Rotational Path".
    • Solver results: "Solver Result".

The tooltip only appears for hovers originating from the viewport (not from the scene tree, which already shows names).

Right-click context menu

Right-clicking an object in the viewport opens a context menu with:

ActionShortcutDescription
Hide / ShowHToggle visibility of the clicked object.
View Properties--Select the object and open its properties.
Delete--Delete the object (only available in editable scenes).