diff --git a/B06_Section/B06_Section_UI_Page.ts b/B06_Section/B06_Section_UI_Page.ts index 900c0e7d..d21dccf7 100644 --- a/B06_Section/B06_Section_UI_Page.ts +++ b/B06_Section/B06_Section_UI_Page.ts @@ -62,6 +62,7 @@ import { wallSpecsFrom, type WallStructureInput, } from "@util/common_util_structure_walls"; +import { applyStructureAreaRows, structureAreaRows } from "./B06_Section_Structure_Layouts"; import { fetchStructureTypes, readPendingStructures, @@ -361,6 +362,15 @@ export async function renderB06ProfileCross(root: HTMLElement): Promise { if (!projectId || currentRouteId === null) return; try { await applyDraftWalls(sectionDetail); + // 면적을 **먼저** 다시 얹는다 — 유토곡선은 카드보다 앞서 계산되므로, 카드 렌더가 + // 고치는 것만으로는 곡선이 옛 면적으로 남는다(2026-09-06 실측: 카드는 바뀌는데 + // 최종 누가토량이 그대로였음). + if (sectionDetail) { + applyStructureAreaRows( + sectionDetail.cross_sections, + structureAreaRows(sectionDetail.cross_sections), + ); + } renderSectionDetail(); } catch (error) { const detail = error instanceof Error ? ` ${error.message}` : "";