diff --git a/sksurgerybard/interaction/interaction.py b/sksurgerybard/interaction/interaction.py index 27bac0a..52576e7 100644 --- a/sksurgerybard/interaction/interaction.py +++ b/sksurgerybard/interaction/interaction.py @@ -33,6 +33,9 @@ def __call__(self, event, _event_type_not_used): self._translate_model(key) if key in '8i9o0p': self._rotate_model(key) + if key == 'f': + self._bard_widget.tracking = not self._bard_widget.tracking + def _translate_model(self, key): """ diff --git a/sksurgerybard/widgets/bard_overlay_app.py b/sksurgerybard/widgets/bard_overlay_app.py index 5f181f7..65be060 100644 --- a/sksurgerybard/widgets/bard_overlay_app.py +++ b/sksurgerybard/widgets/bard_overlay_app.py @@ -43,6 +43,8 @@ def __init__(self, configuration = None, calib_dir = None): self.tracker, self.transform_manager = setup_tracker(configuration) self.tracker.start_tracking() + self.tracking = True # A boolean that we can manipulate to start/ + # stop tracking self.transform_manager.add("tracker2camera", np.eye(4, dtype = np.float64)) @@ -166,7 +168,9 @@ def update(self): undistorted = cv2.undistort(image, self.mtx33d, self.dist15d) - self._update_tracking(image) + if self.tracking: + self._update_tracking(image) + self._update_overlay_window() self.vtk_overlay_window.set_video_image(undistorted)