20 #ifndef MIRTK_CSplineInterpolateImageFunction_H 21 #define MIRTK_CSplineInterpolateImageFunction_H 23 #include "mirtk/BaseImage.h" 24 #include "mirtk/InterpolateImageFunction.h" 33 template <
class TImage>
37 mirtkGenericInterpolatorMacro(
75 VoxelType
Get2D(
double,
double,
double = 0,
double = 0)
const;
90 template <
class TOtherImage>
typename TOtherImage::VoxelType
91 Get2D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
103 template <
class TOtherImage>
typename TOtherImage::VoxelType
104 GetWithPadding2D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
110 VoxelType
Get3D(
double,
double,
double = 0,
double = 0)
const;
125 template <
class TOtherImage>
typename TOtherImage::VoxelType
126 Get3D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
138 template <
class TOtherImage>
typename TOtherImage::VoxelType
139 GetWithPadding3D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
145 VoxelType
Get4D(
double,
double,
double = 0,
double = 0)
const;
160 template <
class TOtherImage>
typename TOtherImage::VoxelType
161 Get4D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
173 template <
class TOtherImage>
typename TOtherImage::VoxelType
174 GetWithPadding4D(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
180 VoxelType
Get(
double,
double,
double = 0,
double = 0)
const;
186 virtual VoxelType
GetWithPadding(
double,
double,
double = 0,
double = 0)
const;
195 template <
class TOtherImage>
typename TOtherImage::VoxelType
196 Get(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
208 template <
class TOtherImage>
typename TOtherImage::VoxelType
209 GetWithPadding(
const TOtherImage *,
double,
double,
double = 0,
double = 0)
const;
216 virtual VoxelType
GetInside(
double,
double,
double = 0,
double = 0)
const;
219 virtual VoxelType
GetOutside(
double,
double,
double = 0,
double = 0)
const;
259 #endif // MIRTK_CSplineInterpolateImageFunction_H virtual VoxelType GetWithPaddingInside(double, double, double=0, double=0) const
VoxelType GetWithPadding4D(double, double, double=0, double=0) const
GenericCSplineInterpolateImageFunction()
Default constructor.
virtual VoxelType GetInside(double, double, double=0, double=0) const
virtual void Initialize()
virtual ~GenericCSplineInterpolateImageFunction()
Destructor.
VoxelType Get4D(double, double, double=0, double=0) const
VoxelType Get2D(double, double, double=0, double=0) const
virtual VoxelType GetWithPadding(double, double, double=0, double=0) const
VoxelType Get3D(double, double, double=0, double=0) const
static Real CSpline(Real)
Cubic spline function.
virtual VoxelType GetOutside(double, double, double=0, double=0) const
Evaluate generic image at an arbitrary location (in pixels)
VoxelType GetWithPadding3D(double, double, double=0, double=0) const
CSplineInterpolateImageFunction()
Constructor.
VoxelType Get(double, double, double=0, double=0) const
virtual void BoundingInterval(double, int &, int &) const
virtual VoxelType GetWithPaddingOutside(double, double, double=0, double=0) const
VoxelType GetWithPadding2D(double, double, double=0, double=0) const