From 717c5a6529601deba9ded8150840a3b36a6c684d Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Mon, 11 May 2026 13:58:51 +0800
Subject: [PATCH] =?UTF-8?q?=E5=88=86=E5=89=B2=E6=81=A2=E5=A4=8D=E9=97=AE?=
=?UTF-8?q?=E9=A2=98=E8=A7=A3=E5=86=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../dicoms3D/components/Segmentations.vue | 28 +++++++++----------
1 file changed, 14 insertions(+), 14 deletions(-)
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 44a6db7a..01d4ba30 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue
@@ -127,7 +127,7 @@
{{
$t('trials:reading:Segmentations:title:InactiveSegmentationsShow')
- }}
+ }}
@@ -300,7 +300,7 @@
{{
$t('trials:reading:Segmentations:button:recovery')
- }}
+ }}
@@ -339,6 +339,7 @@ const { segmentation: segmentationUtils } = CStUtils;
const { cache, getRenderingEngine, imageLoader, eventTarget, metaData, utilities: csUtils, volumeLoader } = cornerstone;
// const { downloadDICOMData } = cornerstoneAdapters.helpers;
const { Cornerstone3D } = cornerstoneAdapters.adaptersSEG;
+
const searchDataDefault = () => {
return {
SegmentationId: null,
@@ -703,7 +704,6 @@ export default {
},
setToolActive(toolName) {
- // if (!this.series.TaskInfo || this.series.TaskInfo.VisitTaskId !== this.visitInfo.VisitTaskId) return false
if (this.segmentList.length <= 0) return false
if (this.curSegment.lock) return false
if (this.isMPR) return false
@@ -746,13 +746,8 @@ export default {
for (let j = 0; j < arr.length; j++) {
let item = arr[j]
item.bidirectionalView = view
- // let bidirectional = annotation.state.getAllAnnotations().find(i => i.metadata.segmentationId === item.segmentationId && i.metadata.segmentIndex === item.segmentIndex && i.metadata.toolName === "SegmentBidirectional");
- // item.bidirectionalView = view
- // if (!bidirectional) continue
- // annotation.visibility.setAnnotationVisibility(bidirectional.annotationUID, view)
}
DicomEvent.$emit('viewBidirectional', arr)
- // this.resetViewport()
},
async jumpBidirectional(item) {
DicomEvent.$emit('jumpBidirectional', item)
@@ -806,16 +801,25 @@ export default {
if (res.IsSuccess) {
segmentation.removeSegmentation(this.segmentationId)
segmentation.state.removeSegmentation(this.segmentationId)
+ let annotations = annotation.state.getAllAnnotations().filter(item => item.metadata.segmentationId && this.segmentationId === item.metadata.segmentationId && item.metadata.toolName === "SegmentBidirectional");
+ annotations.forEach(item => {
+ annotation.state.removeAnnotation(item.annotationUID)
+ })
let volume = cache.getVolume(this.segmentationId)
// 1. 销毁 Volume 实例
volume.destroy();
// 2. 从缓存中移除
volume.removeFromCache();
+ let imageId = null
if (this.curSegmentGroup.oldSegUrl) {
- cache.removeImageLoadObject(`wadouri:${this.OSSclientConfig.basePath}${this.curSegmentGroup.oldSegUrl}`)
+ imageId = `wadouri:${this.OSSclientConfig.basePath}${this.curSegmentGroup.oldSegUrl}`
this.curSegmentGroup.oldSegUrl = null
} else {
- cache.removeImageLoadObject(`wadouri:${this.OSSclientConfig.basePath}${this.curSegmentGroup.segUrl}`)
+ imageId = `wadouri:${this.OSSclientConfig.basePath}${this.curSegmentGroup.segUrl}`
+
+ }
+ if (imageId && cache.getImage(imageId)) {
+ cache.removeImageLoadObject(imageId)
}
this.getSegmentation(this.segmentationId)
DicomEvent.$emit('renderSegmentationBychangeSegmention')
@@ -854,16 +858,12 @@ export default {
}
},
selectSegmentGroup(s) {
- // segmentation.activeSegmentation.setActiveSegmentation(`${this.viewportKey}-${this.activeViewportIndex}`, this.segmentationId)
this.$emit('setToolsPassive')
this.segmentIndex = null;
let segment = s ? s : this.segmentList.find(item => item.segmentationId === this.segmentationId).segments[0]
this.$nextTick(() => {
this.selectSegment(segment)
})
- // this.segmentIndex = segment.segmentIndex
- // this.selectSegment(segment, s ? false : true)
- // this.readingSegmentByConfig()
},
getSegmentationName(num = 1) {
let defaultSegmentationName = this.trialCriterion.DefaultSegmentName.SegmentationName