feat: MapLibre → deck.gl 전면 전환 + 어구 서브클러스터 구조 개선 #211

병합
htlee feature/deckgl-ship-migration 에서 develop 로 5 commits 를 머지했습니다 2026-03-31 15:59:07 +09:00
소유자

변경 사항

deck.gl 전면 전환

  • 실시간 선박 13K: MapLibre symbol → deck.gl IconLayer (Zustand subscribe, React re-render 0회)
  • 선단/어구 폴리곤: MapLibre Source/Layer → deck.gl GeoJsonLayer
  • 선박 팝업: MapLibre Popup → React 오버레이 (드래그, 사진탭 유지)
  • 선박 호버 툴팁, 한국선박 강조, 분석 마커 모두 deck.gl 전환

어구 서브클러스터 구조 개선

  • DB: sub_cluster_id 컬럼 추가 + 기존 #N 데이터 마이그레이션
  • Python: group_key 고정 (이력 연속성 보장), sub_cluster_id 독립 추적
  • Backend: DISTINCT ON CTE로 서브클러스터 중복 제거
  • 한국 국적(440/441) 어구 오탐 제외

UI 개선

  • 리플레이 집중 모드, 라벨 클러스터링, fontScale 연동
  • 모델 패널 푸터 구조, 확장/축소, 우클릭 툴팁 고정
  • 선단 폴리곤 밝은 파스텔 팔레트

테스트

  • 실시간 선박 아이콘 정상 렌더링 + 카테고리/국적 필터
  • 선박 클릭 팝업 + 호버 툴팁
  • 어구 그룹 클릭 → 리플레이 정상 동작
  • 서브클러스터 분리/합류 시 center trail
  • 집중 모드 ON/OFF
  • cnFishing 탭 OFF 시 전체 초기화
  • 감시 탭 (불법어선, 환적 등) 정상
## 변경 사항 ### deck.gl 전면 전환 - 실시간 선박 13K: MapLibre symbol → deck.gl IconLayer (Zustand subscribe, React re-render 0회) - 선단/어구 폴리곤: MapLibre Source/Layer → deck.gl GeoJsonLayer - 선박 팝업: MapLibre Popup → React 오버레이 (드래그, 사진탭 유지) - 선박 호버 툴팁, 한국선박 강조, 분석 마커 모두 deck.gl 전환 ### 어구 서브클러스터 구조 개선 - DB: `sub_cluster_id` 컬럼 추가 + 기존 `#N` 데이터 마이그레이션 - Python: `group_key` 고정 (이력 연속성 보장), `sub_cluster_id` 독립 추적 - Backend: `DISTINCT ON` CTE로 서브클러스터 중복 제거 - 한국 국적(440/441) 어구 오탐 제외 ### UI 개선 - 리플레이 집중 모드, 라벨 클러스터링, fontScale 연동 - 모델 패널 푸터 구조, 확장/축소, 우클릭 툴팁 고정 - 선단 폴리곤 밝은 파스텔 팔레트 ## 테스트 - [ ] 실시간 선박 아이콘 정상 렌더링 + 카테고리/국적 필터 - [ ] 선박 클릭 팝업 + 호버 툴팁 - [ ] 어구 그룹 클릭 → 리플레이 정상 동작 - [ ] 서브클러스터 분리/합류 시 center trail - [ ] 집중 모드 ON/OFF - [ ] cnFishing 탭 OFF 시 전체 초기화 - [ ] 감시 탭 (불법어선, 환적 등) 정상
htlee added 5 commits 2026-03-31 15:56:22 +09:00
- 실시간 선박 13K: MapLibre symbol → deck.gl IconLayer (useShipDeckLayers + shipDeckStore)
- 선단/어구 폴리곤: MapLibre Source/Layer → deck.gl GeoJsonLayer (useFleetClusterDeckLayers)
- 선박 팝업: MapLibre Popup → React 오버레이 (ShipPopupOverlay + ShipHoverTooltip)
- 리플레이 집중 모드 (focusMode), 라벨 클러스터링, fontScale 연동
- Python: group_key 고정 + sub_cluster_id 분리, 한국 국적 어구 오탐 제외
- DB: sub_cluster_id 컬럼 추가 + 기존 '#N' 데이터 마이그레이션
- Backend: DISTINCT ON CTE로 서브클러스터 중복 제거, subClusterId DTO 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This reverts commit 9eac614910.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
claude-bot 이 변경사항을 승인하였습니다. 2026-03-31 15:59:06 +09:00
claude-bot left a comment
멤버

MR 승인 (via /mr skill)

MR 승인 (via /mr skill)
htlee merged commit ce4cde56b8 into develop 2026-03-31 15:59:07 +09:00
htlee 삭제된 브랜치 feature/deckgl-ship-migration 2026-03-31 15:59:07 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 2명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

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

의존성

No dependencies set.

Reference: gc/kcg-monitoring#211
No description provided.