Files
GhiVideo_v4/docs/history/2026-07-13_1506_KML-DEM표고-일괄기록.md
T
b23042andClaude Fable 5 7d51ba9945 표고 체계 정비·설정 파일 단순화·선형 클리핑·시연 준비
- 타원체고 기준 자동 변환: route.json ellipsoidal_height 선언 시 드론 고도(CSV 정표고)를
  영상 메타(djmd 6.6 타원체고)와의 차(지오이드고 자동 산출)만큼 보정, 세그먼트 전환에도 유지
- KML 표고 파이프라인: 좌표 고도(z) 사용(POI/측점), *_byDem.kml 자동 생성(DEM 조회·높이 속성 포함)
  + 로더의 _byDem 우선 규칙, 선형중심선(LineString) 로딩·경로표고 앵커
- 설정 파일: camera.json/display.json/route.json 단순 이름 인식, 화면표시 옵션 PC 저장/자동 적용,
  초기화 버튼을 환경설정 파일 기준 복원으로 변경, 저장 파일명 단순화
- 선형 표시: 표출된 마지막 측점까지 클립(경계 세그먼트 절단 + 관통 현 처리 — 구간 실종 수정)
- 스테이션바: 시점(0k000) 마크(실통과 위치), 노선밖 프레임 통과 오인 방지, 커서 배지 1m 단위,
  배너 연장/소요 실측값(측점 체이니지·영상 길이 합) 우선
- 세그먼트 전환 라벨 깜빡임 구조 수정(캐시 초기화·최근접 키 조회·이중 재계산 제거) +
  사전계산 프레임 불변값 호이스팅(재생 지연 해소)
- UI: 슬라이더/값 입력칸 휠 조절, 패널 버튼 위치 정렬, 저장 버튼 중복 제거, dev_mode(route.json)로
  영상제어 UI 표시 제어, 지오이드 최대 200, 이격거리 측점 동반 적용
- 시연: start-demo.bat + docs/DEMO.md
- docs/history: 작업 이력 30건

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 20:37:46 +09:00

37 lines
1.9 KiB
Markdown

# 2026-07-13 KML 표고 DEM 일괄 기록 + 파서 z 사용
**소요 시간**: 12분
**Context 사용량**: input 1940k / output 6k tokens
## 요청
높이값 없는 KML(지장물/측점)에 DEM 연동으로 표고를 채워 파일 업데이트.
## 수행 1 — 데이터 일괄 업데이트 (스크립트, SRTM 30m)
- open-topodata SRTM 30m(서버 /api/elevation 과 동일 소스) 배치 조회(100좌표/청크, 1.2s 간격)
- **경로 1-1 / 1-2 / 1-3 / 2 의 지장물.kml·측점.kml 8개 파일** 모든 <coordinates> 고도 성분 기록
- 고유 좌표 237개 조회 → 지장물 33/33, 측점·선형 217/217 기록
- 표고 범위: 도로(측점/선형) 53~89m, 지장물 52~118m — 기존 경로표고 추정(58m)과 부합
- 원본은 `<파일>.kml.bak` 백업 (로더는 *.kml 만 읽어 무영향)
- ※ 현재 4개 폴더 KML 내용이 동일(경로 1-1 복제본) — 경로별 실데이터로 교체돼도
좌표 고도가 0이면 스크립트 재실행으로 다시 채울 수 있음(스크래치패드 dem-update-kml.mjs)
## 수행 2 — 파서가 좌표 고도(z) 사용 (geoData.ts)
- handlePlacemark: coordinates 3번째 성분(>0)을 coordAlt 로 캡처
- 지장물 POI z ← coordAlt (지형 기복 따라 정확 배치), STA 측점 z ← coordAlt
- 선형(LineString)은 기존부터 z 사용 → DEM 표고로 지형 따라 그려짐
- 측점 로드 로그에 DEM 표고 보유 수 표기
## 효과
- 지면고도 모드(기본)에서 측점·선형·POI 가 실제 지면 표고 사용 — 경로표고 슬라이더
수동 보정 불필요(궤적 점 표시만 슬라이더 사용). 시차 정합 향상
- 파일명 변경(지장물.kml/측점.kml)과 무관하게 동작 (로더는 전체 *.kml 병합)
## 검증
- 업데이트 파일 재파싱 검증(33/33, 217/217, 범위 정상), tsc+vite 빌드 통과,
새 번들(index-DJYuQ_W_.js) 서빙