기존 GhiVideo 저장소 HEAD의 트래킹 소스 362개 파일을 복제. (node_modules·storage·빌드 산출물·대용량 미디어는 .gitignore 규칙대로 제외) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
27 lines
1.5 KiB
Markdown
27 lines
1.5 KiB
Markdown
# 역(스테이션) 마커 — 직교 투영 측점 일치 시에만 표시
|
|
|
|
**소요 시간**: 약 15분
|
|
**Context 사용량**: input ~180k / output ~4k tokens
|
|
|
|
## 문제
|
|
스테이션바에서 드론이 대전조차장(역 측점 162k080) '좌표에만' 가까우면, 실제 드론 측점이
|
|
162k290(210m 밖)이어도 대전조차장역 마커가 찍혔다. → 직교 위치가 안 맞는데 역 표시됨.
|
|
|
|
## 원인
|
|
[StationBar.tsx](../../client/src/stationbar/StationBar.tsx) 구조물 마크 생성:
|
|
- 역사 '보강 탐지'가 `pxPassesTo`(좌표 근접) 통과를 합집합으로 추가 → 측점 불일치 통과까지 마커.
|
|
- `kmExists`(=드론 측점 p.km 와 역 측점 stationKmVal 차이 ≤ tol)가 false여도 마커(동그라미)는 유지했음.
|
|
|
|
## 수정
|
|
1. 역사 좌표근접 '보강 탐지' 블록 제거 (측점 불일치 재진입을 억지로 추가하던 부분).
|
|
2. 마커 push 시 `if (!kmExists) continue;` 게이트 추가(주 경로 + 폴백 경로 both).
|
|
→ 역은 **드론의 직교 투영 측점이 역 측점과 stationTolerance(기본 20m) 이내일 때만** 표시.
|
|
→ 교량/터널은 stationKmVal=null → kmExists 항상 true → 영향 없음.
|
|
|
|
## 효과
|
|
- 대전조차장에서 드론이 162k290일 때 162k080 역 마커가 더 이상 안 뜸.
|
|
- 측점 일치 통과(pxPassesAtMileage)는 그대로 유지 → 정상 통과·재진입은 계속 표시.
|
|
|
|
## 검증
|
|
- `tsc --noEmit` 통과, `npm run build` 성공 → 새 해시 `index-CJflcoyT.js` :55000 서빙 확인.
|