260715_0
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
---
|
||||
type: page-backend
|
||||
status: stable
|
||||
page_id: B06_wf3_ProfileCross
|
||||
related_pages: ["[[B06_wf3_ProfileCross/B06_frontend]]", "[[B06_wf3_ProfileCross/B06_api]]", "[[B06_wf3_ProfileCross/B06_db]]", "[[B06_wf3_ProfileCross/B06_dependencies]]"]
|
||||
last_updated: 2026-07-12
|
||||
source: 상위 프로젝트 B06_wf3_ProfileCross 실 코드 직접 확인 (2026-07-12)
|
||||
---
|
||||
|
||||
# B06_wf3_ProfileCross — Backend
|
||||
|
||||
## 요청·응답 모델
|
||||
| 항목 | 위치 | 역할 |
|
||||
|---|---|---|
|
||||
| `SectionGenerateRequest` | `B06_wf3_ProfileCross_Schema.py:8` | route·지표면·측점·횡단 옵션 검증 |
|
||||
| `SectionGenerateResponse` | `B06_wf3_ProfileCross_Schema.py:26` | 종단 ID·횡단 개수·총연장·파일경로 응답 |
|
||||
| `SectionConfirmResponse` | `B06_wf3_ProfileCross_Schema.py:38` | 확정 route와 confirmed 상태 응답 |
|
||||
| `SectionSummaryResponse` | `B06_wf3_ProfileCross_Schema.py:47` | 종단·횡단 결과 요약 응답 |
|
||||
|
||||
## 생성 엔진
|
||||
| 항목 | 위치 | 역할 |
|
||||
|---|---|---|
|
||||
| `run_section_generation()` | `B06_wf3_ProfileCross_Engine.py:50` | B05 경로 로드·표고 sampler·종횡단 생성 오케스트레이션 |
|
||||
| `build_surface_sampler()` | `B06_wf3_ProfileCross_Engine_Sampler.py:126` | DTM·보간 방식 표고 sampler 선택 |
|
||||
| `DtmGridSampler` | `B06_wf3_ProfileCross_Engine_Sampler.py:26` | DTM 격자 기반 표고 조회 |
|
||||
| `InterpolatedSurfaceSampler` | `B06_wf3_ProfileCross_Engine_Sampler.py:109` | 표면 보간 기반 표고 조회 |
|
||||
| `generate_sections()` | `B06_wf3_ProfileCross_Engine_Section.py:116` | 측점·종단·횡단 샘플 생성 |
|
||||
| `_chainages()` | `B06_wf3_ProfileCross_Engine_Section.py:77` | 측점 간격과 종점 포함 여부로 chainage 생성 |
|
||||
| `_interpolate_xy()` / `_tangent_at()` | `B06_wf3_ProfileCross_Engine_Section.py:86,95` | 경로 좌표 보간·접선 방향 계산 |
|
||||
|
||||
## 라우터·workflow
|
||||
| 항목 | 위치 | 역할 |
|
||||
|---|---|---|
|
||||
| `generate_sections()` | `B06_wf3_ProfileCross_Router.py:49` | 확정 경로 검증·생성·DB 저장·stage 3 완료 |
|
||||
| `get_sections()` | `B06_wf3_ProfileCross_Router.py:152` | route 종횡단 요약 조회 |
|
||||
| `confirm_sections()` | `B06_wf3_ProfileCross_Router.py:170` | 결과 확정·stage 3 완료 |
|
||||
| `start_stage()` / `complete_stage()` / `fail_stage()` | `B06_wf3_ProfileCross_Router.py:68,111,127,132,137,143,187` | WF3 상태 전이 → [[../../concepts/workflow_state]] |
|
||||
|
||||
## 재실행
|
||||
| 항목 | 위치 | 역할 |
|
||||
|---|---|---|
|
||||
| `delete_sections_for_route()` | `B06_wf3_ProfileCross_Repository.py:27` | 동일 route 기존 결과 삭제 후 재생성 |
|
||||
| `_validate_stage_path()` | `B06_wf3_ProfileCross_Repository.py:18` | WF3 저장경로 이탈 방지 |
|
||||
Reference in New Issue
Block a user