diff --git a/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts b/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts index 473c58f78..90a474132 100644 --- a/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts +++ b/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts @@ -215,9 +215,9 @@ export function paintNetwork( ); if (map.slopes) segmentLabels(context, map, line.vertices, z); }); + extra(); // 미리보기(부채꼴 · 원) 먼저 — 놓인 점이 그 위에 보임(625-4) paintNodes(context, map, network.lines, z); drawPieces(context, map, network); - extra(); } /** 꺾임점 = 들어온 구간 기울기 부호 색(625-2 B4) · 선보다 굵은 점 + 검은 테 = 선 색 · 위성 위에서도 가름(625-3) · diff --git a/D03_PlanAnalysis/D03_PlanAnalysis_UI_Style.css b/D03_PlanAnalysis/D03_PlanAnalysis_UI_Style.css index c08519723..912b05fda 100644 --- a/D03_PlanAnalysis/D03_PlanAnalysis_UI_Style.css +++ b/D03_PlanAnalysis/D03_PlanAnalysis_UI_Style.css @@ -52,6 +52,14 @@ align-items: flex-end; } +/* 625-4 — 좁은 폭에서 오른쪽 끝(지형 칩 · LAS 올리기)이 가로 밀림에 잘리지 않게 줄바꿈(공용 한 줄 밀기는 B05 그대로) */ +.ui-map-tools.d03-plan__tools > .ui-toolbar { + flex-wrap: wrap; + justify-content: flex-end; + overflow: visible; + mask-image: none; +} + /* 624-4 도구줄 끝 지형 칸 — 지형 칩 · LAS 올리기 · 진행 서클 한 줄 */ .d03-plan__terrain { display: flex; diff --git a/resources/tester/test_625_draw.py b/resources/tester/test_625_draw.py index 3bdb02a28..08ec131b2 100644 --- a/resources/tester/test_625_draw.py +++ b/resources/tester/test_625_draw.py @@ -175,3 +175,15 @@ def test_놓인_노드_부호_색_선_위_고름_위에도_보임(): 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("고른 노드 · 마크 테")] + + +def test_놓인_노드_미리보기_부채꼴_원_위에_그림(): + """625-4 — paintNetwork 는 미리보기(extra) 를 먼저 그리고 놓인 점(paintNodes)을 그 위에 · D03 도구줄은 줄바꿈.""" + paint = (ROOT / "D03_PlanAnalysis" / "D03_PlanAnalysis_UI_DrawPaint.ts").read_text( + encoding="utf-8" + ) + body = paint[paint.index("export function paintNetwork") :] + body = body[: body.index("\n}\n")] + assert body.index("extra();") < body.index("paintNodes(") + css = (ROOT / "D03_PlanAnalysis" / "D03_PlanAnalysis_UI_Style.css").read_text(encoding="utf-8") + assert re.search(r"\.d03-plan__tools > \.ui-toolbar \{[^}]*flex-wrap: wrap", css)