feat: 지도 나침반(OSM/위성) 추가 + 측점 검색·마커 정확도 개선 + POI/영상 수정

- 지도 기반 나침반(노스업, 현재위치, 시야 역삼각형): 호버 확대·휠 줌·클릭 위성전환, OSM/Esri 타일 서버 프록시(/api/tile)
- 스테이션 검색: 실제 측점(chain) 기준 이동, 없으면 '측점 없음' 안내
- 역 마커: 직교 투영 측점 일치 시에만 표시, 미도착 종점은 추가 방식
- POI 팝업 겹침/재등장·라벨 정합 수정
- 영상 fps 데이터 기반 자동 산출
- 기술/발표/쉬운설명 문서 추가

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-02 18:03:30 +09:00
co-authored by Claude Opus 4.8
parent e9052143d7
commit e0ff5dd6d0
58 changed files with 9635 additions and 378 deletions
+10
View File
@@ -34,6 +34,12 @@ interface SettingsStore {
/** 드론 궤적 영상 오버레이 표시 여부. 기본 표시. (VideoPlayer 바 토글로 제어) */
showDronePath: boolean;
setShowDronePath: (v: boolean) => void;
/** 우측 상단 나침반 타입. 'analog'=눈금 나침반, 'map'=지도(노스업, 현재위치). 기본 map. */
compassType: 'analog' | 'map';
setCompassType: (v: 'analog' | 'map') => void;
/** 지도 나침반 배경. 'street'=OSM 일반, 'sat'=위성(Esri). 기본 street. */
compassMapStyle: 'street' | 'sat';
setCompassMapStyle: (v: 'street' | 'sat') => void;
}
const DEFAULT_GRADE_FILTER: Record<string, boolean> = {
@@ -59,6 +65,10 @@ export const useSettingsStore = create<SettingsStore>()(
setShowCenterline: (v) => set({ showCenterline: v }),
showDronePath: true,
setShowDronePath: (v) => set({ showDronePath: v }),
compassType: 'map',
setCompassType: (v) => set({ compassType: v }),
compassMapStyle: 'street',
setCompassMapStyle: (v) => set({ compassMapStyle: v }),
}),
{
name: 'ghivideo.settings',