feat(514-3 B07 유역도 등고선 가볍게): 유역도 등고선 · 계류 = 폴리선 하나 + 꼭짓점 목록(자식 Line · 선분마다 UUID 없음) — 요구 328-4

- 엔진: Engine_Cad_Basin 배경선만 꼭짓점 목록 폴리선(id 는 옛 폴리선과 같음) · 노선 · 유역 · 표 · 도각은 옛 꼴 그대로 · B05 · B06 길 손대지 않음
- CAD 앱: PolyLineEntity.fromJson 이 자식 없고 꼭짓점 목록이면 선분으로 펼침(색 · 굵기 · 층 = 부모) · 다시 내보내면 옛 꼴
- DXF 내보내기 · B09 도면 인쇄 PDF: 꼭짓점 목록 폴리선 = 열린 선(해치만 닫음)
- 검증_sub2 유역도 5 m 23.17 → 3.22 MB · 10 m 11.91 → 1.77 MB · 좌표 · id · 색 해시 전후 같음 · B05 · B06 등고선 · 배수 응답 해시 같음
- 시험: test_514_3_b07_basin_light 새로 · vitest cad/polyline-points-514-3 새로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-22 21:10:01 +09:00
co-authored by Claude Opus 5.5
parent 286dc72e1b
commit c316dbb106
6 changed files with 142 additions and 13 deletions
@@ -320,7 +320,8 @@ class _Painter:
vertices = [xy for v in shape.get("points") or [] if (xy := _xy(v))]
if len(vertices) >= 2:
self.stroke(entity)
self.line([*vertices, vertices[0]])
# 꼭짓점 목록 폴리선(B07 유역도 배경선) = 열린 선
self.line(vertices if kind == "PolyLine" else [*vertices, vertices[0]])
for child in entity.get("children") or []:
self.entity(child)