From 32dcfbf1aeadfeb8d8a8ad6b6d1268a4abc0eb85 Mon Sep 17 00:00:00 2001 From: yoosangwook Date: Fri, 23 Aug 2024 10:04:36 +0900 Subject: [PATCH 1/2] feat: Add link to Canvas Settings in Headers component --- src/components/Headers.jsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/Headers.jsx b/src/components/Headers.jsx index 07caed71..331e899c 100644 --- a/src/components/Headers.jsx +++ b/src/components/Headers.jsx @@ -10,6 +10,7 @@ export default function Headers() {
Intro Playground + Canvas Settings Roof Roof2
From 13cbc12501acb0458d4018a3903c5a1ec9248d42 Mon Sep 17 00:00:00 2001 From: "hyojun.choi" Date: Fri, 23 Aug 2024 13:16:02 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=EC=A0=90=EC=84=A0=20=EC=B6=94=EA=B0=80=20?= =?UTF-8?q?=ED=9B=84=20=EC=97=90=EB=94=94=ED=8C=85=EB=AA=A8=EB=93=9C=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=20=EC=8B=9C=20=EC=9E=91=EC=97=85=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Roof2.jsx | 19 +++++++- src/hooks/useCanvas.js | 8 ++-- src/hooks/useCanvasEvent.js | 3 -- src/hooks/useMode.js | 93 +++++++++++++++++++++++++++++++------ src/store/canvasAtom.js | 10 ++++ 5 files changed, 111 insertions(+), 22 deletions(-) diff --git a/src/components/Roof2.jsx b/src/components/Roof2.jsx index 472d5452..9e3d7589 100644 --- a/src/components/Roof2.jsx +++ b/src/components/Roof2.jsx @@ -1,7 +1,7 @@ 'use client' import { useCanvas } from '@/hooks/useCanvas' -import { useEffect, useState, useRef } from 'react' +import { useEffect, useRef, useState } from 'react' import { v4 as uuidv4 } from 'uuid' import { useMode } from '@/hooks/useMode' import { Button } from '@nextui-org/react' @@ -59,6 +59,8 @@ export default function Roof2(props) { const wall = useRecoilValue(wallState) + const [scale, setScale] = useState(1) + //canvas 썸네일 const [thumbnails, setThumbnails] = useState([]) const thumbnailProps = { @@ -547,6 +549,16 @@ export default function Roof2(props) { setCompass(degree) } + const changeLength = (e) => { + setScale(e) + const polygon = canvas?.getActiveObject() + if (polygon.type !== 'QPolygon') { + return + } + + canvas?.renderAll() + } + return ( <> {canvas && ( @@ -643,7 +655,7 @@ export default function Roof2(props) {