- `docs/` 를 .gitignore 에서 빼 git 추적 대상으로 전환 (위키·완료 이력·검증 기록) - `docs/raw/PLAN.md` · `docs/raw/OWNERS.md` 를 저장소 최상위로 이동 후 .gitignore 에 등록 — 창끼리 공유하되 저장소에는 안 올리는 장부 - 살아 있는 경로 참조 7개 파일 정정 (아카이브 107건은 그때 사실이라 그대로 둠) - graphify 날짜별 산출물(`docs/wiki/graphify-out/20*/`) 제외 — `graphify update` 가 다시 만듦 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
8.2 KiB
8.2 KiB
type, status, related_pages, last_updated, source
| type | status | related_pages | last_updated | source | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| concept | stable |
|
2026-08-30 |
|
유토곡선 (Mass Haul Diagram) 계산 명세
1. 개요 및 분석 목적
- 분석 대상:
- 1공구:
07.유토곡선.pdf(측점0+0.0~60+0.0, V=1:10,000, 최종 누가토량 1,171.00㎥) - 3공구:
13 유토곡선(3공구).pdf(측점120+0.0~176+10.0, V=1:50,000, 최종 누가토량 12,888.98㎥)
- 1공구:
- 역할: 노선 내 절토 및 성토의 차이를 누적하여 토량 이동(토공 운반계획), 사토량/토취량, 운반장비(종무대, 불도저, 덤프트럭) 및 평균운반거리를 결정하는 도면/차트.
- 웹앱 명세 목적: Aislo 웹앱 B08 수량산출 및 B09 내역서 연동 시 유토곡선 자동 계산 및 시각화를 위한 원리 명세화.
2. 주요 계산 수식 및 원리 (실무 관례 반영)
- 다짐상태 기준의 산출 (운반계획 실무 표준):
- 유토곡선은 다짐상태를 기준으로 유동 토량을 계산합니다.
- 측점별 순토량 (
N_i):N_i = \sum [C_{i, j} \times C_j] - F_iC_{i, j}: 현재 측점 구간의 $j$번째 지반유형별 절토량 (자연상태, ㎥)C_j: $j$번째 지반유형의 토량환산계수(다짐률)F_i: 현재 측점 구간의 성토량 (다짐상태, ㎥)
- 누가토량 (
M_i):M_i = M_{i-1} + N_i - 곡선 증감 해석:
- 상승 구간 (
M_i > M_{i-1}): 절토 우세 구간 - 하강 구간 (
M_i < M_{i-1}): 성토 우세 구간 - 극댓값/극솟값: 절토/성토 우세가 전환되는 변곡점
- 동일 누가토량 수평선: 구간 내 절토·성토 토량 균형 (Balance Line)
- 상승 구간 (
3. 지반유형별 토량환산계수 기본값 (config_system.py)
지반유형(soil, ripping_rock, blasting_rock)에 따른 체적 변화 계수(L: 흐트러진 상태, C: 다져진 상태) 기본값은 다음과 같이 관리하며, 현장별 조정을 위해 설정 가능하도록 제공합니다.
| B06 지반유형 | 대응 암종 | 팽창률 (L) | 다짐률 (C) |
|---|---|---|---|
토사 soil |
풍화토~점토 | 1.25 | 0.90 |
리핑암 ripping_rock |
풍화암~연암 하단 | 1.35 | 1.15 |
발파암 blasting_rock |
보통암 중앙 | 1.60 | 1.30 |
4. 토공 운반장비 선정거리 및 분배 기준 (config_system.py)
평균운반거리에 따른 장비 선정 기준은 오직 config_system.py의 EARTHWORK_HAUL_EQUIPMENT_LIMITS_M 상수에서 단일 관리됩니다. (3공구 도면 실측치 및 실무 관행 적용)
- 종무대 (무대운반): 운반거리
\le20.0m - 불도저 (압토운반): 운반거리
\le50.0m - 덤프트럭 (기타운반): 운반거리 50.0m 초과 (나머지 전체)
- 자연방토 (
natural_spoil_m3): 성토 사면 경사가NATURAL_SPOIL_MIN_GROUND_SLOPE = 1/1.5이상으로 급하여 기계적으로 흙을 운반하지 않고 흘려보내는 자연탈락 물량. 사토 수량에서 자동 공제되어 balloon에M.N=측점형태로 표기됩니다.
5. 유토곡선 곡선 사양 (B06 구현 v2)
사용자가 비교 분석할 수 있도록 기준 2종 × 지반유형 1종 = 총 2개 곡선을 중첩하여 제공합니다.
- 기준 2종:
- 횡단 기준: 실제 횡단 단면적 기반의 정밀 산출 (
design.cut_area_m2/fill_area_m2) - 종단 기준: 계획고 - 지반고 (
difference_m) × 노반폭 기반의 개략 산출 (균형 판정 지표)
- 횡단 기준: 실제 횡단 단면적 기반의 정밀 산출 (
- 지반유형 1종:
- 횡단도 기하 및 암 경계선 기준의 토사/암반 면적 분리 기능 신설에 따라, 지반유형별 L, C 팽창/다짐률 개별 적용 곡선만 유지합니다. (실제 정보가 없던
토사 단일,환산 없음곡선은 삭제).
- 횡단도 기하 및 암 경계선 기준의 토사/암반 면적 분리 기능 신설에 따라, 지반유형별 L, C 팽창/다짐률 개별 적용 곡선만 유지합니다. (실제 정보가 없던
6. 웹앱 연동 및 시각화 명세 (2026-08-02 확정)
- 웹앱 연동 및 시각화 명세 (2026-08-03 확정):
- 자동 Y스케일 및 Y축 0선 표기: Y축 눈금은 노선 데이터 범위 기반의 동적 Y스케일링을 수행하며, 차트 상 0선(Balance Line)에 명시적으로 눈금값 "0"을 렌더링합니다.
- 평형선 엔진 및 장비 띠 분할: 순차 평형선 탐색 알고리즘(
computeHaulPlan)을 기반으로 사토/토취 단차를 둔 평형선을 산출하며, 장비 한계거리별로 영역을 쪼갠 띠(HaulBand)를 반투명 다각형으로 렌더링합니다. - 다중 곡선화 및 직선 보간:
PARABOLIC_MASS_CURVE = false스위치 단일화로 포물선 오차를 제거하고 현 길이/그리기 기준을 직선 연결로 고정. 횡단/종단 기준 × 지반유형 옵션 오버레이 지원. - 장거리 운반 상쇄 (
HaulTransfer): 띠 분배 후 남은 사토/토취 잔량은 토공 최소화 원칙에 따라 최단거리 쌍으로 자동 상쇄 연계(덤프 운반) 처리하여 최종 사토량 항등식의 수치적 오차를 0으로 맞춥니다. - 물량 육각 Balloon 인터랙션: 충돌 회피(
findSlot링 탐색) 및 화면 이탈 방지 clamping이 적용되어 있고, 드래그 위치 보존 및 더블클릭 복귀를 지원합니다. - UI/UX 레이아웃 보정: B06 상단 패널 접기 손잡이
bottom: -24px독립 배치(createWorkflowPanelHandlecollapseToward: up/down 확장), 첫 렌더 시panelHeight()인라인 CSS 변수 우선 참조로 종단면도 축소 결함 해결. - B05 유토곡선 슬라이드 패널 이관 & 공용화: B05 노선 설계 화면에 유토곡선 2차 슬라이드 패널 구축,
common_util_mass_haul*.ts|css공용 모듈 분리 및MassHaulAxis파라미터화, B05-B06 간 싱글턴 캐시 공유(ProfileCross_Section_Store.ts). - 사토장 모델 & B08 수량산출 인계 (2026-08-04 확정): 사토 balloon에
L=및 장비 표기, 잔량 발생 시 다중 부지 매칭(settleResiduals)을 적용하며, 사토장 자동 선정 취소 및 B05 구조물 직접 배치 방식 전환에 따라 유토곡선->B08 수량산출 자동 인계는 최종 취소(운반비 미계상) 처리되었습니다. 자연방토 임계 경사(NATURAL_SPOIL_MIN_GROUND_SLOPE = 1.0 / 1.5)는 실무 도면 기재 관행을 반영하여 그대로 유지됩니다. - 후속 주의사항 13개 지침: 암 경계선 지반선 복사 오프셋, 표준단면 토큰 단일화, B06 상세조회 백엔드 반영 시점, 다짐상태 유토곡선 누적,
EARTHWORK_HAUL_EQUIPMENT_LIMITS_M단일참조, 토량 배분 3원칙, 사면-지반 첫 교차 정지 등 지침 통합 관리.
- 측점 간격: 20m 간격 기준 (
config/config_system.py의SECTION_STATION_INTERVAL_M = 20.0적용). - B08 납품도면: 확정 종단 DB의
mass_haul을 사용해 A1 토적도를 H=1:2,000, 세로 1mm=50㎥로 생성합니다. 상세 구성과 후속 결정은 B08_DesignDetail/B08_drawing_masshaul_watershed를 참조합니다. - 사용처: B05_Profile/B05_frontend_alignment, B06_Section/B06_frontend, B06_Section/B06_backend, B07_Quantity/B07_frontend, B08_DesignDetail/B08_drawing_masshaul_watershed, B09_Estimation/B09_frontend