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 473284a3..3656c2e4 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue @@ -1606,9 +1606,9 @@ export default { getTextLines: this.getEllipticalROIToolTextLines }) toolGroup.addTool(FixedRadiusCircleROITool.toolName, { - radius: Number.isFinite(this.taskInfo.CircleRadius) ? this.taskInfo.CircleRadius : 1, - getTextLines: this.getCircleROIToolTextLines - }) + radius: Number.isFinite(this.taskInfo.CircleRadius) ? this.taskInfo.CircleRadius : 1, + getTextLines: this.getCircleROIToolTextLines + }) toolGroup.addTool(AngleTool.toolName, { getTextLines: this.getAngleToolTextLines }) @@ -3160,8 +3160,10 @@ export default { this.fullScreenIndex = null this.isMPR = false obj.isChange = false - this.$refs[`${this.viewportKey}-${this.activeViewportIndex}`][0].setSeriesInfo(obj) return this.$nextTick(() => { + DicomEvent.$emit('activeSeries', obj) + DicomEvent.$emit('changeMPR') + this.$refs[`${this.viewportKey}-${this.activeViewportIndex}`][0].setSeriesInfo(obj) const renderingEngine = getRenderingEngine(renderingEngineId) renderingEngine.resize(true, false) renderingEngine.render() @@ -3851,6 +3853,7 @@ export default { if (series.ImageIds.length <= 5) return this.$confirm(this.$t('trials:reading:confirm:smallNumberOfimage'), this.$t('system:menu:confirm:title:warning'), { type: 'warning' }) + DicomEvent.$emit('changeMPR') if (series.ImageIds.length > 500) { let res = await this.getSystemInfo() if (!res) return false 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 d7b63a23..fae335d8 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/Segmentations.vue @@ -8,24 +8,24 @@
@@ -406,6 +406,7 @@ export default { DicomEvent.$on('activeSeries', (series) => { console.log(series, 'series') let { TaskInfo = {}, Id } = series + if (this.isMPR) return false if (Id === this.series.Id && TaskInfo.VisitTaskId === this.visitInfo.VisitTaskId) return false this.series = series this.$emit("update:curSegSeries", Object.assign(series, {})) @@ -419,6 +420,12 @@ export default { if (viewportId !== `${this.viewportKey}-${this.activeViewportIndex}`) return false this.loading = false }) + DicomEvent.$on('changeMPR', () => { + if (this.loading) return false + // if (viewportId !== `${this.viewportKey}-${this.activeViewportIndex}`) return false + this.segmentationId = this.segmentList[0].segmentationId + this.segmentIndex = this.segmentList[0] ? this.segmentList[0].segments[0].segmentIndex : null + }) const digitPlaces = Number(localStorage.getItem('digitPlaces')) this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces // document.addEventListener("click", () => { @@ -605,6 +612,7 @@ export default { if (this.segmentList.length <= 0) return false if (this.curSegment.lock) return false if (this.histogramVisible && !this.ThresholdTools.includes(toolName)) return false + if (['viewport-MPR-1', 'viewport-MPR-2'].includes(`${this.viewportKey}-${this.activeViewportIndex}`)) return false const toolGroupId = this.isMPR ? this.volumeToolGroupId : `${this.viewportKey}-${this.activeViewportIndex}` const toolGroup = ToolGroupManager.getToolGroup(toolGroupId) if (this.activeTool === toolName) { 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 10ffe9af..d828e55b 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue @@ -403,12 +403,12 @@ export default { let spacing = volume ? volume.spacing : [] this.imageInfo.sliceThickness = type === 'AXIAL' ? spacing[2] : spacing[0] this.getOrientationMarker() - if (this.series && this.series.Id) { - let annotations = cornerstoneTools.annotation.state.getAllAnnotations().filter(item => item.metadata.toolName !== 'ScaleOverlay' && item.metadata.volumeId !== this.volumeId && !item.metadata.segmentationId && item.seriesId !== this.series.Id) - annotations.forEach(item => { - cornerstoneTools.annotation.state.removeAnnotation(item.annotationUID) - }) - } + // if (this.series && this.series.Id) { + // let annotations = cornerstoneTools.annotation.state.getAllAnnotations().filter(item => item.metadata.toolName !== 'ScaleOverlay' && item.metadata.volumeId !== this.volumeId && !item.metadata.segmentationId && item.seriesId !== this.series.Id) + // annotations.forEach(item => { + // cornerstoneTools.annotation.state.removeAnnotation(item.annotationUID) + // }) + // } this.$emit('renderAnnotations', this.series) let properties = viewport.getProperties() if (this.isFusion) {