34#ifndef __itkAdvancedRayCastInterpolateImageFunction_h
35#define __itkAdvancedRayCastInterpolateImageFunction_h
37#include "itkInterpolateImageFunction.h"
38#include "itkTransform.h"
55template<
class TInputImage,
class TCoordRep =
double >
57 public InterpolateImageFunction< TInputImage, TCoordRep >
63 typedef InterpolateImageFunction< TInputImage, TCoordRep >
Superclass;
69 TInputImage::ImageDimension );
75 typedef Transform< TCoordRep, InputImageDimension, InputImageDimension >
TransformType;
83 typedef typename Superclass::InputPixelType PixelType;
85 typedef typename TInputImage::SizeType
SizeType;
163 itkSetMacro( Threshold,
double );
165 itkGetConstMacro( Threshold,
double );
197 void PrintSelf( std::ostream & os, Indent indent )
const override;
221 itkExceptionMacro(
"Input image required!");
223 return input->GetLargestPossibleRegion().GetSize();
230#ifndef ITK_MANUAL_INSTANTIATION
231#include "itkAdvancedRayCastInterpolateImageFunction.hxx"
Projective interpolation of an image at specified positions.
InterpolatorPointer m_Interpolator
Pointer to the interpolator.
Superclass::IndexType IndexType
TransformType::InputPointType InputPointType
SizeType GetRadius() const override
AdvancedRayCastInterpolateImageFunction Self
AdvancedRayCastInterpolateImageFunction(const Self &)
InterpolatorType::Pointer InterpolatorPointer
Superclass::PointType PointType
TInputImage::SizeType SizeType
TransformType::ParametersType TransformParametersType
Superclass::RealType RealType
OutputType EvaluateAtContinuousIndex(const ContinuousIndexType &index) const override
AdvancedRayCastInterpolateImageFunction()
Constructor.
OutputType Evaluate(const PointType &point) const override
Interpolate the image at a point position.
bool IsInsideBuffer(const IndexType &) const override
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
bool IsInsideBuffer(const ContinuousIndexType &) const override
Superclass::InputImageType InputImageType
SmartPointer< Self > Pointer
void PrintSelf(std::ostream &os, Indent indent) const override
Print the object.
Superclass::OutputType OutputType
void operator=(const Self &)
bool IsInsideBuffer(const PointType &) const override
itkGetModifiableObjectMacro(Interpolator, InterpolatorType)
itkStaticConstMacro(ImageDimension, unsigned int, Superclass::ImageDimension)
TransformType::JacobianType TransformJacobianType
double m_Threshold
The threshold above which voxels along the ray path are integrated.
~AdvancedRayCastInterpolateImageFunction() override
Destructor.
TransformPointer m_Transform
Transformation used to calculate the new focal point position.
Transform< TCoordRep, InputImageDimension, InputImageDimension > TransformType
InputPointType m_FocalPoint
The focal point or position of the ray source.
TransformType::Pointer TransformPointer
InterpolateImageFunction< TInputImage, TCoordRep > Superclass
TransformType::OutputPointType OutputPointType
Superclass::ContinuousIndexType ContinuousIndexType
SmartPointer< const Self > ConstPointer
Vector< TCoordRep, InputImageDimension > DirectionType
itkGetModifiableObjectMacro(Transform, TransformType)
InterpolateImageFunction< TInputImage, TCoordRep > InterpolatorType