Program: gdcm
Module: $RCSfile: VTKTestRead.cxx,v $
Language: C++
- Date: $Date: 2005/01/19 10:43:01 $
- Version: $Revision: 1.1 $
+ Date: $Date: 2005/01/20 16:16:59 $
+ Version: $Revision: 1.5 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
-#include "gdcmFile.h"
+#include "gdcmFileHelper.h"
#include "vtkGdcmReader.h"
#include "vtkImageViewer.h"
#include "vtkImageData.h"
// Instead of directly reading the dicom let's write it down to another file
// do a scope to be sure everything gets cleanup
{
- gdcm::File file( filename );
+ gdcm::FileHelper file( filename );
file.GetImageData();
file.SetWriteModeToRaw();
file.WriteDcmExplVR( "TestWrite.dcm" );
reader->SetFileName( "TestWrite.dcm" );
reader->Update();
+ double *range=reader->GetOutput()->GetScalarRange();
int dim[3];
reader->GetOutput()->GetDimensions( dim );
{
viewer->SetInput ( reader->GetOutput() );
- vtkFloatingPointType *range = reader->GetOutput()->GetScalarRange();
viewer->SetColorWindow (range[1] - range[0]);
viewer->SetColorLevel (0.5 * (range[1] + range[0]));
clip->SetInput(image);
clip->SetOutputWholeExtent(ext[0],ext[1],ext[2],ext[3],
ext[4]+dim[2] / 2,ext[4]+dim[2] / 2);
+ clip->ClipDataOn();
vtkImageTranslateExtent *translat=vtkImageTranslateExtent::New();
translat->SetInput(clip->GetOutput());
translat->SetTranslation(0,0,-ext[4]-dim[2] / 2);
// Set an unsigned char image
// Shift/Scale the image
image->Update();
- double *rng=image->GetScalarRange();
vtkImageShiftScale *iss=vtkImageShiftScale::New();
iss->SetInput(image);
iss->SetOutputScalarTypeToUnsignedChar();
- iss->SetShift(-rng[0]);
- iss->SetScale(255.0/(rng[1]-rng[0]));
+ iss->SetShift(-range[0]);
+ iss->SetScale(255.0/(range[1]-range[0]));
iss->ClampOverflowOn();
image->UnRegister(NULL);
{
ret = VTKReadTest(t,viewer,argv[1+show],argv[2+show],show);
t->Delete();
- viewer->Delete();
+ if( viewer )
+ viewer->Delete();
return ret;
}
ret += VTKReadTest(t,viewer,filename,pngfile,show);
}
t->Delete();
- viewer->Delete();
+ if( viewer )
+ viewer->Delete();
return ret;
}