[vtkusers] 25 Slice per second
    Chasan KIOUTSOUKMOUSTAFA 
    chasank at yahoo.com
       
    Thu Aug 19 07:57:01 EDT 2010
    
    
  
I've written the Dicom class
class Dicom
{
private:
    vtkDICOMImageReader *reader;
    vtkRenderWindowInteractor *iren;
    vtkImageViewer *viewer;
    int DataImages;
    void releaseVtkObjects()
    {
        reader->Delete();
        viewer->Delete();
        iren->Delete();
    }
public:
    Dicom()
    {
        reader = vtkDICOMImageReader::New();
        viewer = vtkImageViewer::New();
        iren = vtkRenderWindowInteractor::New();
    }
    void ReadDICOMFolder(string DICOMFolder)
    {
        viewer->SetInput(reader->GetOutput());
        reader->SetDirectoryName(DICOMFolder.c_str());
        reader->Update();
        DataImages = viewer->GetWholeZMax();
        for(int i = 0; i < DataImages; i++)
        {
            viewer->SetZSlice(i);
            viewer->GetRenderer()->ResetCameraClippingRange();
            viewer->SetColorWindow(400);
            viewer->SetColorLevel(128);
            viewer->Render();
        }
        releaseVtkObjects();
    }
    void ReadDICOMImage(string DICOMImage)
    {
        viewer->SetInput(reader->GetOutput());
        reader->SetFileName(DICOMImage.c_str());
        reader->Update();
        viewer->Render();
        viewer->SetupInteractor(iren);
        iren->Initialize();
        iren->Start();
        releaseVtkObjects();
    }
};
When I'm calling the ReadDICOMFolder method from main ;
Dicom *dicomObj = new Dicom();
dicomObj->ReadDICOMFolder(DICOMPath.c_str());
it reads the dicom files, and shows very fast the slices to the screen. How can i show it for example, 25 slice per second ?
Chasan KIOUTSOUKMOUSTAFA
      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20100819/3803ec47/attachment.htm>
    
    
More information about the vtkusers
mailing list