import { openScene } from "../../js/scene.js"; import { config } from "../../config.js"; import AppState from "../../js/state.js"; import { normalizeNodes } from "../../js/utils/nodeUtils.js"; import { initStimulus } from "../../js/utils/stimulus.js"; initStimulus(); AppState.currentScene = 'ssgp'; const marker = config.markers.find(m => m.id === 'ssgp'); const {flat, tree} = normalizeNodes(marker.nodes); AppState.normalizedNodes = flat; AppState.treeNodes = tree; // TODO: add Map object for lookup optimization openScene(marker, AppState.normalizedNodes); // General hover/leave events handling for all semantic nodes. ATON.on("SemanticNodeHover", (semid) => { let node = ATON.getSemanticNode(semid); console.debug('Sem node:', semid); if (node) node.highlight(); }); ATON.on("SemanticNodeLeave", (semid) => { let node = ATON.getSemanticNode(semid); if (node) node.restoreDefaultMaterial(); });