simvx.editor.gizmo_controller¶
Editor gizmo controller — wires mouse input to the Gizmo math layer.
Translates mouse hover / click / drag events into gizmo interactions and applies the resulting deltas to the selected node’s transform. Supports undo/redo via the UndoStack.
Usage (inside an editor panel’s process loop):
controller = GizmoController(state.gizmo, state.selection, state.undo_stack)
controller.update(dt) # call each frame
render_data = controller.get_render_data() # pass to GizmoPass
Module Contents¶
Classes¶
Connects mouse input to the core Gizmo and applies results to nodes. |
Data¶
API¶
- simvx.editor.gizmo_controller.__all__¶
[‘GizmoController’]
- simvx.editor.gizmo_controller.log¶
‘getLogger(…)’
- class simvx.editor.gizmo_controller.GizmoController(gizmo: simvx.core.Gizmo, selection: simvx.core.Selection, undo_stack: simvx.core.UndoStack)¶
Connects mouse input to the core Gizmo and applies results to nodes.
Parameters
gizmo: The core
Gizmoinstance that performs the picking/dragging math. selection: Editor selection — the primary selected node is the gizmo target. undo_stack: Editor undo stack for recording transform changes.Initialization
- update(dt: float) None¶
Process mouse input and update gizmo state. Call once per frame.
- set_mode(mode: simvx.core.GizmoMode) None¶
Change the gizmo interaction mode (translate / rotate / scale).
- get_render_data() Any¶
Build a GizmoRenderData for the current frame.