OptionalcontainerDOM element to mount into. Defaults to document.body.
OptionalfocusSceneModel to focus on first open. Optional — when omitted,
the first SceneModel in the Scene is selected. Passing only
this (with no scene) is equivalent to passing
{scene: sceneModel.scene, focusSceneModel: sceneModel}.
OptionalinitialInitial right offset, in CSS pixels. When supplied, this anchors the panel from the viewport's right edge and overrides any persisted left position for the first open.
OptionalinitialInitial top offset, in CSS pixels. When supplied, this overrides any persisted panel position for the first open.
OptionalinspectInitial inspection-config overrides. Each schema-keyed field
(checkX, threshold values, etc.) is folded into the
DEFAULT_INSPECTION_REGISTRY's config map at
construction time — same store the per-row toggles and
threshold inputs write through to.
Application order (last write wins on overlapping keys):
Note that this writes into the global registry — overrides leak across any other consumer of the same registry until the user resets them. For per-call-only overrides, pass them directly to inspectSceneModel instead of through this panel.
OptionalsceneThe Scene to surface. If omitted, derived from
focusSceneModel's .scene — at least one of the two
must be present.
OptionalstoragelocalStorage key for persisting drag position + closed state.
Defaults to "xkt-sh-panel". Provide a unique key per
SceneModel if you want per-model layout memory.
OptionalstudioStudio instance. Used by Locate to read the SDK's spatial AABB index and to drive the View's CameraFlight. Optional — the panel works without it but Locate falls back to no-op camera framing.
OptionalviewView to highlight / xray / frame-camera against when the user clicks Locate on an issue group. Optional — without a View, Locate buttons are still rendered but won't drive the viewer.
OptionalvisibleShow the panel on construction (default true).
Constructor parameters for SceneHealthPanel.
The panel is now Scene-scoped — it lists every loaded
SceneModelin a tab strip and inspects the one the user has focused. Either provide a scene explicitly or pass a focusSceneModel (its.scenewill be used).