# File vtk/tk/vtkTkImageViewerWidget.rb, line 215 def UpdateWindowLevelInteraction(x,y) # compute normalized delta dx = 4.0*(x - @LastX)/self.winfo_width*@Window dy = 4.0*(@LastY - y)/self.winfo_height*@Level # abs so that direction does not flip if @Window < 0.0 dx = -dx end if @Level < 0.0 dy = -dy end # compute new window level window = @Window + dx if window < 0.0 level = @Level + dy else level = @Level - dy end viewer = @ImageViewer viewer.SetColorWindow(window) viewer.SetColorLevel(level) @WindowMapper.SetInput("Window: %g" % window) @LevelMapper.SetInput("Level: %g" % level) self.Render end