638af3ecc6b5502c5385eba4350e2b15e5aa1c0b
1. 세류선 위 셀이 파랑으로 나오던 문제
원인: 등고선 TIN 보간면은 실제 물골(thalweg)을 재현하지 못해, 세류선 위
셀인데도 D8이 옆 사면으로 흘려보내 도로에 닿지 못했다.
조치 (2가지 함께):
- burn_stream_flow: 확정된 상류 세류망을 따라 격자 흐름 방향을 강제로 새긴다.
세류망은 이미 도로를 건너 하류로 빠지는 물길로 확정된 자료다.
- 사슬 추적의 종결 조건에 세류망 셀을 추가. 물이 세류에 합류한 시점에
도로 도달이 결정된다(사슬 끝이 도로 셀에 정확히 닿지 않아도 된다).
- StreamSplit.upstream 을 물 흐름 방향(상류->하류)으로 정렬. 방향은
_spread_network 확산 시 진입 끝점을 기록해 한 번에 정한다.
2. 화살표 8방위 -> 32방위
descent_azimuth: 지표면 기울기에서 연속 최급강하 방위를 뽑아 32단계로 양자화.
D8은 연결(도로 도달 판정)에만 쓰고 표시는 실제 지형 방위를 따른다.
세류망 새김 셀은 확정된 물길 방향을 그대로 쓴다.
응답 바이트: 하위 6비트=32방위(32=제자리, 33=표고없음), 0x80=도로 도달.
3. 확장 루프 분리
Basin._solve_grid 안에 있던 루프를 Flow.expand_until_closed 로 분리.
단계 검증 미리보기는 이 경로를 타지 않는다.
4. 도로 미도달 셀 화살표를 백색으로 변경(파랑 채움 + 백색 화살표).
합성 검증: 세류 새김 389셀 전부 도로 도달, 32방위 전부 등장,
지류가 본류 중간에 합류하는 갈래를 미연결로 오탐하던 경고 제거.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Aislo
Aislo 웹앱
Languages
Lasso
99.4%
Python
0.3%
TypeScript
0.3%