From b9712351644609e4456ca181880bf8cdd1e72a98 Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Thu, 16 Apr 2026 17:55:33 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BD=93=E6=95=B0=E6=8D=AE=E6=92=AD=E6=94=BE?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../dicoms3D/components/MPRViewport.vue | 26 +++++++++++++++----
.../reading/dicoms3D/components/ReadPage.vue | 4 ++-
.../dicoms3D/components/VolumeViewport.vue | 24 ++++++++++++++---
3 files changed, 44 insertions(+), 10 deletions(-)
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
index b172a179..370deaac 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
@@ -40,10 +40,10 @@
Location: {{
`${Number(imageInfo.location).toFixed(digitPlaces)} mm`
- }}
+ }}
Slice Thickness: {{
`${Number(imageInfo.sliceThickness).toFixed(digitPlaces)} mm`
- }}
+ }}
WW/WL: {{ imageInfo.wwwc }}
@@ -185,6 +185,7 @@ export default {
rotateAngle: 0,
rotateBarLeft: 0,
loading: false,
+ toggleClipPlayTimer: null
}
},
mounted() {
@@ -491,11 +492,20 @@ export default {
this.playClipState = isPlay
const renderingEngine = getRenderingEngine(this.renderingEngineId)
const viewport = renderingEngine.getViewport(this.viewportId)
-
if (isPlay) {
- cornerstoneTools.utilities.cine.playClip(viewport.element, { framesPerSecond, loop: true })
+ this.toggleClipPlayTimer = setInterval(() => {
+ let index = this.series.SliceIndex + 1;
+ if (index > this.imageInfo.total - 1) index = 0
+ csUtils.jumpToSlice(viewport.element, { imageIndex: index });
+
+ }, framesPerSecond)
+ // cornerstoneTools.utilities.cine.playClip(viewport.element, { framesPerSecond, loop: true })
} else {
- cornerstoneTools.utilities.cine.stopClip(viewport.element)
+ if (this.toggleClipPlayTimer) {
+ clearInterval(this.toggleClipPlayTimer)
+ this.toggleClipPlayTimer = null
+ }
+ // cornerstoneTools.utilities.cine.stopClip(viewport.element)
}
},
scrollPage(type) {
@@ -794,6 +804,12 @@ export default {
return `NS: ${this.$store.state.trials.downloadTip}`
}
},
+ destroyed() {
+ if (this.toggleClipPlayTimer) {
+ clearInterval(this.toggleClipPlayTimer)
+ this.toggleClipPlayTimer = null
+ }
+ }
}