X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=filters%2FclitkImageArithmGenericFilter.txx;h=9679d028e4ffa1cd5dd4f846954b79a2c999371d;hb=5a80d16b4dc2ad2d825c443f39ae6276786e72e4;hp=60ddc084877ecca8c98607cc8da6e5878e47b505;hpb=2691ab3b136c618dd64f634507133e91e1a9c468;p=clitk.git diff --git a/filters/clitkImageArithmGenericFilter.txx b/filters/clitkImageArithmGenericFilter.txx index 60ddc08..9679d02 100644 --- a/filters/clitkImageArithmGenericFilter.txx +++ b/filters/clitkImageArithmGenericFilter.txx @@ -37,13 +37,7 @@ namespace clitk template template void ImageArithmGenericFilter::InitializeImageType() { - ADD_IMAGE_TYPE(Dim, char); - ADD_IMAGE_TYPE(Dim, uchar); - ADD_IMAGE_TYPE(Dim, short); - ADD_IMAGE_TYPE(Dim, ushort); - ADD_IMAGE_TYPE(Dim, int); - ADD_IMAGE_TYPE(Dim, float); - ADD_IMAGE_TYPE(Dim, double); + ADD_DEFAULT_IMAGE_TYPES(Dim); } //-------------------------------------------------------------------- @@ -99,7 +93,6 @@ namespace clitk void ImageArithmGenericFilter::UpdateWithInputImageType() { // Read input1 typename ImageType::Pointer input1 = this->template GetInput(0); - typename ImageType::PixelType PixelType; // Set input image iterator typedef itk::ImageRegionIterator IteratorType; @@ -117,7 +110,7 @@ namespace clitk } // Check if overwrite and outputisfloat and pixeltype is not float -> do not overwrite - if (mOverwriteInputImage && mOutputIsFloat && (typeid(PixelType) != typeid(float))) { + if (mOverwriteInputImage && mOutputIsFloat && (typeid(typename ImageType::PixelType) != typeid(float))) { // std::cerr << "Warning. Could not use both mOverwriteInputImage and mOutputIsFloat, because input is " // << typeid(PixelType).name() // << std::endl; @@ -213,7 +206,7 @@ namespace clitk break; case 5: // Absolute difference while (!ito.IsAtEnd()) { - ito.Set(PixelTypeDownCast(fabs(it2.Get()-it1.Get()))); + ito.Set(PixelTypeDownCast(fabs((double)it2.Get()-(double)it1.Get()))); ++it1; ++it2; ++ito; } break;