From 5c76bda1e7970f2d229c51a90b27e496c9b63fed Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Thu, 26 Mar 2026 16:05:34 +0800
Subject: [PATCH] =?UTF-8?q?=E5=88=86=E5=89=B2=E6=B7=BB=E5=8A=A0=E9=98=88?=
=?UTF-8?q?=E5=80=BC=E5=B7=A5=E5=85=B7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/icons/svg/thresholecircle.svg | 1 +
.../reading/dicoms3D/components/ReadPage.vue | 33 ++--
.../dicoms3D/components/Segmentations.vue | 170 +++++++++++++++---
.../dicoms3D/components/VolumeViewport.vue | 3 +-
4 files changed, 166 insertions(+), 41 deletions(-)
create mode 100644 src/icons/svg/thresholecircle.svg
diff --git a/src/icons/svg/thresholecircle.svg b/src/icons/svg/thresholecircle.svg
new file mode 100644
index 00000000..545fb0f5
--- /dev/null
+++ b/src/icons/svg/thresholecircle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
index c09e6c45..4f5bb967 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
@@ -273,11 +273,7 @@
-
@@ -308,7 +304,7 @@
:class="['viewports-box', isFusion || isMPR ? 'viewports-box-down' : '', fullScreenIndex !== null ? 'viewports-box-full-screen' : '']"
:style="gridStyle">
+ :volumeToolGroupId="volumeToolGroupId" :viewportKey="viewportKey" :global-loading.sync="loading"
+ :loadingText.sync="loadingText" :rendering-engine-id="renderingEngineId"
+ :activeViewportIndex="activeViewportIndex" :activeTool.sync="activeTool"
+ :actionConfiguration="actionConfiguration" @setToolsPassive="setToolsPassive"
+ @resetQuestion="resetQuestion" />
@@ -1379,6 +1376,20 @@ export default {
}
)
+ toolGroup.addToolInstance(
+ 'ThresholdCircle',
+ BrushTool.toolName,
+ {
+ activeStrategy: 'THRESHOLD_INSIDE_CIRCLE',
+ }
+ )
+ toolGroup.addToolInstance(
+ 'ThresholdSphere',
+ BrushTool.toolName,
+ {
+ activeStrategy: 'THRESHOLD_INSIDE_SPHERE',
+ }
+ )
toolGroup.addTool(LabelMapEditWithContourTool.toolName);
toolGroup.addTool(SegmentBidirectionalTool.toolName);
}
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue
index 7379dc43..22598def 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue
@@ -12,6 +12,12 @@
@click.prevent="setToolActive('LabelMapEditWithContour')">
+
+
+
-->
-
+
{{ $t('trials:reading:Segmentations:title:EraserConfig') }}
+
+ {{ $t('trials:reading:Segmentations:title:thresholdType') }}
+ setToolActive(key)">
+
+ {{ $t(`trials:reading:Segmentations:radioButton:${tool}`) }}
+
+
+
+
+ {{ $t('trials:reading:Segmentations:title:isDynamic') }}
+
+
+ {{ $t('trials:reading:Segmentations:radioButton:Dynamic') }}
+
+
+ {{ $t('trials:reading:Segmentations:radioButton:Rang') }}
+
+
+
+
+
{{ $t('trials:reading:Segmentations:title:range') }}
+
+
+ --
+
+
+
@@ -84,7 +120,7 @@
{{
$t('trials:reading:Segmentations:title:InactiveSegmentationsShow')
- }}
+ }}