diff --git a/webui/src/components/DockAssistHUD.jsx b/webui/src/components/DockAssistHUD.jsx deleted file mode 100644 index 355d4b17..00000000 --- a/webui/src/components/DockAssistHUD.jsx +++ /dev/null @@ -1,114 +0,0 @@ -import { useMemo } from 'react'; -import { useDockIr } from '../hooks/useDockIr.js'; - -const SVG_W = 120; -const SVG_H = 96; -const CX = SVG_W / 2; -const DOCK_Y = 14; -const ROVER_Y = 74; - -function alignmentBarPath() { - return `M ${CX - 3} ${DOCK_Y + 4} L ${CX - 10} ${ROVER_Y - 6} L ${CX + 10} ${ROVER_Y - 6} Z`; -} - -export default function DockAssistHUD({ sensors }) { - const state = useDockIr(sensors); - const palette = useMemo( - () => ({ - green: ['rgba(16,185,129,0.6)', 'rgba(16,185,129,0.45)', 'rgba(16,185,129,0)'], - red: ['rgba(239,68,68,0.6)', 'rgba(239,68,68,0.45)', 'rgba(239,68,68,0)'], - forceOutline: 'rgba(191,219,254,0.85)', - roverBody: '#0f172a', - roverFill: '#e5e7eb', - }), - [], - ); - - if (!state.visible) return null; - - const nudge = state.balance * 5; - const leftHit = state.left.active; - const rightHit = state.right.active; - const forceHit = state.omni.force || state.forceDetected; - const allAligned = Boolean(state.left.green && state.right.red && state.omni.force); - const hasAny = leftHit || rightHit || forceHit; - - return ( -
- - - - - - - - - {/* Alignment wedge */} - {hasAny ? ( - - ) : null} - - {/* Dock icon: simple rounded square with symmetric top corners */} - - {/* Force field emitter dot */} - - {/* Contacts */} - - - - {/* Force field halo on top */} - - - {/* Rover cue */} - - - - - - {/* Nudge arrow */} - {state.bias !== 'center' && ( - - )} - - {/* Thumbs up when fully aligned */} - {allAligned ? 👍 : null} - -
- ); -} diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index 44698940..f4066bec 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -1,7 +1,6 @@ import { useCallback, useEffect, useRef, useState } from 'react'; import { WhepPlayer } from '../lib/whepPlayer.js'; import TopDownMap from './TopDownMap.jsx'; -import DockAssistHUD from './DockAssistHUD.jsx'; import { useHudMapSetting } from '../hooks/useHudMapSetting.js'; const RESTART_DELAY_MS = 2000; @@ -529,12 +528,6 @@ function HudOverlay({ ) : null} -
- -
-
- -
Rover: "{label || 'Unnamed Rover'}" {/* {pulse ? 'Sensors active' : 'No recent sensors'} */}