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

25 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 스테이션바 라벨 폭 확대(짧은 명칭 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