Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...

    Owns scene-graph state, expansion state, and the memoized path index.

    Index
    visibleCountsByPath: ReadonlyMap<string, number> = ...

    Per-path visible counts pushed by the SceneLoader's visible-counts walk.

    sceneGraphState: SceneGraphState = ...
    mutableExpandedNodes: Set<string> = ...

    Track expanded nodes in the scene graph tree by path.

    sceneGraphNodeIndex: Map<string, SceneGraphNode> = ...
    sceneGraphNodeIndexRoot: SceneGraphNode | null = null
    markStructureDirty: () => void
    • Merge the latest path counts into geometry nodes in place. Paths absent from the latest walk are reset to undefined, preventing stale tooltips.

      All four types, mesh included: the walk in monitor/visible-counts.ts already stamps a mesh node's committed visibleTriangleCount into the per-path map, so skipping mesh here dropped a number that had already been measured — and left the tree's mesh badge unable to say how much of the surface the current slab actually indexes.

      A never-tailed switch rather than an if/else chain, matching elementCountOf above: the stamp fields are named after each type's own element noun so they cannot be keyed by type name, but the DISPATCH can be compile-checked. An unhandled type would silently leave its badge with no visible count — verbatim how mesh went missing here in the first place.

      Returns void