# 화면표시 옵션 — "기본값" 버튼 + 설명문구 툴팁화 **날짜**: 2026-06-24 **수정 파일**: `client/src/components/overlay/StationOverlay.tsx` ## 요구 1. 화면표시 옵션 창 우측 하단에 **"기본값"** 버튼 → 누르면 옵션 일괄 복귀. 2. 컨트롤 사이의 **설명문구**가 세로 공간을 차지 → **마우스 오버 툴팁**으로 바꿔 패널 높이 축소. ## 구현 ### 1. 기본값(DISPLAY_DEFAULTS) + 버튼 - 사용자 확정 기본값(스크린샷 기준)을 모듈 상수로 정의, **useState 초기값과 단일 출처 공유**: ```ts const DISPLAY_DEFAULTS = { showCenterline: true, showDronePath: true, dronePathZ: 58, dronePathAlpha: 0.75, smoothHalf: 60, emaAlpha: 1.0, maxPoiFront: 310, maxPoiSide: 135, poiDroneHeight: true, droneHeightDrop: 24, }; ``` (이전 코드 기본값 dronePathZ 78 / maxPoiFront 240 / maxPoiSide 80 → 스크린샷 값으로 갱신.) - `resetDisplayDefaults()` 콜백이 위 10개 상태를 일괄 set. POI 보정/편집모드는 제외(별도 "보정 초기화" 유지). - 패널 최하단에 카메라 패널의 "초기화"와 동일한 스타일의 **"기본값"** 버튼(우측 정렬) 추가. - 참고: localStorage 영속화 대상(maxPoiFront/Side·smoothHalf·emaAlpha·params)은 버튼 클릭 후 디바운스 저장으로 기본값이 유지됨. 나머지(dronePathZ 등)는 원래 세션 한정. ### 2. 설명문구 → 툴팁 - `ParamRow`에 `tip?: string` 추가: 있으면 라벨에 **점선 밑줄 + 마우스오버 네이티브 툴팁**(`title`). - 별도 `InfoTip` 컴포넌트(작은 `ⓘ`, `title` 툴팁) 추가 → 섹션 헤더용. - 기존 `text-gray-600` 설명 div 6개 제거하고 해당 컨트롤/헤더의 tip으로 이전: | 기존 설명 div | 이전 위치 | |---|---| | GPS 측정점 표고/α | 경로표고·투명도 ParamRow tip | | ±fr=±ms | smooth ParamRow tip | | α→lag ms | EMA α ParamRow tip | | 진행방향 앞/옆 이내 표시 | POI 앞쪽·옆쪽 ParamRow tip | | POI 드론 아래 배치 | 이격거리 ParamRow tip | | 편집/DEM 안내 | "POI 위치 편집" 헤더 InfoTip | - 편집모드 안내문(긴 1줄)도 헤더 툴팁으로 이전, 상태줄은 `보정된 POI N개`/`드래그 중`만 표시. - 동적 수치(ms·lag·현재값)는 툴팁 문자열에 그대로 보간 → 정보 손실 없음. ## 검증 - `npm run build -w client` (node20) tsc + vite build 통과. **소요 시간**: 약 25분 **Context 사용량**: input ~140k / output ~9k tokens