From ac051ed9afa7bf82855c4f8ea6bd84ffd6716b2b Mon Sep 17 00:00:00 2001 From: umsangdon Date: Thu, 8 Oct 2026 12:14:50 +0900 Subject: [PATCH] =?UTF-8?q?fix(B06):=20=EB=85=B8=EB=A9=B4=EA=B3=B5=20?= =?UTF-8?q?=EB=AC=B4=EB=8A=AC=EB=A5=BC=20=ED=8F=AC=EC=9E=A5=20=EB=8B=A4?= =?UTF-8?q?=EA=B0=81=ED=98=95=20=ED=95=9C=20=EC=9E=A5=20=EC=B1=84=EC=9B=80?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=E2=80=94=20B07=20=EB=8F=84=EB=A9=B4=20?= =?UTF-8?q?=EA=B2=B9=EC=84=A0=20=EC=97=86=EC=9D=8C(88-3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt --- .../B06_Section_UI_Cross_Design_Surface.ts | 21 +++++++++---------- .../B06_Section_UI_Style_Cross_Areas.css | 6 +++--- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/B06_Section/B06_Section_UI_Cross_Design_Surface.ts b/B06_Section/B06_Section_UI_Cross_Design_Surface.ts index dca4ed947..4355fab5c 100644 --- a/B06_Section/B06_Section_UI_Cross_Design_Surface.ts +++ b/B06_Section/B06_Section_UI_Cross_Design_Surface.ts @@ -92,18 +92,17 @@ export function appendPavementOverlay( const polygon = document.createElementNS(SVG_NS, "polygon"); polygon.setAttribute("points", points); polygon.setAttribute("class", "b06-chart__pavement"); - svg.append(polygon); const spec = entry?.spec; const mark = spec ? PAVE_MARKS[spec] : undefined; - if (!spec || !mark) continue; - const id = `b06-pave-hatch-${(paveSeq += 1)}`; - const defs = document.createElementNS(SVG_NS, "defs"); - defs.innerHTML = `${mark.marks}`; - const hatch = document.createElementNS(SVG_NS, "polygon"); - hatch.setAttribute("points", points); - hatch.setAttribute("class", "b06-chart__pavement-hatch"); - hatch.setAttribute("fill", `url(#${id})`); - hatch.dataset.paveSpec = spec; - svg.append(defs, hatch); + if (spec && mark) { + // 무늬는 바탕 채움째 한 패턴 — 다각형 한 장(B07 도면 수확이 겹선을 안 담음) + const id = `b06-pave-hatch-${(paveSeq += 1)}`; + const defs = document.createElementNS(SVG_NS, "defs"); + defs.innerHTML = `${mark.marks}`; + svg.append(defs); + polygon.style.fill = `url(#${id})`; + polygon.dataset.paveSpec = spec; + } + svg.append(polygon); } } diff --git a/B06_Section/B06_Section_UI_Style_Cross_Areas.css b/B06_Section/B06_Section_UI_Style_Cross_Areas.css index 390b8c475..ff1b95e00 100644 --- a/B06_Section/B06_Section_UI_Style_Cross_Areas.css +++ b/B06_Section/B06_Section_UI_Style_Cross_Areas.css @@ -185,9 +185,9 @@ stroke-width: 1; } -/* 노면공 포장사양 무늬(88): 채움 박스 위에 무늬만 한 겹 — 콘크리트 빗금 · 아스콘 점 · 쇄석 돌 */ -.b06-chart__pavement-hatch { - stroke: none; +/* 노면공 포장사양 무늬(88): 포장 박스 채움 = 바탕 + 무늬 — 콘크리트 빗금 · 아스콘 점 · 쇄석 돌 */ +.b06-chart__pave-bg { + fill: color-mix(in srgb, var(--color-text-secondary) 30%, transparent); } .b06-chart__pave-mark {