- `docs/` 를 .gitignore 에서 빼 git 추적 대상으로 전환 (위키·완료 이력·검증 기록) - `docs/raw/PLAN.md` · `docs/raw/OWNERS.md` 를 저장소 최상위로 이동 후 .gitignore 에 등록 — 창끼리 공유하되 저장소에는 안 올리는 장부 - 살아 있는 경로 참조 7개 파일 정정 (아카이브 107건은 그때 사실이라 그대로 둠) - graphify 날짜별 산출물(`docs/wiki/graphify-out/20*/`) 제외 — `graphify update` 가 다시 만듦 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2.6 KiB
2.6 KiB
type, status, page_id, related_pages, last_updated, source
| type | status | page_id | related_pages | last_updated | source | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| page-frontend | stable | B05_Profile |
|
2026-07-23 |
|
B05_Profile — 3D Viewer & Interaction
3D 지형 뷰포트 시각화 (_UI_Viewer.ts, _UI_Markers.ts)
- B04에서 확정된 지표면 모델 정보를 기반으로 preview(GLTF/PLY) 파일 및 DTM/TIN 모델을 자동으로 렌더링합니다.
- 뷰 컨트롤 오버레이: 3D 뷰포트 내 좌상단 배치, 반투명 배경 및 블러 필터(
backdrop-filter: blur(6px))와 세로 구분선 적용. 체크박스 대신toggleButton형태(active 클래스 제어) 사용. - 측점 가로선 (
stationGroupLineSegments): 최적 경로 라인 위에 종단면도 측점과 동일한 위치에 노란색(0xfacc15)으로 시각화. 선택된 측점은 빨간색(0xef4444)과 두꺼운 선으로 표시되며, 기존 10인덱스마다 그려지던 노란색 수직선은 삭제. - 가로선 반폭 연동: 도로폭 조회 API를 통해 가져온 법정 최소 도로폭 정보(
FOREST_ROAD_MIN_WIDTH_M)를 기반으로 임도 등급(gradeClass)에 맞춰roadWidths[gradeClass] / 2로 자동 연동 설계. - 3D 뷰어 다크 테마 배경 연동: 다크 테마 시
--color-surface-raised값을 동적 감지하여scene.background에 연동. 미감지 시 다크 폴백(DARK_VIEWER_BACKGROUND = 0x251f38) 사용. MutationObserver 및 dispose()를 통한 자원 해제 보장.
3D 마커 직접 드래그 이동 (0_old I-401 이식)
- 3D 뷰에 배치된 BP/EP/CP/AP/FP 마커를 포인터로 드래그하여 지형 표면 위에서 직접 위치 변경 가능 (
setPointerCapture/releasePointerCapture활용).
| 이벤트 | 조건 및 동작 |
|---|---|
pointerdown |
드래그 후보(dragStart)로만 등록 |
pointermove |
이동 거리가 3px 초과 시 드래그 모드로 판별, OrbitControls.enabled = false로 카메라 회전 차단 후 레이캐스트 지점으로 마커와 AP/FP 실린더 동기 이동 |
pointerup |
최종 지형 좌표로 상태 갱신/저장, OrbitControls 복원. 이동 거리 3px 이하 시 클릭 선택/팝오버 수행 |
pointerleave/cancel |
드래그 동작 안전하게 롤백 종료 |
- AP(회피 영역), FP(금지 영역) 마커는 실시간 반경 입력 팝오버를 제공하여 반경 변경 및 위치 조정을 연동.