오브젝트 설치 이상 수정 및 그림자 중복 허용
This commit is contained in:
parent
7973c654b5
commit
1207195d04
@ -152,11 +152,17 @@ export function useObjectBatch({ isHidden, setIsHidden }) {
|
|||||||
|
|
||||||
rect.set({ width: Math.abs(width), height: Math.abs(height) })
|
rect.set({ width: Math.abs(width), height: Math.abs(height) })
|
||||||
|
|
||||||
|
// 마우스를 왼쪽으로 드래그한 경우 left를 현재 포인터 위치로 설정
|
||||||
if (width < 0) {
|
if (width < 0) {
|
||||||
rect.set({ left: Math.abs(pointer.x) })
|
rect.set({ left: pointer.x })
|
||||||
|
} else {
|
||||||
|
rect.set({ left: origX })
|
||||||
}
|
}
|
||||||
|
// 마우스를 위쪽으로 드래그한 경우 top을 현재 포인터 위치로 설정
|
||||||
if (height < 0) {
|
if (height < 0) {
|
||||||
rect.set({ top: Math.abs(pointer.y) })
|
rect.set({ top: pointer.y })
|
||||||
|
} else {
|
||||||
|
rect.set({ top: origY })
|
||||||
}
|
}
|
||||||
|
|
||||||
canvas?.renderAll()
|
canvas?.renderAll()
|
||||||
@ -179,7 +185,8 @@ export function useObjectBatch({ isHidden, setIsHidden }) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isCrossChecked) {
|
// 그림자(SHADOW)는 중복 설치 허용, 개구(OPENING)만 중복 체크
|
||||||
|
if (!isCrossChecked && buttonAct === 1) {
|
||||||
const preObjects = canvas?.getObjects().filter((obj) => obj.name === BATCH_TYPE.OPENING || obj.name === BATCH_TYPE.SHADOW)
|
const preObjects = canvas?.getObjects().filter((obj) => obj.name === BATCH_TYPE.OPENING || obj.name === BATCH_TYPE.SHADOW)
|
||||||
const preObjectsArray = preObjects.map((obj) => rectToPolygon(obj))
|
const preObjectsArray = preObjects.map((obj) => rectToPolygon(obj))
|
||||||
const isCross = preObjectsArray.some((object) => turf.booleanOverlap(pointsToTurfPolygon(object), rectPolygon))
|
const isCross = preObjectsArray.some((object) => turf.booleanOverlap(pointsToTurfPolygon(object), rectPolygon))
|
||||||
@ -266,7 +273,8 @@ export function useObjectBatch({ isHidden, setIsHidden }) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isCrossChecked) {
|
// 그림자(SHADOW)는 중복 설치 허용, 개구(OPENING)만 중복 체크
|
||||||
|
if (!isCrossChecked && buttonAct === 1) {
|
||||||
const preObjects = canvas?.getObjects().filter((obj) => obj.name === BATCH_TYPE.OPENING || obj.name === BATCH_TYPE.SHADOW)
|
const preObjects = canvas?.getObjects().filter((obj) => obj.name === BATCH_TYPE.OPENING || obj.name === BATCH_TYPE.SHADOW)
|
||||||
const preObjectsArray = preObjects.map((obj) => rectToPolygon(obj))
|
const preObjectsArray = preObjects.map((obj) => rectToPolygon(obj))
|
||||||
const isCross = preObjectsArray.some((object) => turf.booleanOverlap(pointsToTurfPolygon(object), rectPolygon))
|
const isCross = preObjectsArray.some((object) => turf.booleanOverlap(pointsToTurfPolygon(object), rectPolygon))
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user