Skip to content

Commit 9936626

Browse files
committed
BUG: Apply camera updates with 2D images
Causes zoom sync in the compare widget.
1 parent c786d81 commit 9936626

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

js/lib/viewer.js

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -653,30 +653,6 @@ const ViewerView = widgets.DOMWidgetView.extend({
653653
}
654654
this.model.itkVtkViewer.subscribeViewModeChanged(onViewModeChanged)
655655

656-
const onCameraChanged = macro.throttle(() => {
657-
const camera = new Float32Array(9)
658-
const viewProxy = this.model.itkVtkViewer.getViewProxy()
659-
camera.set(viewProxy.getCameraPosition(), 0)
660-
camera.set(viewProxy.getCameraFocalPoint(), 3)
661-
camera.set(viewProxy.getCameraViewUp(), 6)
662-
this.model.set('camera', camera)
663-
this.model.save_changes()
664-
}, 50)
665-
// If view-up has not been set, set initial value to itk-vtk-viewer default
666-
const viewUp = this.model.get('camera').slice(6, 9)
667-
if (!!!viewUp[0] && !!!viewUp[1] && !!!viewUp[2]) {
668-
onCameraChanged()
669-
} else {
670-
this.camera_changed()
671-
}
672-
const interactor = this.model.itkVtkViewer.getViewProxy().getInteractor()
673-
interactor.onEndMouseMove(onCameraChanged)
674-
interactor.onEndMouseWheel(onCameraChanged)
675-
interactor.onEndPan(onCameraChanged)
676-
interactor.onEndPinch(onCameraChanged)
677-
const vtkCamera = this.model.itkVtkViewer.getViewProxy().getCamera()
678-
vtkCamera.onModified(onCameraChanged)
679-
680656
const onShadowToggle = (enabled) => {
681657
if (enabled !== this.model.get('shadow')) {
682658
this.model.set('shadow', enabled)
@@ -734,7 +710,31 @@ const ViewerView = widgets.DOMWidgetView.extend({
734710
}
735711
}
736712
this.model.itkVtkViewer.subscribeGradientOpacityChanged(onGradientOpacityChange)
713+
} // end use2D
714+
715+
const onCameraChanged = macro.throttle(() => {
716+
const camera = new Float32Array(9)
717+
const viewProxy = this.model.itkVtkViewer.getViewProxy()
718+
camera.set(viewProxy.getCameraPosition(), 0)
719+
camera.set(viewProxy.getCameraFocalPoint(), 3)
720+
camera.set(viewProxy.getCameraViewUp(), 6)
721+
this.model.set('camera', camera)
722+
this.model.save_changes()
723+
}, 50)
724+
// If view-up has not been set, set initial value to itk-vtk-viewer default
725+
const viewUp = this.model.get('camera').slice(6, 9)
726+
if (!!!viewUp[0] && !!!viewUp[1] && !!!viewUp[2]) {
727+
onCameraChanged()
728+
} else {
729+
this.camera_changed()
737730
}
731+
const interactor = this.model.itkVtkViewer.getViewProxy().getInteractor()
732+
interactor.onEndMouseMove(onCameraChanged)
733+
interactor.onEndMouseWheel(onCameraChanged)
734+
interactor.onEndPan(onCameraChanged)
735+
interactor.onEndPinch(onCameraChanged)
736+
const vtkCamera = this.model.itkVtkViewer.getViewProxy().getCamera()
737+
vtkCamera.onModified(onCameraChanged)
738738

739739
const point_sets = this.model.get('point_sets')
740740
if(point_sets) {

0 commit comments

Comments
 (0)