code: def moveCamera(self, camstart, camstop, fraction):
          
          if isinstance(fraction, int):
              colors.printc("~lightning Warning in moveCamera(): fraction should not be an integer", c=1)
          if fraction > 1:
              colors.printc("~lightning Warning in moveCamera(): fraction is > 1", c=1)
          cam = vtk.vtkCamera()
          cam.DeepCopy(camstart)
          p1 = numpy.array(camstart.GetPosition())
          f1 = numpy.array(camstart.GetFocalPoint())
          v1 = numpy.array(camstart.GetViewUp())
          c1 = numpy.array(camstart.GetClippingRange())
          s1 = camstart.GetDistance()
  
          p2 = numpy.array(camstop.GetPosition())
          f2 = numpy.array(camstop.GetFocalPoint())
          v2 = numpy.array(camstop.GetViewUp())
          c2 = numpy.array(camstop.GetClippingRange())
          s2 = camstop.GetDistance()
          cam.SetPosition(p2 * fraction + p1 * (1 - fraction))
          cam.SetFocalPoint(f2 * fraction + f1 * (1 - fraction))
          cam.SetViewUp(v2 * fraction + v1 * (1 - fraction))
          cam.SetDistance(s2 * fraction + s1 * (1 - fraction))
          cam.SetClippingRange(c2 * fraction + c1 * (1 - fraction))
          self.camera = cam
          save_int = self.interactive
          self.show(resetcam=0, interactive=0)
          self.interactive = save_int
docs: Takes as input two ``vtkCamera`` objects and returns a
          new ``vtkCamera`` that is at an intermediate position:
  
          fraction=0 -> camstart,  fraction=1 -> camstop.
  
          Press ``shift-C`` key in interactive mode to dump a python snipplet
          of parameters for the current camera view.