WindowToImageFilter reading old buffer images

I’m using VTK to create a series of DRR images using offscreen rendering and the vtkWindowToImageFilter. Therefore I’m randomly changing the Camera position and save this transform to the then generated DRR image.

However, I have the feeling that sometimes the position might not be right. Could it be that the vtkWindowToImageFilter reads an old image from the buffer? And how can I be sure that the image is updated?

Here is the initialisation code:

self.img_size = 224

self.renderer = vtk.vtkRenderer()
self.renderer.AddVolume(self.volume)
self.renderer.SetBackground(0, 0, 0)
self.renderer.PreserveColorBufferOff()
self.renderer.PreserveDepthBufferOff()
self.renderer.UseDepthPeelingOff()

self.renWin = vtk.vtkRenderWindow()
self.renWin.AddRenderer(self.renderer)
self.renWin.SetSize(self.img_size, self.img_size)
self.renWin.OffScreenRenderingOn()
self.renWin.SwapBuffersOff()

self.camera = self.renderer.GetActiveCamera()

Code in a loop:

pos = [100,0,0] # in a loop randomply created
fp = [0,0,0] # in a loop randomply created
vu = [0,1,0] # in a loop randomply created

self.camera.SetPosition(pos)
self.camera.SetFocalPoint(fp)
self.camera.SetViewUp(vu)

windowToImageFilter = vtk.vtkWindowToImageFilter()
windowToImageFilter.SetInput(self.renWin)
windowToImageFilter.SetInputBufferTypeToRGBA()
windowToImageFilter.ReadFrontBufferOff()
windowToImageFilter.ShouldRerenderOff()
windowToImageFilter.Modified()

self.renWin.Render()

windowToImageFilter.Update()
vtk_image = windowToImageFilter.GetOutput()

Thank you very much!