Files
GhiVideo_v4/docs/history/2026-06-24_0926_교량-영상라벨-표출.md
b23042andClaude Fable 5 d38b842e8d GhiVideo 소스 복제 — v4 작업 시작 기준
기존 GhiVideo 저장소 HEAD의 트래킹 소스 362개 파일을 복제.
(node_modules·storage·빌드 산출물·대용량 미디어는 .gitignore 규칙대로 제외)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 14:32:51 +09:00

2.4 KiB

교량(신대천교(복)) 영상 오버레이 라벨 표출

날짜: 2026-06-24 수정 파일: client/src/components/overlay/StationOverlay.tsx

증상

영상에서 다리 위가 신대천교(복)인데 신대천교(복) 라벨이 영상에 표시되지 않음.

원인 (버그 아님 — 의도된 라우팅)

  • 신대천교(복)은 building/03)교량.csv 출신 카테고리 교량 구조물 (_POI.csv/지장물엔 없음 — 2026-06-22_POI투영오차-개선.md §13 참조).
  • §15에서 구조물 표출 위치를 분리: 교량(03)·터널(04)=하단 스테이션바, 구교(06)·지장물·_POI=영상.
  • StationOverlay의 영상 구조물 필터가 category === '구교'만 통과시켜 교량은 영상에서 제외됨.

조치 (사용자 결정: 영상은 라벨 모두 표출 / 시설등급 필터는 스테이션바 전용)

StationOverlay.tsx의 영상 구조물 필터를 모든 선로 구조물(교량/터널/구교) 허용으로 변경:

+ const OVERLAY_STRUCT_CATEGORIES = new Set(['구교', '교량', '터널']);
  ...
- s.category === '구교' && typeof s.lat === 'number' && typeof s.lon === 'number'
+ s.category != null && OVERLAY_STRUCT_CATEGORIES.has(s.category) &&
+   typeof s.lat === 'number' && typeof s.lon === 'number'
  • 교량/터널/구교 모두 기존 POI 파이프라인(평면 거리필터·title 보간·EMA·드래그/DEM 보정)으로 표출.
  • 역사(철도역, type='station')는 미포함 → 스테이션바 전용 유지.

시설등급(시설종별) 필터 — 영상 무관, 스테이션바 전용 (기존 구조 확인)

  • grade 필터는 isGradeVisible(s.grade, gradeFilter)StationBar.tsx·RoutePanel.tsx에만 적용. 영상 오버레이는 grade를 보지 않음 → 영상은 시설등급과 무관하게 항상 모두 표출(요구사항 그대로).
  • 따라서 코드 변경은 영상 필터(위)만으로 충분. 스테이션바 측은 미변경.

참고/한계

  • 영상 POI 거리필터 기본값(앞 60m/옆 40m)이 적용됨. 신대천교(복)이 멀리 있으면 카메라 파라미터 패널의 POI 앞쪽/옆쪽 슬라이더를 키워야 보일 수 있음.

검증

  • npm run build -w client (node20) tsc + vite build 통과.

소요 시간: 약 20분 Context 사용량: input ~95k / output ~6k tokens