--- type: file-backend status: draft related_pages: ["[[architecture/project_map]]", "[[architecture/workflow_data_flow]]"] page_id: B05_Profile source_file: "B05_Profile/B05_Profile_Schema.py" last_updated: 2026-07-24 --- # B05_Profile_Schema.py Pydantic V2 기반의 B05 경로 설계 및 선형 편집, 비정규 측점, 등고선 간격 영속화 요청/응답 데이터 입출력 검증 스키마 모듈입니다. ## 🛠️ Pydantic 모델 및 검증 헬퍼 목록 | 항목 | 위치(상대 경로) | 역할 | |---|---|---| | `RouteSolveRequest` | `B05_Profile/B05_Profile_Schema.py` | 경로 최적 탐색 요청 (BP/EP/CP/AP/FP 제어점, 임도 등급, 경사 제약 %, 선형 옵션 4개) | | `RouteSolveResponse` | `B05_Profile/B05_Profile_Schema.py` | 최적 경로 탐색 결과 응답 (생성된 route_id, 연장 m, 종횡단 개수 등) | | `ProfileAlignmentSaveRequest` | `B05_Profile/B05_Profile_Schema.py` | 수동 표고 편집 델타(`station_offsets`) 및 반경 맵(`curve_radii`) 정본 저장 요청 | | `ProfileAlignmentSaveResponse` | `B05_Profile/B05_Profile_Schema.py` | 선형 편집 정본 재계산 결과 기하 JSON 응답 | | `IrregularStationInput` | `B05_Profile/B05_Profile_Schema.py` | 비정규 측점(구조물) 입력 객체 (`chainage_m`, `structure`) | | `RouteConfirmRequest` | `B05_Profile/B05_Profile_Schema.py` | 경로 확정 요청 본문 (지표 분석 파라미터 및 `irregular_stations` 배열 수용) | | `RouteConfirmResponse` | `B05_Profile/B05_Profile_Schema.py` | 경로 확정 성공 및 stage 2 COMPLETE 전이 응답 | | `ContourIntervalUpdateRequest` / `Response` | `B05_Profile/B05_Profile_Schema.py` | 등고선 간격 변경값 영속화 요청 및 응답 모델 | | `RouteLatestResponse` | `B05_Profile/B05_Profile_Schema.py` | 새로고침 복원용 최신 경로 메타 + 정밀 3D 좌표 + 파라미터 반환 모델 | | `normalize_grade_percent()` | `B05_Profile/B05_Profile_Schema.py` | 경사 입력값 퍼센트(%) 단일 단위 정규화 헬퍼 (레거시 비율 저장분 자동 환산) | ## 🔗 연관 개념 및 의존성 - [[schema_common]] — 표준 API 에러 응답 형식 공유 - `config_system.py` — `ROUTE_GRADE_CLASSES`, `GRADE_TERRAIN_TYPES` 등 상수 검증 바인딩