외벽선 작성 닫으면 startPoint 제거, 지붕면 할당 시 이미 할당된 지붕은 재할당 안하도록 수정
This commit is contained in:
parent
7fc06799b6
commit
0dd6e7d707
@ -159,6 +159,7 @@ export const SAVE_KEY = [
|
||||
'arrow',
|
||||
'surfaceCompass',
|
||||
'moduleCompass',
|
||||
'isFixed',
|
||||
]
|
||||
|
||||
export const OBJECT_PROTOTYPE = [fabric.Line.prototype, fabric.Polygon.prototype, fabric.Triangle.prototype]
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { useEffect, useRef } from 'react'
|
||||
import { distanceBetweenPoints } from '@/util/canvas-util'
|
||||
import { useRecoilState, useRecoilValue, useSetRecoilState } from 'recoil'
|
||||
import { useRecoilState, useRecoilValue, useResetRecoilState, useSetRecoilState } from 'recoil'
|
||||
import {
|
||||
adsorptionPointAddModeState,
|
||||
adsorptionPointModeState,
|
||||
@ -65,6 +65,7 @@ export function useOuterLineWall(id, propertiesId) {
|
||||
const [arrow1, setArrow1] = useRecoilState(outerLineArrow1State)
|
||||
const [arrow2, setArrow2] = useRecoilState(outerLineArrow2State)
|
||||
const [points, setPoints] = useRecoilState(outerLinePointsState)
|
||||
const resetPoints = useResetRecoilState(outerLinePointsState)
|
||||
const [type, setType] = useRecoilState(outerLineTypeState)
|
||||
const [angle1, setAngle1] = useRecoilState(outerLineAngle1State)
|
||||
const [angle2, setAngle2] = useRecoilState(outerLineAngle2State)
|
||||
@ -88,6 +89,13 @@ export function useOuterLineWall(id, propertiesId) {
|
||||
clear()
|
||||
return () => {
|
||||
initEvent()
|
||||
|
||||
canvas
|
||||
.getObjects()
|
||||
.filter((obj) => obj.name === 'startPoint')
|
||||
.forEach((obj) => {
|
||||
canvas.remove(obj)
|
||||
})
|
||||
}
|
||||
}, [verticalHorizontalMode, points, adsorptionPointAddMode, adsorptionPointMode, adsorptionRange, interval, tempGridMode])
|
||||
|
||||
|
||||
@ -176,7 +176,7 @@ export function useRoofAllocationSetting(id) {
|
||||
}
|
||||
|
||||
const apply = () => {
|
||||
const roofBases = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.ROOF)
|
||||
const roofBases = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.ROOF && !obj.isFixed)
|
||||
const wallLines = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.WALL)
|
||||
roofBases.forEach((roofBase) => {
|
||||
try {
|
||||
@ -199,6 +199,10 @@ export function useRoofAllocationSetting(id) {
|
||||
const roofs = canvas.getObjects().filter((obj) => obj.name === 'roof')
|
||||
|
||||
roofs.forEach((roof) => {
|
||||
if (roof.isFixed) return
|
||||
roof.set({
|
||||
isFixed: true,
|
||||
})
|
||||
setSurfaceShapePattern(roof, roofDisplay.column)
|
||||
drawDirectionArrow(roof)
|
||||
})
|
||||
|
||||
@ -305,7 +305,6 @@ export const usePolygon = () => {
|
||||
}
|
||||
|
||||
let text = ''
|
||||
console.log('direction', direction, surfaceCompass, moduleCompass)
|
||||
|
||||
const compassType = (375 - moduleCompass) / 15
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user