diff --git a/steps/index.html b/steps/index.html index 88edef1..72f30db 100644 --- a/steps/index.html +++ b/steps/index.html @@ -81,10 +81,14 @@
@@ -207,7 +215,7 @@ - +
@@ -240,7 +248,8 @@
-

Load JSON & Video to see speed graph +

Load JSON & Video to see speed + graph

diff --git a/steps/src/dom.js b/steps/src/dom.js index 1bfa763..376cd75 100644 --- a/steps/src/dom.js +++ b/steps/src/dom.js @@ -5,6 +5,7 @@ import { VIDEO_FPS } from "./constants.js"; // --- DOM Element References --- // +export const themeToggleBtn = document.getElementById("theme-toggle"); export const canvasContainer = document.getElementById("canvas-container"); export const canvasPlaceholder = document.getElementById("canvas-placeholder"); export const videoPlayer = document.getElementById("video-player"); @@ -24,39 +25,25 @@ export const speedSlider = document.getElementById("speed-slider"); export const speedDisplay = document.getElementById("speed-display"); export const featureToggles = document.getElementById("feature-toggles"); export const toggleSnrColor = document.getElementById("toggle-snr-color"); -export const toggleClusterColor = document.getElementById( - "toggle-cluster-color" -); +export const toggleClusterColor = document.getElementById("toggle-cluster-color"); export const toggleInlierColor = document.getElementById("toggle-inlier-color"); -export const toggleStationaryColor = document.getElementById( - "toggle-stationary-color" -); +export const toggleStationaryColor = document.getElementById("toggle-stationary-color"); export const toggleVelocity = document.getElementById("toggle-velocity"); export const toggleTracks = document.getElementById("toggle-tracks"); export const toggleEgoSpeed = document.getElementById("toggle-ego-speed"); export const toggleFrameNorm = document.getElementById("toggle-frame-norm"); -export const toggleDebugOverlay = document.getElementById( - "toggle-debug-overlay" -); +export const toggleDebugOverlay = document.getElementById("toggle-debug-overlay"); export const egoSpeedDisplay = document.getElementById("ego-speed-display"); export const canSpeedDisplay = document.getElementById("can-speed-display"); export const debugOverlay = document.getElementById("debug-overlay"); -export const toggleDebug2Overlay = document.getElementById( - "toggle-debug2-overlay" -); +export const toggleDebug2Overlay = document.getElementById("toggle-debug2-overlay"); export const snrMinInput = document.getElementById("snr-min-input"); export const snrMaxInput = document.getElementById("snr-max-input"); export const applySnrBtn = document.getElementById("apply-snr-btn"); -export const autoOffsetIndicator = document.getElementById( - "auto-offset-indicator" -); +export const autoOffsetIndicator = document.getElementById("auto-offset-indicator"); export const clearCacheBtn = document.getElementById("clear-cache-btn"); -export const speedGraphContainer = document.getElementById( - "speed-graph-container" -); -export const speedGraphPlaceholder = document.getElementById( - "speed-graph-placeholder" -); +export const speedGraphContainer = document.getElementById("speed-graph-container"); +export const speedGraphPlaceholder = document.getElementById("speed-graph-placeholder"); export const modalContainer = document.getElementById("modal-container"); export const modalOverlay = document.getElementById("modal-overlay"); export const modalContent = document.getElementById("modal-content"); @@ -64,13 +51,9 @@ export const modalText = document.getElementById("modal-text"); export const modalOkBtn = document.getElementById("modal-ok-btn"); export const modalCancelBtn = document.getElementById("modal-cancel-btn"); export const toggleCloseUp = document.getElementById("toggle-close-up"); -export const togglePredictedPos = document.getElementById( - "toggle-predicted-pos" -); +export const togglePredictedPos = document.getElementById("toggle-predicted-pos"); export const toggleCovariance = document.getElementById("toggle-covariance"); -export const modalProgressContainer = document.getElementById( - "modal-progress-container" -); +export const modalProgressContainer = document.getElementById("modal-progress-container"); export const modalProgressBar = document.getElementById("modal-progress-bar"); export const modalProgressText = document.getElementById("modal-progress-text"); export const timelineTooltip = document.getElementById("timeline-tooltip"); @@ -98,7 +81,6 @@ export const fullscreenEnterIcon = document.getElementById("fullscreen-enter-ico export const fullscreenExitIcon = document.getElementById("fullscreen-exit-icon"); export const menuScrim = document.getElementById("menu-scrim"); - //----------------------UPDATE FRAME Function----------------------// // Updates the UI to reflect the current radar frame and synchronizes video playback. export function updateFrame(frame, forceVideoSeek) { @@ -292,7 +274,7 @@ export function updatePersistentOverlays(currentMediaTime) { // If we don't have the necessary data, hide the overlays and exit. const isDebug1Visible = toggleDebugOverlay.checked; const isDebug2Visible = toggleDebug2Overlay.checked; - + if (!appState.vizData || !appState.videoStartDate) { radarInfoOverlay.classList.add("hidden"); videoInfoOverlay.classList.add("hidden"); @@ -303,6 +285,10 @@ export function updatePersistentOverlays(currentMediaTime) { videoInfoOverlay.classList.add("hidden"); return; } + if(isDebug1Visible || isDebug2Visible){ + videoInfoOverlay.classList.add("hidden"); + return; + } // Otherwise, make sure they are visible. radarInfoOverlay.classList.remove("hidden"); videoInfoOverlay.classList.remove("hidden"); @@ -310,7 +296,9 @@ export function updatePersistentOverlays(currentMediaTime) { // --- Update Radar Overlay --- const currentRadarFrame = appState.vizData.radarFrames[appState.currentFrame]; if (currentRadarFrame) { - const absRadarTime = new Date(appState.videoStartDate.getTime() + currentRadarFrame.timestampMs); + const absRadarTime = new Date( + appState.videoStartDate.getTime() + currentRadarFrame.timestampMs + ); const targetRadarTimeMs = currentRadarFrame.timestampMs; const offsetMs = parseFloat(offsetInput.value) || 0; const driftMs = currentMediaTime * 1000 + offsetMs - targetRadarTimeMs; @@ -321,7 +309,9 @@ export function updatePersistentOverlays(currentMediaTime) { Frame: ${appState.currentFrame + 1} | Abs Time: ${formatUTCTime(absRadarTime)} | Color Mode: ${colorMode} - | Drift: ${driftMs.toFixed(0)}ms + | Drift: ${driftMs.toFixed( + 0 + )}ms `; } diff --git a/steps/src/theme.js b/steps/src/theme.js index a84c80a..464c9e9 100644 --- a/steps/src/theme.js +++ b/steps/src/theme.js @@ -1,6 +1,5 @@ import { appState } from "./state.js"; -import { videoPlayer } from "./dom.js"; -const themeToggleBtn = document.getElementById("theme-toggle"); +import { videoPlayer, themeToggleBtn} from "./dom.js"; const darkIcon = document.getElementById("theme-toggle-dark-icon"); const lightIcon = document.getElementById("theme-toggle-light-icon");