- 지도 기반 나침반(노스업, 현재위치, 시야 역삼각형): 호버 확대·휠 줌·클릭 위성전환, OSM/Esri 타일 서버 프록시(/api/tile) - 스테이션 검색: 실제 측점(chain) 기준 이동, 없으면 '측점 없음' 안내 - 역 마커: 직교 투영 측점 일치 시에만 표시, 미도착 종점은 추가 방식 - POI 팝업 겹침/재등장·라벨 정합 수정 - 영상 fps 데이터 기반 자동 산출 - 기술/발표/쉬운설명 문서 추가 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.4 KiB
1.4 KiB
역 마커 — 실제 측점 일치 기준으로 정정 (162080 누락 수정)
소요 시간: 약 15분 Context 사용량: input ~230k / output ~4k tokens
문제
직전 수정(kmExists 게이트)이 너무 세서, 진짜 162080 위치의 대전조차장 마커까지 사라짐.
원인
kmExists 게이트가 |p.km − stationKmVal| 비교인데:
- 탐지는
s.station(등록 측점 162080) → p.km = 162080 - stationKmVal =
projectChainage(역 좌표)(좌표 투영) — 등록값과 어긋날 수 있음 → 둘이 다르면 게이트가 실제 162080 통과까지 제거.
수정 (StationBar.tsx)
게이트 방식 폐기, 탐지 소스로 구분:
- 역사(역)는 좌표근접(pxPassesTo) 폴백을 배제 →
pxPassesAtMileage(실제 측점 일치)로만 탐지.if (!passes.length && cat !== '역사' && ...) pxPassesTo(...)(교량/터널만 허용)
if (!kmExists) continue게이트 제거(주 경로 + 폴백 경로). kmExists 는 라벨/검색 참고용으로만 유지.
효과
- ① 좌표만 가까운(측점 다른) 조차장 재진입(드론 162210인데 162080)은 안 찍힘.
- ② 진짜 162080 통과에는 정상 표시.
- 검색은 이미 chain 기준(별도 수정)이라 마커 변경과 무관하게 정확.
검증
tsc --noEmit통과,npm run build성공 → 해시index-Cdsf6M1x.js(HUD· 검색v3) :55000 서빙.