18#ifndef itkRayCastInterpolateImageFunction_h
19#define itkRayCastInterpolateImageFunction_h
40template <
typename TInputImage,
typename TCoordRep =
double>
53 static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension;
67 using PixelType =
typename Superclass::InputPixelType;
85 using typename Superclass::OutputType;
88 using typename Superclass::InputImageType;
91 using typename Superclass::RealType;
94 static constexpr unsigned int ImageDimension = Superclass::ImageDimension;
103 using typename Superclass::ContinuousIndexType;
151 itkSetMacro(Threshold,
double);
152 itkGetConstMacro(Threshold,
double);
182 itkExceptionMacro(
"Input image required!");
184 return input->GetLargestPossibleRegion().GetSize();
196 double m_Threshold{};
226 UNDEFINED_DIRECTION = 0,
234#ifndef ITK_MANUAL_INSTANTIATION
235# include "itkRayCastInterpolateImageFunction.hxx"
Contains all enum classes used by RayCastHelper class.
Array2D class representing a 2D array.
NumericTraits< TInputImage::PixelType >::RealType OutputType
TInputImage InputImageType
typename InputImageType::IndexType IndexType
Control indentation during Print() invocation.
Base class for all image interpolators.
Light weight base class for most itk classes.
Class to hold and manage different parameter types used during optimization.
A templated class holding a geometric point in n-Dimensional space.
Projective interpolation of an image at specified positions.
typename TransformType::ParametersType TransformParametersType
typename TransformType::JacobianType TransformJacobianType
SizeType GetRadius() const override
RayCastInterpolateImageFunction()
~RayCastInterpolateImageFunction() override=default
typename InterpolatorType::Pointer InterpolatorPointer
typename TInputImage::SizeType SizeType
typename Superclass::InputPixelType PixelType
bool IsInsideBuffer(const ContinuousIndexType &) const override
bool IsInsideBuffer(const PointType &) const override
OutputType Evaluate(const PointType &point) const override
Interpolate the image at a point position.
typename TransformType::InputPointType InputPointType
typename TransformType::OutputPointType OutputPointType
typename TransformType::Pointer TransformPointer
void PrintSelf(std::ostream &os, Indent indent) const override
bool IsInsideBuffer(const IndexType &) const override
OutputType EvaluateAtContinuousIndex(const ContinuousIndexType &index) const override
A templated class holding a n-Dimensional vector.
SmartPointer< Self > Pointer
ImageBaseType::IndexType IndexType
ImageBaseType::PointType PointType
ImageBaseType::SizeType SizeType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
*par Constraints *The filter image with at least two dimensions and a vector *length of at least The theory supports extension to scalar but *the implementation of the itk vector classes do not **The template parameter TRealType must be floating point(float or double) or *a user-defined "real" numerical type with arithmetic operations defined *sufficient to compute derivatives. **\par Performance *This filter will automatically multithread if run with *SetUsePrincipleComponents