커밋 그래프

9 커밋

작성자 SHA1 메시지 날짜
595fac5adb Merge commit '130f563ab2e95122296d3b7d8805985c4d39fb4f' into feature/draw-util 2026-03-16 18:36:12 +09:00
301df70376 feat(map): 거리·면적 측정 도구 구현
TopBar 퀵메뉴에서 거리/면적 측정 모드 토글, MapView에서 클릭으로
포인트 수집 후 deck.gl 레이어로 결과를 시각화한다.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 17:52:27 +09:00
da077bf884 fix(prediction): geo.ts 중복 함수 제거 및 null 좌표 참조 오류 수정 2026-03-16 11:51:48 +09:00
a3b2787ba0 chore: feature/cctv-hns-enhancements 머지 충돌 해결
- aerialRouter/Service: stitch(이미지합성) + drone stream 기능 통합
- aerialService: IMAGE_API_URL(stitch) / OIL_INFERENCE_URL(inference) 분리
- aerialApi: stitchImages + DroneStream API 함수 공존
- MapView: analysis props(HEAD) + lightMode prop(INCOMING) 통합
- CctvView: 지도/리스트/그리드 3-way 뷰 채택 (INCOMING 확장)
- OilSpillView: analysis 상태 + 데모 자동 표시 useEffect 통합
- PredictionInputSection: POSEIDON/KOSPS 모델 추가 (ready 필드 포함)
- RightPanel: controlled props 방식 유지, 미사용 내부 상태 제거

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 10:58:00 +09:00
Nan Kyung Lee
fb74df5c1f feat(prediction): 다각형/원 오염분석 + 범례 최소화 + Convex Hull 면적 계산
- 오염분석 버튼을 다각형 분석 / 원 분석으로 분리
- 다각형 분석: Convex Hull(Graham Scan) + Shoelace 알고리즘으로
  확산 입자 외곽 다각형 면적(km²), 둘레(km), 꼭짓점 수 계산
- 원 분석: 향후 오픈 예정 팝업
- geo.ts에 convexHull, polygonAreaKm2, analyzeSpillPolygon 함수 추가
- OilSpillView → RightPanel에 oilTrajectory prop 전달
- 지도 범례에 최소화/펼치기 토글 버튼 추가
- CheckboxLabel 중복 className 경고 수정

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 08:23:22 +09:00
Nan Kyung Lee
dc82574635 feat(prediction): 오염분석 다각형/원 분석 기능 구현
- 오염분석 섹션을 탭 UI로 개편 (다각형 분석 / 원 분석)
- 다각형 분석: 지도 클릭으로 꼭짓점 추가 후 분석 실행
- 원 분석: NM 프리셋 버튼(1·3·5·10·15·20·30·50) + 직접 입력, 사고지점 기준 자동 계산
- 분석 결과: 분석면적·오염비율·오염면적·해상잔존량·연안부착량·민감자원 개소 표시
- MapView: 다각형(PolygonLayer) / 원(ScatterplotLayer) 실시간 지도 시각화
- geo.ts: pointInPolygon, polygonAreaKm2, circleAreaKm2 유틸 함수 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 09:19:30 +09:00
3946ff6a25 feat(prediction): 이미지 분석 서버 Docker 패키징 + DB 코드 제거
- prediction/image/ FastAPI 서버 Docker 환경 구성
  - Dockerfile: PyTorch 2.1 + CUDA 12.1 기반 GPU 이미지
  - docker-compose.yml: GPU 할당 + 데이터 볼륨 마운트
  - requirements.txt: 서버 의존성 목록
  - .env.example: 환경변수 템플릿
  - DOCKER_USAGE.md: 빌드/실행/API 사용법 문서
  - Dockerfile에 .dockerignore 제외 폴더 mkdir -p 추가
- .gitignore: prediction/image 결과물 및 모델 가중치(.pth) 제외 추가
- dbInsert_csv.py, dbInsert_shp.py 삭제 (미사용 DB 로직)
- api.py: dbInsert import 및 주석 처리된 DB 호출 코드 제거
- aerialRouter.ts: req.params 타입 오류 수정
2026-03-10 18:37:36 +09:00
dec066e8bb refactor(css): CSS 인프라 구축 + body default 인라인 스타일 1,055건 제거
Phase 0: CSS 인프라 구축
- Tailwind config 색상 불일치 수정 (t1/t2/t3 → CSS 변수 값으로 통일)
- index.css 1,302줄 → @import 엔트리포인트 7줄로 축소
- common/styles/base.css: @layer base 추출 (CSS 변수, 리셋, body 기본값)
- common/styles/components.css: @layer components + utilities 추출
- common/styles/wing.css: wing-* 디자인 시스템 클래스 신규 정의
- common/utils/cn.ts: className 조합 유틸리티
- App.css 삭제 (내용을 components.css로 통합)

Phase 1: body default 인라인 스타일 일괄 제거
- fontFamily: 'var(--fK)' 781건 제거 (body font-family 상속)
- color: 'var(--t1)' 274건 제거 (body color 상속)
- 빈 style={{}} 78건 정리
- 31개 파일, JS 번들 23KB 감소

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 10:45:01 +09:00
a61864646f refactor(frontend): 공통 모듈 common/ 분리 + OpenLayers 제거 + path alias 설정
- OpenLayers(ol) 패키지 제거 (미사용, import 0건)
- common/ 디렉토리 생성: components, hooks, services, store, types, utils
- 17개 공통 파일을 common/으로 이동 (git mv, blame 이력 보존)
- MainTab 타입을 App.tsx에서 common/types/navigation.ts로 분리
- tsconfig path alias (@common/*, @tabs/*) + vite resolve.alias 설정
- 42개 import 경로를 @common/ alias 또는 상대경로로 수정

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 14:00:50 +09:00