Skip to content

Rotation

Purpose

Owns preview rotation state and preview-facing rotation coordination.

This territory is responsible for managing rotation settings, pivot/orbit behaviour, and rotation interaction state used by the live preview environment.

Owns

  • Preview rotation state
  • Rotation speed settings
  • Rotation mode coordination
  • Pivot/orbit behaviour
  • Rotation activity state
  • Rotation-facing facades

Does NOT Own

  • Camera rendering
  • Input event handling
  • Scene lifecycle management
  • Export workflows
  • Rendering implementation
  • Panel UI

Allowed Dependencies

Rotation may depend on:

  • Rotation abstractions/contracts
  • Lightweight preview-facing systems

Rotation should avoid: - rendering implementation dependencies - export workflow dependencies - panel/UI orchestration logic

Notes

This folder exists to isolate rotation state and rotation behaviour from preview input handling and rendering systems.

Input systems decide: - when interaction occurs

Rotation systems decide: - how rotation state behaves - what rotation settings are active - how pivot/orbit behaviour is interpreted

The goal is predictable and reusable preview rotation behaviour without coupling rotation logic directly to UI or rendering systems.

Facade classes are acceptable here when they simplify access to rotation-facing behaviour without leaking controller implementation details.

Future Candidates

  • Continue keeping rotation state isolated from input event processing.
  • Avoid allowing rendering concerns to drift into rotation systems.
  • Maintain lightweight and predictable rotation ownership boundaries.