1 #include <vtkPNGReader.h>
2 #include <vtkRenderer.h>
3 #include <vtkRenderWindow.h>
4 #include <vtkRenderWindowInteractor.h>
5 #include <vtkSmartPointer.h>
7 #include <cpExtensions/Visualization/ImageSliceActors.h>
9 int main( int argc, char* argv[] )
13 std::cerr << "Usage: " << argv[ 0 ] << " input_image.png" << std::endl;
19 vtkSmartPointer< vtkPNGReader > reader =
20 vtkSmartPointer< vtkPNGReader >::New( );
21 reader->SetFileName( argv[ 1 ] );
24 // Prepate slice objects
25 vtkSmartPointer< cpExtensions::Visualization::ImageSliceActors > actors =
26 vtkSmartPointer< cpExtensions::Visualization::ImageSliceActors >::New( );
27 actors->SetInputConnection( reader->GetOutputPort( ), 2 );
30 vtkSmartPointer< vtkRenderer > ren =
31 vtkSmartPointer< vtkRenderer >::New( );
32 ren->SetBackground( 0, 0, 0 );
33 actors->PushInto( ren );
35 vtkSmartPointer< vtkRenderWindow > win =
36 vtkSmartPointer< vtkRenderWindow >::New( );
37 win->AddRenderer( ren );
38 win->SetSize( 300, 300 );
40 vtkSmartPointer< vtkRenderWindowInteractor > iren =
41 vtkSmartPointer< vtkRenderWindowInteractor >::New( );
42 iren->SetRenderWindow( win );
43 iren->SetInteractorStyle( actors->GetStyle( ) );