Files
GhiVideo_v4/docs/history/2026-07-14_1321_선형-측점정점-삽입.md
T
b23042andClaude Fable 5 c64c57b58e djmd 프레임 동기·오버레이 지면고정·선형-측점 정합·UI 단축키
- djmd(영상 내장 텔레메트리) 프레임 동기 위치/고도: MP4 stbl 선별 파싱(djmdTrack.ts),
  CSV 시각정렬 오차(평균 3.2m) 제거 — 세그먼트별 백그라운드 정밀화(frameSynced 플래그)
- 자세 시간축 재정렬: djmd 위치 교차상관으로 CSV↔영상 오프셋 자동 추정(실측 -0.33s,
  잔차 0.24m) 후 yaw/pitch/roll 재샘플(yaw 최단각) — 옆 지물 미끄러짐 해소
- 포즈 평활 자동 제한: 프레임 동기 데이터는 ±5프레임 상한(기존 ±60=±1s) —
  회전 시 오버레이 전체가 드론에 딸려오는 지연 제거
- 선형-측점 정합: 측점 위치를 선형 정점으로 삽입(3D 이격≤0.012m) + 정점 z 를 측점
  체이니지 보간으로 재정렬, 측점 라벨 화면 EMA 제거(선과 동일한 즉시 투영) —
  선형이 측점 POI 를 픽셀 단위로 통과
- 드론높이 모드 높이 규칙 통일: 선형도 '드론고도-이격거리' 평면 적용(라벨과 동일)
- 카메라 offZ 잔재 교정: 표고 체계 정비 이전 드래그 보정값(-18.3m)이 이중 보정이 되어
  원거리 POI 가 접근할수록 밀리던 원인 — 경로 1-1 camera.json 0 으로 교정(.bak 백업)
- 로드 UX: 폴더 로드 시 정지 상태로 대기(처음부터), 데이터 교체 시 UI 초기 상태 복원
- 라벨: 측점 팝업 표고(타원체고) 행 추가, 구조물-POI 이중 라벨 제거(어음천교),
  시간동기 보정 슬라이더(timeOffsetSec)
- 측점 표기 0+000 형식 전환(생성 6곳·파서 4곳 신구 호환) + 스테이션바 양끝 100m 내
  시설물 없으면 시작/끝 스테이션 마크
- 단축키: F2 개발자 모드(dev_mode 1↔0, 세션 한정), A 선형 표시 토글
- 인프라: 54000 포트 재부팅 자동화(portproxy 직접 IP + 로그온 갱신, pm2 resurrect)
- docs/history: 작업 이력 23건

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 17:59:43 +09:00

35 lines
1.8 KiB
Markdown

# 2026-07-14 측점 POI-선형 분리(교차로 구간) — 측점 정점 삽입으로 통과 보장
**소요 시간**: 11분
**Context 사용량**: input 4700k / output 6k tokens
## 문제 (스크린샷 제보, 2k200~2k300 교차로)
직전 "선형 z 재정렬" 후에도 교차로 구간에서 측점 눈금과 선형이 분리되어 보임.
## 원인 (실데이터 검증)
- 이 구간 선형은 **433m 직선 현 1개 세그먼트**(정점123→124)이고, 측점 2+200~2+500은
그 현 위(횡 0.00m)에 정확히 존재 — 원본 데이터 자체는 정합
- 직전 수정(정점 z만 재정렬)은 현의 **양 끝 z만** 교체 → 현 중간에서 측점 z 프로파일
(곡선 종단: 101.9→98.6→97.0→95.4→93.8)과 직선 보간이 어긋나 2+200에서 +1.2m 오차를
오히려 유발 (수정 전 원본은 이 구간이 자체 정합이었음)
## 수정 — geoData.ts parseKmz (직전 로직 대체·확장)
- **측점 위치를 선형 폴리라인에 정점으로 삽입** (세그먼트별 t 순, 기존 정점 1m 이내면 생략)
→ 선형이 모든 측점의 lat/lon/z 를 기하학적으로 정확히 통과.
라벨과 선이 같은 3D 점을 투영하므로 **어떤 카메라 자세/오차에서도 화면에서 일치**
- 나머지 원본 정점 z 는 측점 체이니지 보간(직전 로직) 유지
## 검증 (경로 1-1 실데이터)
- 정점 146 → 213 (측점 정점 67개 삽입, 4개는 기존 정점과 1m 이내라 생략)
- 모든 측점의 선형과의 **3D 최대 이격 0.012m** (화면 픽셀 이하)
- 433m 현이 2+200/2+300/2+400 측점을 정확히 통과함 확인
- tsc+vite 빌드 통과, 새 번들(index-DD92sAy6.js) 서빙
## 확인 방법
- 새로고침 후 폴더 재선택 → 콘솔 `[KML] 선형-측점 정합: 측점 정점 67개 삽입 ...` 로그