From 94f18d152584dcdc2961c953b1174320c6b16efc Mon Sep 17 00:00:00 2001 From: ysCha Date: Wed, 8 Apr 2026 16:41:49 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9B=80=EC=A7=81=EC=9D=B8=EB=9D=BC=EC=9D=B8?= =?UTF-8?q?=EA=B7=B8=EB=8C=80=EB=A1=9C=EC=9C=A0=EC=A7=80offset?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/roofcover/useEavesGableEdit.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/hooks/roofcover/useEavesGableEdit.js b/src/hooks/roofcover/useEavesGableEdit.js index e6397091..840ab9fc 100644 --- a/src/hooks/roofcover/useEavesGableEdit.js +++ b/src/hooks/roofcover/useEavesGableEdit.js @@ -216,7 +216,18 @@ export function useEavesGableEdit(id) { const roofBases = canvas?.getObjects().filter((obj) => obj.name === POLYGON_TYPE.ROOF && !obj.isFixed) + // moveLine 속성 보존 (offset 변경 후에도 마루이동 유지) + const savedMoveProps = {} roofBases.forEach((roof) => { + if (roof.moveFlowLine || roof.moveUpDown) { + savedMoveProps[roof.id] = { + moveFlowLine: roof.moveFlowLine, + moveUpDown: roof.moveUpDown, + moveDirect: roof.moveDirect, + moveSelectLine: roof.moveSelectLine, + movePosition: roof.movePosition, + } + } roof.innerLines.forEach((line) => { removeLine(line) }) @@ -231,6 +242,11 @@ export function useEavesGableEdit(id) { wallLines.forEach((wallLine) => { addPitchTextsByOuterLines() const roof = drawRoofPolygon(wallLine) + // moveLine 속성 복원 + const saved = savedMoveProps[roof.id] + if (saved) { + Object.assign(roof, saved) + } canvas?.renderAll() roof.drawHelpLine(settingModalFirstOptions) })