[vtkusers] How create an offscreen render window in VTK ?? Please Help

Deepak Roy cdeepakroy at yahoo.com
Wed Nov 30 20:02:38 EST 2005


Hello,
   
  I tried vtkRenderWindow::OffScreenRenderingOn today but it does not work.
   
  It would be really helpful if you could provide any examples.
   
  I turned it on and used vtkWindowToImageFilter to save a snapshot of the OffScreenRenderWindow to an image file( JPEG ) on disk but the image comes out to be a snaphot of the desktop when the code is executed.
   
  I am using the VTK + QT library written by Carsten Kibler. I suspect if that is giving the problem. Because My Application is developed with QT and VTK. So there is already a QT + VTK render window in which the model is being displayed. I am creating the offscreen render window after that, so i suspect there are some conflicts.
  Because if i turn the offscreenrendering to off ( which is the default ), the render window is not visible, which is not normally expected.
   
  I am using offscreen rendering to find the volume enclosed between two surfaces.
   
   --- First i render the surface behind ---> extract the z-buffer of the offscreen window.
   
  ---- Second i remove the surface behind and new render the front surface alone ---> extract the z-buffer again
   
  ----- Subtracting both the Z-buffers would give me the volume.
   
  I earlier used vtkMassProperties but it does not give good results. Hence i resorted to the z-buffer technique.
   
  Here is the code i used for the offscreen rendering:
   
  ************************************************************************************************
   
  vtkOpenGLRenderer *pOffScreenRenderer = vtkOpenGLRenderer::New();
   
  vtkRenderWindow *pOffScreenRenderWindow = vtkOpenGLRenderWindow::New();
  pOffScreenRenderWindow->OffScreenRenderingOn();
  pOffScreenRenderWindow->AddRenderer( pOffScreenRenderer );
  pOffScreenRenderWindow->Start();
  pOffScreenRenderWindow->SetSize( wx , wy ); 
  pOffScreenRenderWindow->Render();
   
  // render a surface now
  pOffScreenRenderer->AddActor( pSurfaceActor );
  pOffScreenRenderer->Render();
  pOffScreenRenderWindow->Render();
   
  // save a snapshot to disk
  vtkWindowToImageFilter *pWindowImageFilter = vtkWindowToImageFilter::New();
  pWindowImageFilter->SetInput( pOffScreenRenderWindow );
  
  vtkJPEGWriter *pImageWriter = vtkJPEGWriter::New();
  pImageWriter->SetInput( pWindowImageFilter->GetOutput() );
  pImageWriter->SetQuality( 100 );
  pImageWriter->SetFileName( "coons_image.jpg" );
  pImageWriter->ProgressiveOff();
  pImageWriter->Write();
  pImageWriter->Delete();
   
  *************************************************************************************************
   
  Is there anything wrong with the code ?
  
Please Help !!!!!
   
  Thanks in Advance.
   
  Regards
   
  Deepak Roy
   
  
Sylvain Jaume <sylvain.jaume at kitware.com> wrote:
  Hi Deepak,

Have you tried vtkRenderWindow::OffScreenRenderingOn?
http://www.vtk.org/doc/nightly/html/classvtkWindow.html#803e4f1aba85b796a0f17b0ec84093f9

Cheers,
Sylvain

Deepak Roy wrote:

> hello everybody,
> 
> Do you know how to create an offscreen vtk render window in VTK ?
> 
> I want to render into the off screen render window and then get its 
> z-buffer using GetZbufferData 
> 
> () and work on its z-buffer.
> 
> Or is there an offscreen buffer similar to vtkRenderWindow.
> 
> Please Help.
> 
> Thanks in advance.
> 
> Regards,
> 
> Deepak
>
> ------------------------------------------------------------------------
> Yahoo! DSL 
> 
> Something to write home about. Just $16.99/mo. or less
>
>------------------------------------------------------------------------
>
>_______________________________________________
>This is the private VTK discussion list. 
>Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
>Follow this link to subscribe/unsubscribe:
>http://www.vtk.org/mailman/listinfo/vtkusers
> 
>
  


		
---------------------------------
 Yahoo! Music Unlimited - Access over 1 million songs. Try it free.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20051130/e8578856/attachment.htm>


More information about the vtkusers mailing list