Implementing multiple viewport using vtkImageViewer to display dicom images
hey please need another help, kinda stuck while trying to implement
multiple viewports on vtkImageViewer class to read DICOM files.
vtkActor2D *Actors[500];
vtkImageMapper *ImageMap[500];
vtkSmartPointer<vtkDICOMImageReader> reader =
vtkSmartPointer<vtkDICOMImageReader>::New();
vtkSmartPointer<vtkImageActor> viewer =
vtkSmartPointer<vtkImageActor>::New();
reader->Update();
vtkSmartPointer<vtkRenderWindow> renderWindow =
vtkSmartPointer<vtkRenderWindow>::New();
vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);
// Defining the viewport ranges
double xmins[4] = {0,.5,0,.5};
double xmaxs[4] = {0.5,1,0.5,1};
double ymins[4] = {0,0,.5,.5};
double ymaxs[4]= {0.5,0.5,1,1};
for(unsigned i = 0; i < 4; i++)
{
vtkSmartPointer<vtkRenderer> renderer =
vtkSmartPointer<vtkRenderer>::New();
renderWindow->AddRenderer(renderer);
renderer->SetViewport(xmins[i],ymins[i],xmaxs[i],ymaxs[i]);
ImageMap [i] = vtkImageMapper::New();
ImageMap[i]->SetInputConnection(resize->GetOutputPort());
Actors[i] = vtkActor2D::New();
Actors[i]->SetMapper(ImageMap[i]);
renderer->AddActor(Actors[i]);
renderer->ResetCamera();
renderWindow->Render();
renderWindow->SetWindowName("Multiple ViewPorts");
}
renderWindowInteractor->Start();
}
with this i am able to partially view the dicom images but the
renderWindowInteractor is not working. kindly help resolving this problem.
Thank you
No comments:
Post a Comment