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 c598008f..3e4fd3f9 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue @@ -1711,6 +1711,7 @@ export default { enabled: true, lineLengthInPx: this.fusionCrosshairStyle.lineLength, }, + mipViewportIds: ['viewport-fusion-3'], }) toolGroup.setToolActive(VolumeRotateTool.toolName, { diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/tools/FusionJumpToPointTool.js b/src/views/trials/trials-panel/reading/dicoms3D/components/tools/FusionJumpToPointTool.js index 364e4684..27b06361 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/tools/FusionJumpToPointTool.js +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/tools/FusionJumpToPointTool.js @@ -25,6 +25,7 @@ class FusionJumpToPointTool extends AnnotationDisplayTool { enabled: true, lineLengthInPx: 20, }, + mipViewportIds: [], }, }) { super(toolProps, defaultToolProps) @@ -77,7 +78,10 @@ class FusionJumpToPointTool extends AnnotationDisplayTool { const annotation = this._getViewportCrosshairAnnotation(viewport) const sourceViewportId = this.dragSourceViewportId || annotation?.data?.sourceViewportId || viewport.id - this.setPoint(worldPoint, sourceViewportId, renderingEngine.id) + const sourceIsMip = this._isMipViewportId(viewport.id) + this.setPoint(worldPoint, sourceViewportId, renderingEngine.id, { + jumpToTargetViewports: sourceIsMip, + }) evt.preventDefault?.() } @@ -497,6 +501,11 @@ class FusionJumpToPointTool extends AnnotationDisplayTool { return fallbackColor || '#6fb9ff' } + _isMipViewportId(viewportId) { + const mipViewportIds = this.configuration?.mipViewportIds + return Array.isArray(mipViewportIds) && mipViewportIds.includes(viewportId) + } + _normalizeAppearance(appearance = {}, sourceViewportId) { const lineWidth = Number.isFinite(appearance.lineWidth) ? appearance.lineWidth : 2 const lineLength = Number.isFinite(appearance.lineLength) ? appearance.lineLength : 9