X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fitk%2Fsrc%2FbbitkResampleImageFilter.h;h=da653e691025635a64438390c83ad3f1a4404e86;hb=79d06fa7c6441e99291ad3a1949d241f336573d5;hp=03fbd59a6d292980f7a6480f2af20e94e30b227d;hpb=8dd53a72bc1dd1ca2c6e2763c0aeb51c77ee352e;p=bbtk.git diff --git a/packages/itk/src/bbitkResampleImageFilter.h b/packages/itk/src/bbitkResampleImageFilter.h index 03fbd59..da653e6 100644 --- a/packages/itk/src/bbitkResampleImageFilter.h +++ b/packages/itk/src/bbitkResampleImageFilter.h @@ -1,32 +1,39 @@ -/*========================================================================= +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + +/*========================================================================= Program: bbtk Module: $RCSfile: bbitkResampleImageFilter.h,v $ Language: C++ - Date: $Date: 2009/05/18 10:45:44 $ - Version: $Revision: 1.10 $ + Date: $Date: 2012/11/16 08:50:39 $ + Version: $Revision: 1.13 $ =========================================================================*/ -/* --------------------------------------------------------------------- - -* Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) -* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux -* -* This software is governed by the CeCILL-B license under French law and -* abiding by the rules of distribution of free software. You can use, -* modify and/ or redistribute the software under the terms of the CeCILL-B -* license as circulated by CEA, CNRS and INRIA at the following URL -* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -* or in the file LICENSE.txt. -* -* As a counterpart to the access to the source code and rights to copy, -* modify and redistribute granted by the license, users are provided only -* with a limited warranty and the software's author, the holder of the -* economic rights, and the successive licensors have only limited -* liability. -* -* The fact that you are presently reading this means that you have had -* knowledge of the CeCILL-B license and that you accept its terms. -* ------------------------------------------------------------------------ */ + #ifdef _USE_ITK_ @@ -39,6 +46,9 @@ #include "itkLinearInterpolateImageFunction.h" #include "itkBSplineInterpolateImageFunction.h" +// For ITK4 +#include + namespace bbitk { @@ -48,12 +58,11 @@ namespace bbitk : public bbtk::AtomicBlackBox { - BBTK_BLACK_BOX_INTERFACE(ResampleImageFilter, - bbtk::AtomicBlackBox); - BBTK_DECLARE_INPUT(In,anyImagePointer); - BBTK_DECLARE_INPUT(Spacing,std::vector); - BBTK_DECLARE_INPUT(Interpolation,std::string); - BBTK_DECLARE_OUTPUT(Out,anyImagePointer); + BBTK_BLACK_BOX_INTERFACE(ResampleImageFilter, bbtk::AtomicBlackBox); + BBTK_DECLARE_INPUT(In,anyImagePointer); + BBTK_DECLARE_INPUT(Spacing,std::vector); + BBTK_DECLARE_INPUT(Interpolation,std::string); + BBTK_DECLARE_OUTPUT(Out,anyImagePointer); BBTK_PROCESS(ProcessSwitch); private : inline void ProcessSwitch(); @@ -69,15 +78,10 @@ namespace bbitk BBTK_AUTHOR("laurent.guigues at creatis.insa-lyon.fr"); BBTK_DESCRIPTION("Resamples an image"); BBTK_CATEGORY("image;filter"); - BBTK_INPUT(ResampleImageFilter,In, - "Input image. Can be any itk::Image*",anyImagePointer,""); - BBTK_INPUT(ResampleImageFilter,Spacing, - "Spacing",std::vector,"spacing"); - BBTK_INPUT(ResampleImageFilter,Interpolation, - "Interpolation",std::string,""); - BBTK_OUTPUT(ResampleImageFilter,Out, - "Output image. Of the same type and dimension than the input image", - anyImagePointer,""); + BBTK_INPUT(ResampleImageFilter,In,"Input image. Can be any itk::Image*",anyImagePointer,""); + BBTK_INPUT(ResampleImageFilter,Spacing,"Spacing",std::vector,"spacing"); + BBTK_INPUT(ResampleImageFilter,Interpolation,"Interpolation: Linear (default) || BSpline || NearestNeighbor) ",std::string,""); + BBTK_OUTPUT(ResampleImageFilter,Out,"Output image. Of the same type and dimension than the input image",anyImagePointer,""); BBTK_END_DESCRIBE_BLACK_BOX(ResampleImageFilter); //=================================================== @@ -117,11 +121,11 @@ namespace bbitk size = LPR.GetSize(); // origin = LPR.GetIndex(); //in->GetOrigin(); for (unsigned int i=0;iGetSpacing()[i]; - spacing[i] = bbGetInputSpacing()[i]; - double tmp = (LPR.GetSize()[i]*in->GetSpacing()[i]/spacing[i] ) + 0.5; - size[i] = (long)floor(tmp); + { + origin[i] = LPR.GetIndex()[i]*in->GetSpacing()[i]; + spacing[i] = bbGetInputSpacing()[i]; + double tmp = (LPR.GetSize()[i]*in->GetSpacing()[i]/spacing[i] ) + 0.5; + size[i] = (long)floor(tmp); // size[i] = (long)lrint(LPR.GetSize()[i]*in->GetSpacing()[i]/spacing[i]); } @@ -203,7 +207,6 @@ namespace bbitk } -} -// EO namespace bbtk +} // EO namespace bbitk -#endif +#endif // _USE_ITK_