From d11504756389553463ce0576d16a95ff6cc16728 Mon Sep 17 00:00:00 2001 From: lzp Date: Thu, 12 Mar 2026 15:51:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=B1=E5=BA=A6=E7=94=BB=E5=B8=83=20?= =?UTF-8?q?=E7=9F=A9=E5=BD=A2=E5=B7=A5=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/depth-header-tools.vue | 11 +- .../components/layer-panel/layer-item.vue | 1 - .../Canvas/DepthCanvas/depth-canvas.vue | 36 +- src/components/Canvas/DepthCanvas/index.vue | 2 +- .../DepthCanvas/manager/CanvasManager.ts | 13 +- .../DepthCanvas/manager/LayerManager.ts | 10 +- .../DepthCanvas/manager/RectToolManager.ts | 56 +++ .../manager/events/CanvasEventManager.js | 446 ++++++++++-------- .../Canvas/DepthCanvas/tools/exportMethod.js | 16 + 9 files changed, 378 insertions(+), 213 deletions(-) create mode 100644 src/components/Canvas/DepthCanvas/manager/RectToolManager.ts diff --git a/src/components/Canvas/DepthCanvas/components/depth-header-tools.vue b/src/components/Canvas/DepthCanvas/components/depth-header-tools.vue index 2ba172a..d153721 100644 --- a/src/components/Canvas/DepthCanvas/components/depth-header-tools.vue +++ b/src/components/Canvas/DepthCanvas/components/depth-header-tools.vue @@ -15,10 +15,13 @@ Export - - + @@ -32,7 +35,7 @@ zoom: { default: 1, type: Number }, step: { default: 0.1, type: Number } }) - const emit = defineEmits(['export', 'import']) + const emit = defineEmits(['export', 'export-local', 'import-local', 'export-close']) const importLocalImage = inject('importLocalImage') as () => void const stateManager = inject('stateManager') as any const toolManager = inject('toolManager') as any diff --git a/src/components/Canvas/DepthCanvas/components/layer-panel/layer-item.vue b/src/components/Canvas/DepthCanvas/components/layer-panel/layer-item.vue index a3d62c6..7f45ef1 100644 --- a/src/components/Canvas/DepthCanvas/components/layer-panel/layer-item.vue +++ b/src/components/Canvas/DepthCanvas/components/layer-panel/layer-item.vue @@ -61,7 +61,6 @@ } const onClickLayer = () => { layerManager.setActiveID(props.layer.info.id) - toolManager.setTool(OperationType.SELECT) } diff --git a/src/components/Canvas/DepthCanvas/depth-canvas.vue b/src/components/Canvas/DepthCanvas/depth-canvas.vue index 41fae1f..c4a086f 100644 --- a/src/components/Canvas/DepthCanvas/depth-canvas.vue +++ b/src/components/Canvas/DepthCanvas/depth-canvas.vue @@ -6,7 +6,12 @@