feat(map): 자유 시점 토글 추가 (모드별 독립 상태) #40

병합
htlee feature/free-camera-toggle 에서 develop 로 1 commits 를 머지했습니다 2026-02-20 11:47:22 +09:00
소유자

변경 사항

  • 자유 시점(freeCamera) 토글을 '지도 표시 설정' 섹션 헤더에 추가 (3D 왼쪽)
  • 평면/3D 모드별 독립 상태로 localStorage에 개별 저장
  • 기본값 ON (양쪽 모드 모두)
  • OFF 시: pitch=0, bearing=0 애니메이션 복귀 + 회전/틸트 잠금
  • 맵 비동기 생성 후 freeCamera 즉시 적용 (mapSyncEpoch 의존)
  • pitchWithRotate: true로 변경 (Ctrl+드래그 pitch 변경 허용)
  • ADMIN Map3DSettingsToggles에서 freeCamera 항목 제거

수정 파일

  • useDashboardState.ts: freeCameraMercator/freeCameraGlobe 상태 + toggleFreeCamera
  • DashboardSidebar.tsx: 자유 시점 ToggleButton UI
  • DashboardPage.tsx: freeCamera prop 전달
  • Map3D.tsx: freeCamera prop + effect (mapSyncEpoch deps)
  • useMapInit.ts: pitchWithRotate: true
  • useProjectionToggle.ts: ships-globe-photo 레이어 ordering
  • types.ts: Map3DProps에 freeCamera 추가

테스트

  • 빌드 성공 확인 (npm run build:web)
  • 평면 모드 자유 시점 ON/OFF 전환
  • 3D 모드 자유 시점 ON/OFF 전환
  • 모드 전환 시 상태 독립 유지
  • OFF 시 pitch/bearing 0도 복귀 애니메이션
## 변경 사항 - 자유 시점(freeCamera) 토글을 '지도 표시 설정' 섹션 헤더에 추가 (3D 왼쪽) - 평면/3D 모드별 독립 상태로 localStorage에 개별 저장 - 기본값 ON (양쪽 모드 모두) - OFF 시: pitch=0, bearing=0 애니메이션 복귀 + 회전/틸트 잠금 - 맵 비동기 생성 후 freeCamera 즉시 적용 (mapSyncEpoch 의존) - pitchWithRotate: true로 변경 (Ctrl+드래그 pitch 변경 허용) - ADMIN Map3DSettingsToggles에서 freeCamera 항목 제거 ## 수정 파일 - `useDashboardState.ts`: freeCameraMercator/freeCameraGlobe 상태 + toggleFreeCamera - `DashboardSidebar.tsx`: 자유 시점 ToggleButton UI - `DashboardPage.tsx`: freeCamera prop 전달 - `Map3D.tsx`: freeCamera prop + effect (mapSyncEpoch deps) - `useMapInit.ts`: pitchWithRotate: true - `useProjectionToggle.ts`: ships-globe-photo 레이어 ordering - `types.ts`: Map3DProps에 freeCamera 추가 ## 테스트 - [x] 빌드 성공 확인 (`npm run build:web`) - [ ] 평면 모드 자유 시점 ON/OFF 전환 - [ ] 3D 모드 자유 시점 ON/OFF 전환 - [ ] 모드 전환 시 상태 독립 유지 - [ ] OFF 시 pitch/bearing 0도 복귀 애니메이션
htlee added 1 commit 2026-02-20 11:45:56 +09:00
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
htlee merged commit ebf25d9ee5 into develop 2026-02-20 11:47:22 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 1명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/gc-wing#40
No description provided.