Commit 1b21bd9ec9395d9e21c23fafb003fc7ce6aa3720

Authored by Thiago Franco de Moraes
1 parent 1d51895e
Exists in watershed

Watershed 3D

invesalius/data/slice_.py
@@ -84,6 +84,7 @@ class Slice(object): @@ -84,6 +84,7 @@ class Slice(object):
84 self.blend_filter = None 84 self.blend_filter = None
85 self.histogram = None 85 self.histogram = None
86 self._matrix = None 86 self._matrix = None
  87 + self.aux_matrices = {}
87 88
88 self._type_projection = const.PROJECTION_NORMAL 89 self._type_projection = const.PROJECTION_NORMAL
89 self.n_border = const.PROJECTION_BORDER_SIZE 90 self.n_border = const.PROJECTION_BORDER_SIZE
invesalius/data/styles.py
@@ -665,6 +665,7 @@ class WaterShedInteractorStyle(DefaultInteractorStyle): @@ -665,6 +665,7 @@ class WaterShedInteractorStyle(DefaultInteractorStyle):
665 665
666 self.viewer = viewer 666 self.viewer = viewer
667 self.orientation = self.viewer.orientation 667 self.orientation = self.viewer.orientation
  668 + self.matrix = None
668 669
669 self.foreground = False 670 self.foreground = False
670 self.background = False 671 self.background = False
@@ -694,13 +695,16 @@ class WaterShedInteractorStyle(DefaultInteractorStyle): @@ -694,13 +695,16 @@ class WaterShedInteractorStyle(DefaultInteractorStyle):
694 self._create_mask() 695 self._create_mask()
695 696
696 def CleanUp(self): 697 def CleanUp(self):
697 - self._remove_mask() 698 + #self._remove_mask()
698 self.viewer.slice_.qblend[self.orientation] = {} 699 self.viewer.slice_.qblend[self.orientation] = {}
699 700
700 def _create_mask(self): 701 def _create_mask(self):
701 if self.matrix is None: 702 if self.matrix is None:
702 - self.temp_file, self.matrix = self.viewer.slice_.create_temp_mask()  
703 - print "created", self.temp_file 703 + try:
  704 + self.matrix = self.viewer.slice_.aux_matrices['watershed']
  705 + except KeyError:
  706 + self.temp_file, self.matrix = self.viewer.slice_.create_temp_mask()
  707 + self.viewer.slice_.aux_matrices['watershed'] = self.matrix
704 708
705 def _remove_mask(self): 709 def _remove_mask(self):
706 if self.matrix is not None: 710 if self.matrix is not None: