18 #ifndef sitkWarpImageFilter_h
19 #define sitkWarpImageFilter_h
100 SITK_RETURN_SELF_TYPE_HEADER
SetOutputSize (
const std::vector<uint32_t> & OutputSize ) { this->m_OutputSize = OutputSize;
return *
this; }
110 SITK_RETURN_SELF_TYPE_HEADER
SetOutputOrigin (
const std::vector<double> & OutputOrigin ) { this->m_OutputOrigin = OutputOrigin;
return *
this; }
120 SITK_RETURN_SELF_TYPE_HEADER
SetOutputSpacing (
const std::vector<double> & OutputSpacing ) { this->m_OutputSpacing = OutputSpacing;
return *
this; }
130 SITK_RETURN_SELF_TYPE_HEADER
SetOutputDirection ( std::vector<double> OutputDirection ) { this->m_OutputDirection = OutputDirection;
return *
this; }
140 SITK_RETURN_SELF_TYPE_HEADER
SetEdgePaddingValue (
double EdgePaddingValue ) { this->m_EdgePaddingValue = EdgePaddingValue;
return *
this; }
147 std::string
GetName()
const {
return std::string (
"WarpImageFilter"); }
150 std::string ToString()
const;
158 Image Execute (
const Image& image1,
const Image& image2,
InterpolatorEnum interpolator,
const std::vector<uint32_t> & outputSize,
const std::vector<double> & outputOrigin,
const std::vector<double> & outputSpacing, std::vector<double> outputDirection,
double edgePaddingValue );
162 void SetOutputParameteresFromImage(
const Image & refImage );
167 typedef Image (Self::*MemberFunctionType)(
const Image& image1,
const Image& image2 );
170 template <
class TImageType1,
class TImageType2>
Image DualExecuteInternal (
const Image& image1,
const Image& image2 );
172 template <
class TImageType1,
class TImageType2>
Image DualExecuteInternalVector (
const Image& image1,
const Image& image2 );
201 SITKBasicFilters_EXPORT Image Warp (
const Image& image1,
const Image& image2,
InterpolatorEnum interpolator =
itk::simple::sitkLinear,
const std::vector<uint32_t> & outputSize = std::vector<uint32_t>(3, 0),
const std::vector<double> & outputOrigin = std::vector<double>(3, 0.0),
const std::vector<double> & outputSpacing = std::vector<double>(3, 1.0), std::vector<double> outputDirection = std::vector<double>(),
double edgePaddingValue = 0.0 );
Self & SetOutputSpacing(const std::vector< double > &OutputSpacing)
std::vector< double > GetOutputSpacing() const
Self & SetInterpolator(InterpolatorEnum Interpolator)
N-D linear interpolation.
#define SITKBasicFilters_EXPORT
typelist::MakeTypeList< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > >::Type BasicPixelIDTypeList
std::vector< uint32_t > GetOutputSize() const
InterpolatorEnum GetInterpolator() const
BasicPixelIDTypeList PixelIDTypeList
Self & SetOutputOrigin(const std::vector< double > &OutputOrigin)
Self & SetOutputDirection(std::vector< double > OutputDirection)
Warps an image using an input displacement field.
std::vector< double > GetOutputDirection() const
std::vector< uint32_t > m_OutputSize
std::vector< double > GetOutputOrigin() const
double GetEdgePaddingValue() const
The main Image class for SimpleITK.
InterpolatorEnum m_Interpolator
std::vector< double > m_OutputSpacing
std::vector< double > m_OutputDirection
std::string GetName() const
std::vector< double > m_OutputOrigin
double m_EdgePaddingValue
Self & SetEdgePaddingValue(double EdgePaddingValue)
Image Warp(const Image &image1, const Image &image2, InterpolatorEnum interpolator=itk::simple::sitkLinear, const std::vector< uint32_t > &outputSize=std::vector< uint32_t >(3, 0), const std::vector< double > &outputOrigin=std::vector< double >(3, 0.0), const std::vector< double > &outputSpacing=std::vector< double >(3, 1.0), std::vector< double > outputDirection=std::vector< double >(), double edgePaddingValue=0.0)
Warps an image using an input displacement field.
The base interface for SimpleITK filters that take one input image.
Self & SetOutputSize(const std::vector< uint32_t > &OutputSize)
nsstd::auto_ptr< detail::DualMemberFunctionFactory< MemberFunctionType > > m_DualMemberFactory