From e3eaacb9a72c8421aa42aa672254fcf3971f74bc Mon Sep 17 00:00:00 2001 From: umsangdon Date: Sat, 31 Oct 2026 22:52:12 +0900 Subject: [PATCH] =?UTF-8?q?fix(D03=20=EA=B7=B8=EB=A6=BC):=20=E2=88=92=20?= =?UTF-8?q?=EB=85=B8=EB=93=9C=20=EC=83=89=20=EC=A7=84=ED=95=9C=20=ED=8C=8C?= =?UTF-8?q?=EB=9E=91=20#3b6bff=20=E2=80=94=20=EB=AF=BC=ED=8A=B8=20?= =?UTF-8?q?=EB=85=B8=EC=84=A0=20=EC=84=A0=EA=B3=BC=20=EA=B5=AC=EB=B6=84(?= =?UTF-8?q?=EB=8C=80=EB=B9=84=203.18=20:=201)=20(PLAN=20625-5=20=C2=B7=20?= =?UTF-8?q?=EC=9A=94=EA=B5=AC=20540)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 5.5 Claude-Session: https://claude.ai/code/session_015uTVHDqStFX129bJDAJXB1 --- .../D03_PlanAnalysis_UI_DrawPaint.ts | 4 ++-- resources/tester/test_551_2_draw_tokens.py | 16 +++++++++++++++- ui_template/ui_template_theme.css | 2 +- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts b/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts index 90a474132..98117e92a 100644 --- a/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts +++ b/D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts @@ -4,7 +4,7 @@ * `D03_PlanAnalysis_UI_Edit`(고르기 · 고치기)가 같이 씀. 그림 = 선 · 측점 · 구간 글 · 꺾임점 · 마크 · 연도 · * 미리보기(거리 · 가상 종단 기울기 % · °) · 집기 = 화면 px 둘레 선 위 자리. * 길이·기울기 고정 부채꼴(625-2) — 정방향 = 채움 · 역방향 = 테두리 · 노드 · 놓인 꺾임점 · 미리보기 고리 = - * 기울기 부호 색(+ 오르막 `--draw-map-slope-up` 따뜻한 색 · − 내리막 `--draw-map-slope-down` 찬 색 · 막힘 = 경고 빨강). + * 기울기 부호 색(+ 오르막 `--draw-map-slope-up` 따뜻한 색 · − 내리막 `--draw-map-slope-down` 진한 파랑 · 막힘 = 경고 빨강). * `paintFan` · `paintPreview` = ScreenMap 의 `toScreen` · `pxPerMeter` · `upright` 만 씀 — B05 평면(626-3)이 그대로 씀. * 지점 핀(585-1) = 따로 겹(`pointLayer` · 겹 목록 맨 끝 = 늘 맨 위) · 색 = 목록 줄과 같은 `pointColor(i)` · 끌기 · 메뉴 = `D03_PlanAnalysis_UI_Points`. * ========================================================================== */ @@ -63,7 +63,7 @@ export function slopeColor(pct: number | null): string { if (pct === null) return "#ffffff"; return pct >= 0 ? themeColor("--draw-map-slope-up", "#ff9e2c") - : themeColor("--draw-map-slope-down", "#29e0ff"); + : themeColor("--draw-map-slope-down", "#3b6bff"); } /** 부채꼴 호 그림 걸음(라디안 · 약 3°). */ diff --git a/resources/tester/test_551_2_draw_tokens.py b/resources/tester/test_551_2_draw_tokens.py index aac0ebb1e..f0efc0787 100644 --- a/resources/tester/test_551_2_draw_tokens.py +++ b/resources/tester/test_551_2_draw_tokens.py @@ -29,7 +29,10 @@ DRAW_READS = [ ("B05_Profile/B05_Profile_UI_RouteEdit_Render.ts", '"--draw-surface"'), ("B05_Profile/B05_Profile_UI_RouteEdit_Render.ts", '"--draw-text-secondary"'), ("B05_Profile/B05_Profile_UI_RouteEdit_Render.ts", '"--draw-danger"'), - ("B05_Profile/B05_Profile_UI_RouteEdit_RecPreview.ts", '"--draw-map-sketch"'), # 626-1 추천 보기 + ( + "B05_Profile/B05_Profile_UI_RouteEdit_RecPreview.ts", + '"--draw-map-sketch"', + ), # 626-1 추천 보기 ("B05_Profile/B05_Profile_UI_Viewer.ts", '"--draw-surface-raised"'), ("B04_PreProcess/B04_PreProcess_UI_Camera.ts", '"--draw-surface-raised"'), ("D03_PlanAnalysis/D03_PlanAnalysis_UI_Map.ts", '"--draw-map-sketch"'), @@ -185,6 +188,17 @@ def test_map_drawing_colors_fixed_and_readable_on_dark_map(): assert (lum + 0.05) / 0.05 >= 3, name +def test_slope_down_node_distinct_from_route_mint(): + """625-5 − 노드 색 = 진한 파랑 · 민트 노선 선(route-0)과 · 어두운 바탕과 · 검은 테와 각각 ≥ 3 : 1.""" + light = _blocks(THEME.read_text(encoding="utf-8"))["light"] + blue = light["--draw-map-slope-down"] + assert blue == "#3b6bff" + for other in (light["--draw-map-route-0"], "#1f2937"): + hi, lo = sorted((_lum(blue), _lum(other)), reverse=True) + assert (hi + 0.05) / (lo + 0.05) >= 3, other + assert (_lum(blue) + 0.05) / 0.05 >= 3 + + def test_paint_network_uses_cased_route_lines(): src = (ROOT / "D03_PlanAnalysis/D03_PlanAnalysis_UI_DrawPaint.ts").read_text(encoding="utf-8") body = src[src.index("export function paintNetwork") : src.index("export function pointLayer")] diff --git a/ui_template/ui_template_theme.css b/ui_template/ui_template_theme.css index a2ee2adbb..295039dd4 100644 --- a/ui_template/ui_template_theme.css +++ b/ui_template/ui_template_theme.css @@ -602,7 +602,7 @@ html.is-bm-route .m01lab-src__body * { --draw-map-measure: #ffffff; /* 거리재기 */ --draw-map-warn: #ff5a4d; /* 긋기 막힘(경고) */ --draw-map-slope-up: #ff9e2c; /* 긋기 기울기 부호 — + 오르막(따뜻한 색 · 노드 · 꺾임점) */ - --draw-map-slope-down: #29e0ff; /* − 내리막(찬 색) */ + --draw-map-slope-down: #3b6bff; /* − 내리막(진한 파랑 · 민트 노선 선 #3df5c4 와 ≥ 3 : 1) */ --draw-map-route-0: #3df5c4; /* 예정노선 선마다 차례 색(개발제한 · 산사태 주황과 가름) */ --draw-map-route-1: #6db8ff; --draw-map-route-2: #cf9dff;