X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tools%2FclitkResampleImageGenericFilter.txx;h=b42d18349f2f943cb95ed5ca092c931d20986b60;hb=8c110a6b043a6b85c1a0c4762fbfff4c3bea5c7d;hp=823acb9057cf2d188dc791104d0ef1033fcdb317;hpb=9d1351bcc77a1b77ec141a625aff5be8ba861e7b;p=clitk.git diff --git a/tools/clitkResampleImageGenericFilter.txx b/tools/clitkResampleImageGenericFilter.txx index 823acb9..b42d183 100644 --- a/tools/clitkResampleImageGenericFilter.txx +++ b/tools/clitkResampleImageGenericFilter.txx @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,7 +14,7 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html - ======================================================================-====*/ + ===========================================================================**/ #ifndef CLITKRESAMPLEIMAGEGENERICFILTER_TXX #define CLITKRESAMPLEIMAGEGENERICFILTER_TXX @@ -49,6 +49,8 @@ clitk::ResampleImageGenericFilter::UpdateWithInputImageType() static const unsigned int dim = OutputImageType::ImageDimension; typename OutputImageType::SpacingType spacing; typename OutputImageType::SizeType size; + typename OutputImageType::PointType origin; + typename OutputImageType::DirectionType direction; if (mArgsInfo.like_given) { itk::ImageIOBase::Pointer header = clitk::readImageHeader(mArgsInfo.like_arg); @@ -56,9 +58,17 @@ clitk::ResampleImageGenericFilter::UpdateWithInputImageType() for(unsigned int i=0; iGetSpacing(i); size[i] = header->GetDimensions(i); + origin[i] = header->GetOrigin(i); + } + for(unsigned int i=0; iGetDirection(i)[j]; + } } filter->SetOutputSpacing(spacing); filter->SetOutputSize(size); + filter->SetOutputOrigin(origin); + filter->SetOutputDirection(direction); } else { std::cerr << "*** Warning : I could not read '" << mArgsInfo.like_arg << "' ***" << std::endl; @@ -91,6 +101,17 @@ clitk::ResampleImageGenericFilter::UpdateWithInputImageType() size[i] = mArgsInfo.size_arg[i]; filter->SetOutputSize(size); } + itk::ImageIOBase::Pointer header = clitk::readImageHeader(mArgsInfo.input_arg); + for(unsigned int i=0; iGetOrigin(i); + } + for(unsigned int i=0; iGetDirection(i)[j]; + } + } + filter->SetOutputOrigin(origin); + filter->SetOutputDirection(direction); } // Set temporal dimension