Files
GhiVideo/docs/history/2026-06-24_2025_라벨폭1줄확대+팝업물결제거.md
T
b23042andClaude Opus 4.8 78fc090360 초기 커밋: 스테이션(측점) 기반 주행영상 플레이어
- 클라이언트(React/Vite): Video.js 플레이어, 하단 스테이션바, POI/구조물 영상 오버레이, 카메라 파라미터 보정, 미니맵/RoutePanel
- 서버(Express): Range 스트리밍, HLS 변환, 프레임 추출, tus 업로드, 주석 API
- 최근 작업: 스테이션바 종점역 표출/양끝 정렬/미도착(재생불가) 표시, POI 라벨 '구분' 우선·컴팩트 팝업·겹침제외 토글·동일좌표 다중행, 진행방향(상/하) 우선 표출, 커서 배지 크기·픽셀 떨림 개선

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 16:37:57 +09:00

1.3 KiB
Raw Blame History

스테이션바 라벨 폭 확대(짧은 명칭 1줄) + POI 팝업 1배속 물결 제거

날짜: 2026-06-24 수정 파일: client/src/stationbar/components/Timeline/Timeline.tsx, client/src/stationbar/components/Timeline/Timeline.module.scss, client/src/components/overlay/StationOverlay.tsx

A. 짧은 명칭은 한 줄로

증상: "법동가도교 (하)" 처럼 한 줄에 들어갈 명칭이 2줄로 줄바꿈됨(폭 92px 가 좁아서).

  • .structName width 92→140px (≈8자 1줄). 긴 명칭만 2줄로 래핑.
  • 겹침 방지: dedup(structures, 90→130) (라벨 폭에 맞춤).

B. POI 팝업 1배속 물결(떨림) 제거

증상: 1배속 재생 시 팝업(큰 텍스트 박스)이 물결침. 원인: 라벨의 잔떨림 + 매 프레임 소수픽셀 위치 갱신 → 텍스트 안티앨리어싱 셰이딩이 물결로 보임.

  • 팝업 위치에 별도 EMA(α=0.18, 무겁게) 적용(popupPosRef) + 정수 픽셀 반올림(Math.round). → 라벨을 따라가되 잔떨림은 흡수, 소수픽셀 셰이딩 제거. (팝업 제거 시 ref 정리)
  • 팝업은 정보 박스라 약간의 지연은 무방.

검증

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

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