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
+ }
+ }
}