b0fe4432690ee062528d4293687e79116f826ffb
판정 기준은 성토측 자연 지반 경사(사용자 확정). 지반이 임계보다 가파르면 부어 놓은 흙이 쌓이지 않고 스스로 흘러내리므로 운반비를 세지 않는다. 계상 방식은 참고 도면을 근거로 정했다. 도면의 사토 balloon은 L=(운반거리) 없이 M.N=측점만 적는다 - 그 노선의 사토가 이미 운반비 없이 처리되고 있다는 뜻이고, 자연방토라는 이름을 안 썼을 뿐 처리 방식이 자연방토다. 그래서 새 항목을 만들지 않고 사토 안에서 가른다. 판정 통과분은 도면과 똑같이 M.N만, 실패분에만 "사토장=X㎥"를 더한다. 수량은 그대로 두고 성토로 흡수하지 않아 유토곡선 모양과 누가토량은 안 바뀐다. - config NATURAL_SPOIL_MIN_GROUND_SLOPE = 1/1.5 (rise/run, 약 33.7도) 신설. 유일한 정의처이며 프론트는 context로 받아 쓴다. 못 받으면 자연방토 없음(보수적) - 엔진 fill_ground_slope(): 노면 끝~성토 사면의 첫 지반 교차까지 평균 경사. 양쪽이 다 성토면 완만한 쪽을 택한다(보수적) - AreaSample/MassHaulPoint에 natural_spoil - 양 끝 측점이 둘 다 가능할 때만 참 - HaulResidual.natural_m3 - 잔량 구간에서 자연방토 가능한 길이 비율만큼 계상. 장거리 상쇄로 깎이면 안분·자연방토도 같은 비율로 감소 - HaulPlan.natural_spoil_m3 + 요약 칩 700줄 초과 2건 분리: _Engine_Areas.py(면적 적분), _UI_MassHaul_Settle.ts(안분·장비·상쇄· 직렬화). 의존은 한 방향(Balance -> Settle 함수, Settle -> Balance 타입만)이라 순환 없음. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Aislo
Aislo 웹앱
Languages
Lasso
99.4%
Python
0.3%
TypeScript
0.3%