18 #ifndef itkVectorInterpolateImageFunction_h
19 #define itkVectorInterpolateImageFunction_h
45 template<
typename TInputImage,
typename TCoordRep =
double >
49 typename NumericTraits< typename TInputImage::PixelType >::RealType,
54 itkStaticConstMacro(
Dimension,
unsigned int,
58 itkStaticConstMacro(ImageDimension,
unsigned int,
59 TInputImage::ImageDimension);
75 typedef typename InputImageType::PixelType
PixelType;
103 this->GetInputImage()->TransformPhysicalPointToContinuousIndex(point, index);
104 return ( this->EvaluateAtContinuousIndex(index) );
117 virtual OutputType EvaluateAtContinuousIndex(
118 const ContinuousIndexType & index)
const ITK_OVERRIDE = 0;
130 PixelType input = this->GetInputImage()->GetPixel(index);
133 for (
unsigned int k = 0;
134 k < this->GetInputImage()->GetNumberOfComponentsPerPixel(); k++ )
136 output[k] =
static_cast< double >( input[k] );
145 { Superclass::PrintSelf(os, indent); }
Superclass::ContinuousIndexType ContinuousIndexType
VectorInterpolateImageFunction()
virtual OutputType Evaluate(const PointType &point) const override
Superclass::IndexType IndexType
SmartPointer< Self > Pointer
Superclass::InputImageType InputImageType
Superclass::PointType PointType
virtual OutputType EvaluateAtIndex(const IndexType &index) const override
NumericTraits< ValueType >::RealType RealType
void PrintSelf(std::ostream &os, Indent indent) const override
ImageBaseType::PointType PointType
const unsigned int Dimension
InputImageType::PixelType PixelType
~VectorInterpolateImageFunction() override
PixelType::ValueType ValueType
Control indentation during Print() invocation.
Base class for all vector image interpolaters.
ImageFunction< TInputImage, typename NumericTraits< typename TInputImage::PixelType >::RealType, TCoordRep > Superclass
Superclass::OutputType OutputType
Evaluates a function of an image at specified position.
VectorInterpolateImageFunction Self
ImageBaseType::IndexType IndexType
SmartPointer< const Self > ConstPointer