From 6c0e9c5c0d66e26efb402f0814851466e0e55aba Mon Sep 17 00:00:00 2001 From: "hyojun.choi" Date: Fri, 21 Feb 2025 11:27:51 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B0=B0=EC=B9=98=EB=A9=B4=EC=9C=BC=EB=A1=9C?= =?UTF-8?q?=20=EB=8F=8C=EC=95=84=EC=98=A4=EB=8A=94=20=EA=B2=BD=EC=9A=B0=20?= =?UTF-8?q?=EC=A7=80=EB=B6=95=20=EC=A0=95=EC=83=81=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/floor-plan/CanvasMenu.jsx | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/components/floor-plan/CanvasMenu.jsx b/src/components/floor-plan/CanvasMenu.jsx index db11d3d1..8ccfff42 100644 --- a/src/components/floor-plan/CanvasMenu.jsx +++ b/src/components/floor-plan/CanvasMenu.jsx @@ -49,6 +49,7 @@ import JA from '@/locales/ja.json' import { QcastContext } from '@/app/QcastProvider' import { useRoofFn } from '@/hooks/common/useRoofFn' +import { usePolygon } from '@/hooks/usePolygon' export default function CanvasMenu(props) { const { menuNumber, setMenuNumber } = props const pathname = usePathname() @@ -106,6 +107,7 @@ export default function CanvasMenu(props) { const { setIsGlobalLoading } = useContext(QcastContext) const { setSurfaceShapePattern } = useRoofFn() + const { drawDirectionArrow } = usePolygon() //임시 const { selectedPlan } = usePlan() @@ -175,6 +177,17 @@ export default function CanvasMenu(props) { case 3: if (menuNumber > menu.index) { const modules = canvas.getObjects().filter((module) => module.name === POLYGON_TYPE.MODULE) + + canvas + .getObjects() + .filter((obj) => obj.name === POLYGON_TYPE.ROOF) + .forEach((roof) => { + roof.set({ selectable: true }) + delete roof.moduleCompass + drawDirectionArrow(roof) + setSurfaceShapePattern(roof, null, false, roof.roofMaterial) + }) + if (modules.length > 0) { swalFire({ text: getMessage('module.delete.confirm'), @@ -187,19 +200,13 @@ export default function CanvasMenu(props) { (obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE || obj.name === POLYGON_TYPE.MODULE || obj.name === POLYGON_TYPE.OBJECT_SURFACE, ) + if (moduleSurfacesArray.length > 0) { moduleSurfacesArray.forEach((moduleSurface) => { canvas.remove(moduleSurface) }) canvas.renderAll() onClickNav(menu) - canvas - .getObjects() - .filter((obj) => obj.name === POLYGON_TYPE.ROOF) - .forEach((roof) => { - roof.set({ selectable: true }) - setSurfaceShapePattern(roof, null, false, roof.roofMaterial) - }) } setType('surface') },