18 #ifndef itkWarpImageFilter_h
19 #define itkWarpImageFilter_h
85 typename TOutputImage,
86 typename TDisplacementField
121 itkStaticConstMacro(ImageDimension,
unsigned int,
122 TOutputImage::ImageDimension);
123 itkStaticConstMacro(InputImageDimension,
unsigned int,
124 TInputImage::ImageDimension);
125 itkStaticConstMacro(DisplacementFieldDimension,
unsigned int,
126 TDisplacementField::ImageDimension);
136 #ifdef ITKV3_COMPATIBILITY
137 typedef TDisplacementField DeformationFieldType;
138 typedef typename DeformationFieldType::Pointer DeformationFieldPointer;
139 typedef typename DeformationFieldType::PixelType DeformationType;
162 #ifdef ITKV3_COMPATIBILITY
165 this->SetDisplacementField(field);
167 DeformationFieldType * GetDeformationField(
void)
169 return const_cast<DeformationFieldType *
> (GetDisplacementField());
174 itkSetObjectMacro(Interpolator, InterpolatorType);
175 itkGetModifiableObjectMacro(Interpolator, InterpolatorType);
179 itkSetMacro(OutputSpacing, SpacingType);
180 virtual void SetOutputSpacing(
const double *values);
184 itkGetConstReferenceMacro(OutputSpacing, SpacingType);
188 virtual void SetOutputOrigin(
const double *values);
192 itkGetConstReferenceMacro(OutputOrigin,
PointType);
200 void SetOutputParametersFromImage(
const ImageBaseType *image);
204 itkSetMacro(OutputStartIndex,
IndexType);
207 itkGetConstReferenceMacro(OutputStartIndex,
IndexType);
213 itkGetConstReferenceMacro(OutputSize,
SizeType);
216 itkSetMacro(EdgePaddingValue, PixelType);
219 itkGetConstMacro(EdgePaddingValue, PixelType);
226 virtual void GenerateOutputInformation() ITK_OVERRIDE;
234 virtual
void GenerateInputRequestedRegion() ITK_OVERRIDE;
238 virtual
void BeforeThreadedGenerateData() ITK_OVERRIDE;
242 virtual
void AfterThreadedGenerateData() ITK_OVERRIDE;
244 #ifdef ITK_USE_CONCEPT_CHECKING
247 ( Concept::SameDimension< ImageDimension, InputImageDimension > ) );
249 ( Concept::SameDimension< ImageDimension, DisplacementFieldDimension > ) );
251 ( Concept::HasNumericTraits< typename TInputImage::InternalPixelType > ) );
253 ( Concept::HasNumericTraits< typename TDisplacementField::PixelType::ValueType > ) );
261 void PrintSelf(std::ostream & os, Indent indent)
const ITK_OVERRIDE;
266 void ThreadedGenerateData(
const OutputImageRegionType & outputRegionForThread,
275 virtual void VerifyInputInformation() ITK_OVERRIDE;
285 void EvaluateDisplacementAtPhysicalPoint(const
PointType & p, DisplacementType & output);
290 void EvaluateDisplacementAtPhysicalPoint(const
PointType & p, const DisplacementFieldType * fieldPtr,
291 DisplacementType & output);
293 bool m_DefFieldSameInformation;
312 #ifndef ITK_MANUAL_INSTANTIATION
313 #include "itkWarpImageFilter.hxx"
Superclass::InputImageType InputImageType
ImageToImageFilter< TInputImage, TOutputImage > Superclass
TDisplacementField DisplacementFieldType
OutputImageType::InternalPixelType PixelComponentType
OutputImageType::SizeType SizeType
signed long IndexValueType
InterpolateImageFunction< InputImageType, CoordRepType > InterpolatorType
SmartPointer< const Self > ConstPointer
TOutputImage::RegionType OutputImageRegionType
OutputImageType::IndexType IndexType
Base class for all process objects that output image data.
SmartPointer< Self > Pointer
ImageBase< itkGetStaticConstMacro(ImageDimension) > ImageBaseType
Superclass::InputImagePointer InputImagePointer
DisplacementFieldType::PixelType DisplacementType
OutputImageType::PixelType PixelType
ImageBaseType::DirectionType DirectionType
itk::ImageBase< Dimension > ImageBaseType
TOutputImage::DirectionType DirectionType
OutputImageType::IndexValueType IndexValueType
ImageBaseType::PointType PointType
OutputImageType::SpacingType SpacingType
Warps an image using an input displacement field.
DisplacementFieldType::Pointer DisplacementFieldPointer
Linearly interpolate an image at specified positions.
unsigned int ThreadIdType
Point< CoordRepType, itkGetStaticConstMacro(ImageDimension) > PointType
Base class for all image interpolaters.
Base class for templated image classes.
InterpolatorType::Pointer InterpolatorPointer
Superclass::OutputImagePointer OutputImagePointer
LinearInterpolateImageFunction< InputImageType, CoordRepType > DefaultInterpolatorType
Base class for filters that take an image as input and produce an image as output.
ImageBaseType::SizeType SizeType
Superclass::OutputImageType OutputImageType
#define itkConceptMacro(name, concept)
Superclass::InputImageConstPointer InputImageConstPointer
ImageBaseType::IndexType IndexType