diff --git a/src/hooks/roofcover/useAuxiliaryDrawing.js b/src/hooks/roofcover/useAuxiliaryDrawing.js index 46311ad9..e9aa7d93 100644 --- a/src/hooks/roofcover/useAuxiliaryDrawing.js +++ b/src/hooks/roofcover/useAuxiliaryDrawing.js @@ -21,7 +21,7 @@ import { useAdsorptionPoint } from '@/hooks/useAdsorptionPoint' import { useSwal } from '@/hooks/useSwal' import { booleanPointInPolygon } from '@turf/turf' import { usePopup } from '@/hooks/usePopup' -import { calculateAngle } from '@/util/qpolygon-utils' +import { calculateAngle, isSamePoint } from '@/util/qpolygon-utils' import { QPolygon } from '@/components/fabric/QPolygon' import { POLYGON_TYPE } from '@/common/common' @@ -587,7 +587,7 @@ export function useAuxiliaryDrawing(id) { return } // 기존 점과 겹치는지 확인 - if (interSectionPointsWithRoofLines.some((point) => point.x === intersectionPoint.x && point.y === intersectionPoint.y)) { + if (interSectionPointsWithRoofLines.some((point) => isSamePoint(point, intersectionPoint))) { return } diff --git a/src/util/qpolygon-utils.js b/src/util/qpolygon-utils.js index 118e67dc..e373df8d 100644 --- a/src/util/qpolygon-utils.js +++ b/src/util/qpolygon-utils.js @@ -1445,7 +1445,7 @@ function removeDuplicatePolygons(polygons) { return uniquePolygons } -const isSamePoint = (a, b) => { +export const isSamePoint = (a, b) => { return Math.abs(Math.round(a.x) - Math.round(b.x)) <= 1 && Math.abs(Math.round(a.y) - Math.round(b.y)) <= 1 }