Commit 2b11a51c1374830ef992b62fb3e81a8156cbad22

Authored by tfmoraes
1 parent 4bcd447b

ENH: Corrected the cursor reference in the imagedata

Showing 1 changed file with 21 additions and 27 deletions   Show diff stats
invesalius/data/viewer_slice.py
... ... @@ -222,33 +222,27 @@ class Viewer(wx.Panel):
222 222 x = float(x - bound_xi)
223 223 y = float(y - bound_yi)
224 224 z = float(z - bound_zi)
  225 +
  226 + dx = bound_xf - bound_xi;
  227 + dy = bound_yf - bound_yi
  228 + dz = bound_zf - bound_zi
  229 +
  230 + dimensions = self.imagedata.GetDimensions()
  231 +
  232 + try:
  233 + x = (x * dimensions[0]) / dx
  234 + except ZeroDivisionError:
  235 + x = self.slice_number
  236 + try:
  237 + y = (y * dimensions[1]) / dy
  238 + except ZeroDivisionError:
  239 + y = self.slice_number
  240 + try:
  241 + z = (z * dimensions[2]) / dz
  242 + except ZeroDivisionError:
  243 + z = self.slice_number
225 244  
226   - # Then we fix the porpotion, based on vtkImageData spacing
227   - #spacing_x, spacing_y, spacing_z = self.imagedata.GetSpacing()
228   - #x = x/spacing_x
229   - #y = y/spacing_y
230   - #z = z/spacing_z
231   -
232   - # Based on the current orientation, we define 3D position
233   - coordinates = {"SAGITAL": [self.slice_number, y, z],
234   - "CORONAL": [x, self.slice_number, z],
235   - "AXIAL": [x, y, self.slice_number]}
236   - coord = [int(coord) for coord in coordinates[self.orientation]]
237   -
238   - # According to vtkImageData extent, we limit min and max value
239   - # If this is not done, a VTK Error occurs when mouse is pressed outside
240   - # vtkImageData extent
241   - #extent = self.imagedata.GetWholeExtent()
242   - #extent_min = extent[0], extent[2], extent[4]
243   - #extent_max = extent[1], extent[3], extent[5]
244   - #for index in xrange(3):
245   - # if coord[index] > extent_max[index]:
246   - # coord[index] = extent_max[index]
247   - # elif coord[index] < extent_min[index]:
248   - # coord[index] = extent_min[index]
249   - #print "New coordinate: ", coord
250   -
251   - return coord
  245 + return x,y,z
252 246  
253 247 def __bind_events(self):
254 248 ps.Publisher().subscribe(self.LoadImagedata, 'Load slice to viewer')
... ... @@ -295,7 +289,7 @@ class Viewer(wx.Panel):
295 289 self.text_actor = text_actor
296 290  
297 291 ren.AddActor(actor)
298   - ren.AddActor(text_actor)
  292 + #ren.AddActor(text_actor)
299 293 self.__update_camera()
300 294  
301 295 max_slice_number = actor.GetSliceNumberMax()
... ...