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 546d70e8..dd4f680d 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue @@ -2864,6 +2864,7 @@ export default { this.rows = 1 this.cols = 1 this.activeViewportIndex = 0 + series.curIndex = index if (typeof series === 'object') { seriesArr.push(series) } 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 994adb93..65f9f40b 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue @@ -123,13 +123,14 @@ {{ $t('trials:reading:Segmentations:title:InactiveSegmentationsShow') - }} + }}
{{ index + 1 }}
@@ -392,7 +393,8 @@ export default { digitPlaces: 2, isloaded: false, popoverId: null, - saveLoading: false + saveLoading: false, + popoverVisible: false } }, mounted() { @@ -400,6 +402,7 @@ export default { this.statsKey = getCustomizeStandardsSegmentDicomTools('Labelmap')[0].props.filter(item => item !== 'width' && item !== 'length') // console.log(segmentation, 'segmentation') // console.log(annotation, 'annotation') + console.log(cache, 'cache') eventTarget.addEventListener( 'CORNERSTONE_TOOLS_SEGMENTATION_DATA_MODIFIED', this.segmentationModifiedCallback @@ -674,6 +677,7 @@ export default { // this.viewBidirectional(item.segments, view) }, viewSegment(item, view) { + item.bidirectionalView = view item.view = view this.$emit('setToolsPassive') DicomEvent.$emit('viewSegment', item) @@ -731,6 +735,7 @@ export default { }, async addSegmentGroup() { // let segmentationId = this.$guid(); + this.popoverVisible = false let obj = { name: this.getSegmentationName(), view: true, @@ -826,15 +831,15 @@ export default { segmentIndex: segmentIndex, segmentationId: this.segmentationId, SegmentLabel: this.getSegmentName(item.segments), - color: item.segments.length >= this.colors.length ? this.colors[0] : this.colors[item.segments.length], + color: segmentIndex >= this.colors.length ? this.colors[0] : this.colors[segmentIndex], stats: null, bidirectional: null, bidirectionalView: true, view: true, lock: false } - if (item.segments.length >= this.colors.length) { - let index = item.segments.length % this.colors.length + if (segmentIndex >= this.colors.length) { + let index = segmentIndex % this.colors.length let color = this.randomNearColor(this.colors[index], 4) obj.color = color } @@ -881,6 +886,11 @@ export default { if (!res) return false segmentation.removeSegmentation(this.segmentationId) segmentation.state.removeSegmentation(this.segmentationId) + let volume = cache.getVolume(this.segmentationId) + // 1. 销毁 Volume 实例 + volume.destroy(); + // 2. 从缓存中移除 + volume.removeFromCache(); let groupIndex = this.segmentList.findIndex(item => item.segmentationId === this.segmentationId) this.segmentList.splice(groupIndex, 1) let annotations = annotation.state.getAllAnnotations().filter(item => item.metadata.segmentationId === this.segmentationId); @@ -891,7 +901,7 @@ export default { this.segmentationId = this.segmentList[0].segmentationId; this.selectSegmentGroup() } else { - this.segmentationId = '' + this.segmentationId = null } // this.readingSegmentByConfig() this.resetViewport() diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue index 436b6b4b..d732e1a1 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue @@ -59,10 +59,10 @@
Location: {{ `${Number(imageInfo.location).toFixed(digitPlaces)} mm` - }}
+ }}
Slice Thickness: {{ `${Number(imageInfo.sliceThickness).toFixed(digitPlaces)} mm` - }}
+ }}
WW/WL: {{ imageInfo.wwwc }}
@@ -384,7 +384,7 @@ export default { }, stackNewImage(e) { const { detail } = e - + delete this.series.segment this.series.SliceIndex = detail.imageIndex this.sliderInfo.height = detail.imageIndex * 100 / detail.numberOfSlices const renderingEngine = getRenderingEngine(this.renderingEngineId) @@ -687,6 +687,8 @@ export default { } await renderSegmentation(this.series, this.series.TaskInfo, this.viewportId, this.SegmentConfig, this.renderingEngineId, data.segment, this.actionConfiguration) DicomEvent.$emit('SegmentationLoading', this.viewportId) + console.log(data.segment, 'data.segment') + if (data.segment) return false if (this.series.hasOwnProperty('curIndex')) return this.setFullScreen(this.series.curIndex) this.setFullScreen(Math.ceil((res.volume._imageIds.length - 1) / 2) - 1) } catch (e) { diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue index 30039696..d5dd4d56 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue @@ -210,16 +210,16 @@ @click="operateImageMarker({ operateStateEnum: 21, question })"> {{ $t('dicom3D:CustomizeQuestionFormItem:button:bind') }} - - - {{ $t('dicom3D:CustomizeQuestionFormItem:button:edit') }} - {{ $t('dicom3D:CustomizeQuestionFormItem:button:view') }} + + + {{ $t('dicom3D:CustomizeQuestionFormItem:button:edit') }} + diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue index 4ac87da8..10a48e54 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue @@ -135,17 +135,17 @@ size="mini" type="text" @click="operateImageMarker({ operateStateEnum: 21, question })"> {{ $t('dicom3D:CustomizeQuestionFormItem:button:bind') }} + + + {{ $t('dicom3D:CustomizeQuestionFormItem:button:view') }} + {{ $t('dicom3D:CustomizeQuestionFormItem:button:edit') }} - - - {{ $t('dicom3D:CustomizeQuestionFormItem:button:view') }} -