18 #ifndef itkComposeDisplacementFieldsImageFilter_h
19 #define itkComposeDisplacementFieldsImageFilter_h
39 template <
typename TInputImage,
typename TOutputImage = TInputImage>
53 itkStaticConstMacro( ImageDimension,
unsigned int,
54 TInputImage::ImageDimension );
60 typedef typename OutputFieldType::PixelType
PixelType;
72 typedef typename VectorType::ComponentType
RealType;
82 itkDebugMacro(
"setting displacement field to " << field );
83 if ( field != this->GetInput( 0 ) )
85 this->SetInput( 0, field );
87 if( !this->m_Interpolator.IsNull() )
89 this->m_Interpolator->SetInputImage( field );
100 return this->GetInput( 0 );
106 itkDebugMacro(
"setting warping field to " << field );
107 if ( field != this->GetInput( 1 ) )
109 this->SetInput( 1, field );
119 return this->GetInput( 1 );
123 virtual void SetInterpolator( InterpolatorType* interpolator );
134 void PrintSelf( std::ostream& os,
Indent indent ) const ITK_OVERRIDE;
137 void BeforeThreadedGenerateData() ITK_OVERRIDE;
140 void ThreadedGenerateData( const RegionType &,
ThreadIdType ) ITK_OVERRIDE;
152 #ifndef ITK_MANUAL_INSTANTIATION
153 #include "itkComposeDisplacementFieldsImageFilter.hxx"
OutputFieldType::SizeType SizeType
OutputFieldType::SpacingType SpacingType
OutputFieldType::RegionType RegionType
OutputFieldType::PixelType VectorType
void SetWarpingField(const InputFieldType *field)
OutputFieldType::PixelType PixelType
TOutputImage OutputFieldType
Base class for all process objects that output image data.
OutputFieldType::IndexType IndexType
Compose two displacement fields.
SmartPointer< Self > Pointer
OutputFieldType::PointType OriginType
ImageBaseType::DirectionType DirectionType
VectorType::ComponentType RealType
OutputFieldType::DirectionType DirectionType
ImageBaseType::PointType PointType
ComposeDisplacementFieldsImageFilter Self
unsigned int ThreadIdType
TInputImage InputFieldType
VectorInterpolateImageFunction< InputFieldType, RealType > InterpolatorType
Base class for filters that take an image as input and produce an image as output.
void SetDisplacementField(const InputFieldType *field)
SmartPointer< const Self > ConstPointer
Control indentation during Print() invocation.
Base class for all vector image interpolaters.
ImageBaseType::SizeType SizeType
const InputFieldType * GetDisplacementField() const
OutputFieldType::PointType PointType
const InputFieldType * GetWarpingField() const
ImageToImageFilter< TInputImage, TOutputImage > Superclass
ImageBaseType::IndexType IndexType