18 #ifndef __itkWarpImageFilter_h
19 #define __itkWarpImageFilter_h
86 class TDisplacementField
115 typedef typename OutputImageType::SizeType
SizeType;
120 itkStaticConstMacro(ImageDimension,
unsigned int,
121 TOutputImage::ImageDimension);
122 itkStaticConstMacro(InputImageDimension,
unsigned int,
123 TInputImage::ImageDimension);
124 itkStaticConstMacro(DisplacementFieldDimension,
unsigned int,
125 TDisplacementField::ImageDimension);
135 #ifdef ITKV3_COMPATIBILITY
136 typedef TDisplacementField DeformationFieldType;
137 typedef typename DeformationFieldType::Pointer DeformationFieldPointer;
138 typedef typename DeformationFieldType::PixelType DeformationType;
160 #ifdef ITKV3_COMPATIBILITY
163 this->SetDisplacementField(field);
165 DeformationFieldType * GetDeformationField(
void)
167 return static_cast<DeformationFieldType *
> (GetDisplacementField());
172 itkSetObjectMacro(Interpolator, InterpolatorType);
173 itkGetModifiableObjectMacro(Interpolator, InterpolatorType);
177 itkSetMacro(OutputSpacing, SpacingType);
178 virtual void SetOutputSpacing(
const double *values);
182 itkGetConstReferenceMacro(OutputSpacing, SpacingType);
185 itkSetMacro(OutputOrigin, PointType);
186 virtual void SetOutputOrigin(
const double *values);
190 itkGetConstReferenceMacro(OutputOrigin, PointType);
193 itkSetMacro(OutputDirection, DirectionType);
194 itkGetConstReferenceMacro(OutputDirection, DirectionType);
198 void SetOutputParametersFromImage(
const ImageBaseType *image);
202 itkSetMacro(OutputStartIndex, IndexType);
205 itkGetConstReferenceMacro(OutputStartIndex, IndexType);
208 itkSetMacro(OutputSize, SizeType);
211 itkGetConstReferenceMacro(OutputSize, SizeType);
214 itkSetMacro(EdgePaddingValue, PixelType);
217 itkGetConstMacro(EdgePaddingValue, PixelType);
224 virtual void GenerateOutputInformation();
232 virtual void GenerateInputRequestedRegion();
236 virtual void BeforeThreadedGenerateData();
240 virtual void AfterThreadedGenerateData();
242 #ifdef ITK_USE_CONCEPT_CHECKING
245 ( Concept::SameDimension< ImageDimension, InputImageDimension > ) );
247 ( Concept::SameDimension< ImageDimension, DisplacementFieldDimension > ) );
249 ( Concept::HasNumericTraits< typename TInputImage::PixelType > ) );
251 ( Concept::HasNumericTraits< typename TDisplacementField::PixelType::ValueType > ) );
260 void PrintSelf(std::ostream & os, Indent indent)
const;
265 void ThreadedGenerateData(
const OutputImageRegionType & outputRegionForThread,
277 void operator=(
const Self &);
282 DisplacementType EvaluateDisplacementAtPhysicalPoint(
const PointType & p);
298 #ifndef ITK_MANUAL_INSTANTIATION
299 #include "itkWarpImageFilter.hxx"