diff --git a/src/views/Editor/Canvas/MouseSelection.vue b/src/views/Editor/Canvas/MouseSelection.vue index 9863fda2..a40b0312 100644 --- a/src/views/Editor/Canvas/MouseSelection.vue +++ b/src/views/Editor/Canvas/MouseSelection.vue @@ -27,11 +27,11 @@ defineProps<{ z-index: 200; &.quadrant-1 { - transform-origin: 0 0; + transform-origin: 50% 0; transform: rotate(180deg); } &.quadrant-2 { - transform-origin: 50% 0; + transform-origin: 0 0; transform: rotate(180deg); } &.quadrant-3 { diff --git a/src/views/Editor/Canvas/hooks/useMouseSelection.ts b/src/views/Editor/Canvas/hooks/useMouseSelection.ts index d8b53a4a..395311b8 100644 --- a/src/views/Editor/Canvas/hooks/useMouseSelection.ts +++ b/src/views/Editor/Canvas/hooks/useMouseSelection.ts @@ -60,8 +60,8 @@ export default (elementList: Ref, viewportRef: Ref 0 && offsetHeight > 0 ) quadrant = 4 - else if ( offsetWidth < 0 && offsetHeight < 0 ) quadrant = 1 - else if ( offsetWidth > 0 && offsetHeight < 0 ) quadrant = 2 + else if ( offsetWidth < 0 && offsetHeight < 0 ) quadrant = 2 + else if ( offsetWidth > 0 && offsetHeight < 0 ) quadrant = 1 else if ( offsetWidth < 0 && offsetHeight > 0 ) quadrant = 3 // 更新框选范围 @@ -98,13 +98,13 @@ export default (elementList: Ref, viewportRef: Ref mouseSelectionTop && maxY < mouseSelectionTop + mouseSelectionHeight } - else if (mouseSelectionQuadrant.value === 1) { + else if (mouseSelectionQuadrant.value === 2) { isInclude = minX > (mouseSelectionLeft - mouseSelectionWidth) && maxX < (mouseSelectionLeft - mouseSelectionWidth) + mouseSelectionWidth && minY > (mouseSelectionTop - mouseSelectionHeight) && maxY < (mouseSelectionTop - mouseSelectionHeight) + mouseSelectionHeight } - else if (mouseSelectionQuadrant.value === 2) { + else if (mouseSelectionQuadrant.value === 1) { isInclude = minX > mouseSelectionLeft && maxX < mouseSelectionLeft + mouseSelectionWidth && minY > (mouseSelectionTop - mouseSelectionHeight) &&