diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageBlackmanFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageBlackmanFunction.h index 910908443fdc97c419798ce2423adb6b8a98e18f..4bad6a65ef34138eb623b6ea0b3e1310fd104583 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageBlackmanFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageBlackmanFunction.h @@ -41,6 +41,7 @@ template<class TInput = double, class TOutput = double> class BlackmanWindowFunction { public: + BlackmanWindowFunction(): m_Radius(1), m_Factor1(CONST_PI), m_Factor2(2.0 * CONST_PI) {} // default radius is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -95,8 +96,7 @@ template<class TInputImage, class TBoundaryCondition = itk::ConstantBoundaryCond double, class TInputInterpolator = double, class TOutputInterpolator = double> class ITK_EXPORT WindowedSincInterpolateImageBlackmanFunction : public WindowedSincInterpolateImageFunctionBase<TInputImage, - typename Function::BlackmanWindowFunction<TInputInterpolator, - TOutputInterpolator>, + typename Function::BlackmanWindowFunction<TInputInterpolator, TOutputInterpolator>, TBoundaryCondition, TCoordRep> { diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageCosineFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageCosineFunction.h index 5f37e59be5177494d82108c153bb6573d6f20940..46a65cc60de9715b6b79840467666e9620f89336 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageCosineFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageCosineFunction.h @@ -41,6 +41,7 @@ template<class TInput = double, class TOutput = double> class CosineWindowFunction { public: + CosineWindowFunction(): m_Radius(1), m_Factor(CONST_PI / 2.0) {} // default radius is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -63,9 +64,9 @@ public: return (x == 0.0) ? static_cast<TOutput>(temp) : static_cast<TOutput>(temp * std::sin(px) / px); } private: + unsigned int m_Radius; // Equal to \f$ \frac{\pi}{2 m} \f$ double m_Factor; - unsigned int m_Radius; }; } //namespace Function diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageGaussianFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageGaussianFunction.h index 9d20a68c81157570f581e298fc48fb05072b2e73..b2a6bdc1bc0e18be51b28cce02508d960bfe1e9b 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageGaussianFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageGaussianFunction.h @@ -41,6 +41,7 @@ template<class TInput = double, class TOutput = double> class GaussianWindowFunction { public: + GaussianWindowFunction(): m_Radius(1), m_Factor(-2.0 / CONST_PI) {} // default radius is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -63,8 +64,8 @@ public: return (x == 0.0) ? static_cast<TOutput>(temp) : static_cast<TOutput>(temp * std::sin(px) / px); } private: - double m_Factor; unsigned int m_Radius; + double m_Factor; }; } //namespace Function diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageHammingFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageHammingFunction.h index 003bbdd2508a615eea5ab186762d922eec7579ce..2ea6af2790e9608479ea1ac09f7b2731b84506bb 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageHammingFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageHammingFunction.h @@ -41,6 +41,7 @@ template<class TInput = double, class TOutput = double> class HammingWindowFunction { public: + HammingWindowFunction(): m_Radius(1), m_Factor(CONST_PI) {} // default radius is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -63,9 +64,9 @@ public: return (x == 0.0) ? static_cast<TOutput>(temp) : static_cast<TOutput>(temp * std::sin(px) / px); } private: + unsigned int m_Radius; // Equal to \f$ \frac{\pi}{m} \f$ double m_Factor; - unsigned int m_Radius; }; } //namespace Function diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageLanczosFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageLanczosFunction.h index bfd9162671520e945d0c28c078a55775677a5d37..8e0e6355aea1385c6b47f84ab7f980576963c4aa 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageLanczosFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageLanczosFunction.h @@ -43,6 +43,7 @@ template<class TInput = double, class TOutput = double> class LanczosWindowFunction { public: + LanczosWindowFunction(): m_Radius(1), m_Factor(CONST_PI) {} // default factor is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -74,9 +75,9 @@ public: return (x == 0.0) ? static_cast<TOutput>(temp) : static_cast<TOutput>(temp * std::sin(px) / px); } private: + unsigned int m_Radius; // Equal to \f$ \frac{\pi}{m} \f$ double m_Factor; - unsigned int m_Radius; }; } //namespace Function diff --git a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageWelchFunction.h b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageWelchFunction.h index 5625f2f41188490ce2536de72c88234ceae79743..03fa31a4a3540bc9bed73e21e71ff9862dccc606 100644 --- a/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageWelchFunction.h +++ b/Modules/Core/Interpolation/include/otbWindowedSincInterpolateImageWelchFunction.h @@ -41,6 +41,7 @@ template<class TInput = double, class TOutput = double> class WelchWindowFunction { public: + WelchWindowFunction() : m_Radius(1), m_Factor(1) {} // default radius is 1 at construction void SetRadius(unsigned int radius) { m_Radius = radius; @@ -63,9 +64,9 @@ public: return (x == 0.0) ? static_cast<TOutput>(temp) : static_cast<TOutput>(temp * std::sin(px) / px); } private: + unsigned int m_Radius; // Equal to \f$ \frac{1}{m^2} \f$ double m_Factor; - unsigned int m_Radius; }; } //namespace Function