fix(D03 긋기): 놓인 노드 +/− 색 보이게 — 선보다 굵은 부호 색 점 + 검은 테 · 고른 선은 노랑 강조 위에 점 다시 · 손잡이 = 빈 네모 (PLAN 625-3 · 요구 535-2)

까닭 — 놓인 점 반지름 3 px · 테 없음 = − 하늘(#29e0ff)이 노선 민트 선(#3df5c4)에 묻힘 · 고른 선은 흰 네모 손잡이와 노랑 강조(8 px)가 점을 덮음.
- DrawPaint `paintNodes` 떼어 냄(점 5 px · fillCased) · Edit 가 고른 선만 강조 위에 다시 그림(heightAt 인자 덧)
- 시험 test_625_draw 놓인 노드 지킴 하나 덧

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-31 22:28:41 +09:00
co-authored by Claude Opus 5.5
parent 48cf88cc93
commit 3de262a4a9
4 changed files with 51 additions and 19 deletions
+16
View File
@@ -159,3 +159,19 @@ def test_가파른_땅_지형_밖_고를_자리_없음(r):
for key in ("steep", "offTerrain"):
f = r[key]
assert not f["flat"] and not f["nodes"] and not f["arcs"]
def test_놓인_노드_부호_색_선_위_고름_위에도_보임():
"""625-3 — 놓인 꺾임점 = 선 테(3 + 4 px)보다 굵은 부호 색 점 + 검은 테 · 고른 선은 노랑 강조 위에 점을 다시 그리고 손잡이 = 빈 네모."""
paint = (ROOT / "D03_PlanAnalysis" / "D03_PlanAnalysis_UI_DrawPaint.ts").read_text(
encoding="utf-8"
)
edit = (ROOT / "D03_PlanAnalysis" / "D03_PlanAnalysis_UI_Edit.ts").read_text(encoding="utf-8")
assert int(re.search(r"NODE_DOT_PX = (\d+)", paint).group(1)) * 2 > 3 + 4
body = paint[paint.index("export function paintNodes") :]
body = body[: body.index("\n}\n")]
assert "fillCased(context, slopeColor(groundSlopePct(" in body
assert "paintNodes(context, map, network.lines, z)" in paint
draw = edit[edit.index("draw(context, map) {") :]
assert draw.index("sel.paths()") < draw.index("paintNodes(") < draw.index("context.rect(")
assert "fillRect" not in draw[: draw.index("고른 노드 · 마크 테")]