X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FvvImageReader.cxx;h=a2fc4e964ab8edeeef1e57cb0f6a4b742c371d44;hb=babf100c0d140f6b2525532d001b7794fb47a625;hp=2c094a8c3eda3cfb67e85acddafb9cceb1bf562c;hpb=239420a1005158f82da2c440fe5962895a05a438;p=clitk.git diff --git a/common/vvImageReader.cxx b/common/vvImageReader.cxx index 2c094a8..a2fc4e9 100644 --- a/common/vvImageReader.cxx +++ b/common/vvImageReader.cxx @@ -19,6 +19,7 @@ #define VVIMAGEREADER_CXX #include +#include "gdcmImageHelper.h" #include "vvImageReader.h" #include "vvImageReader.txx" #include "clitkTransformUtilities.h" @@ -32,6 +33,7 @@ vvImageReader::vvImageReader() mLastError = ""; mType = UNDEFINEDIMAGETYPE; mSlice = 0; + mPatientCoordinateSystem = false; } //------------------------------------------------------------------------------ @@ -49,6 +51,14 @@ void vvImageReader::Update() //------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ +void vvImageReader::SetPatientCoordinateSystem(bool patientCoordinateSystem) +{ + mPatientCoordinateSystem = patientCoordinateSystem; +} +//------------------------------------------------------------------------------ + + //------------------------------------------------------------------------------ void vvImageReader::Update(LoadedImageType type) { @@ -57,9 +67,12 @@ void vvImageReader::Update(LoadedImageType type) mLastError="Unable to read file."; } else { reader->SetFileName(mInputFilenames[0]); + gdcm::ImageHelper::SetForcePixelSpacing(true); reader->ReadImageInformation(); if (mInputFilenames.size() > 1) Update(reader->GetNumberOfDimensions()+1,reader->GetComponentTypeAsString(reader->GetComponentType()),type); + else if (reader->GetNumberOfComponents() > 1 && type != VECTORFIELD && type != VECTORFIELDWITHTIME) + Update(reader->GetNumberOfDimensions()+1,reader->GetComponentTypeAsString(reader->GetComponentType()),VECTORPIXELIMAGE); else Update(reader->GetNumberOfDimensions(),reader->GetComponentTypeAsString(reader->GetComponentType()),type); }