SimpleITK  2.0.0
sitkTransformToDisplacementFieldFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18 #ifndef sitkTransformToDisplacementFieldFilter_h
19 #define sitkTransformToDisplacementFieldFilter_h
20 
21 /*
22  * WARNING: DO NOT EDIT THIS FILE!
23  * THIS FILE IS AUTOMATICALLY GENERATED BY THE SIMPLEITK BUILD PROCESS.
24  * Please look at sitkImageSourceTemplate.h.in to make changes.
25  */
26 
27 #include <memory>
28 
29 #include "sitkBasicFilters.h"
30 #include "sitkImageFilter.h"
31 
32 namespace itk {
33  namespace simple {
34 
52  public:
54 
57 
61 
64 
65 
66 
67 \
68 
72  SITK_RETURN_SELF_TYPE_HEADER SetOutputPixelType ( PixelIDValueEnum OutputPixelType ) { this->m_OutputPixelType = OutputPixelType; return *this; }
73 
77  PixelIDValueEnum GetOutputPixelType() const { return this->m_OutputPixelType; }\
78 
82  SITK_RETURN_SELF_TYPE_HEADER SetSize ( std::vector<unsigned int> Size ) { this->m_Size = std::move(Size); return *this; }
83 
87  std::vector<unsigned int> GetSize() const { return this->m_Size; }\
88 
92  SITK_RETURN_SELF_TYPE_HEADER SetOutputOrigin ( std::vector<double> OutputOrigin ) { this->m_OutputOrigin = std::move(OutputOrigin); return *this; }
93 
97  std::vector<double> GetOutputOrigin() const { return this->m_OutputOrigin; }\
98 
102  SITK_RETURN_SELF_TYPE_HEADER SetOutputSpacing ( std::vector<double> OutputSpacing ) { this->m_OutputSpacing = std::move(OutputSpacing); return *this; }
103 
107  std::vector<double> GetOutputSpacing() const { return this->m_OutputSpacing; }\
108 
112  SITK_RETURN_SELF_TYPE_HEADER SetOutputDirection ( std::vector<double> OutputDirection ) { this->m_OutputDirection = OutputDirection; return *this; }
113 
117  std::vector<double> GetOutputDirection() const { return this->m_OutputDirection; }
118 
120  std::string GetName() const { return std::string ("TransformToDisplacementFieldFilter"); }
121 
123  std::string ToString() const;
124 
125 
128  Image Execute ( const Transform & transform );
129 
130 
132  void SetReferenceImage(const Image & refImage );
133 
134 
135  private:
136 
139  using MemberFunctionType = Image (Self::*)( const Transform * transform );
140  template <class TImageType> Image ExecuteInternal ( const Transform * transform );
141 
142 
144 
145  std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
146 
147 
149 
150  std::vector<unsigned int> m_Size{std::vector<unsigned int>(3, 64)};
151 
152  std::vector<double> m_OutputOrigin{std::vector<double>(3, 0.0)};
153 
154  std::vector<double> m_OutputSpacing{std::vector<double>(3, 1.0)};
155 
156  /* Passing a zero sized array, defaults to identiy matrix. The size of the array must exactly match the direction matrix for the dimension of the image. */
157  std::vector<double> m_OutputDirection{std::vector<double>()};
158 
159 
160 
161 
162 
163  };
164 
165 
166 
175 SITKBasicFilters_EXPORT Image TransformToDisplacementField ( const Transform & transform, PixelIDValueEnum outputPixelType = itk::simple::sitkVectorFloat64, std::vector<unsigned int> size = std::vector<unsigned int>(3, 64), std::vector<double> outputOrigin = std::vector<double>(3, 0.0), std::vector<double> outputSpacing = std::vector<double>(3, 1.0), std::vector<double> outputDirection = std::vector<double>() );
176  }
177 }
178 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:75
sitkBasicFilters.h
itk::simple::TransformToDisplacementField
Image TransformToDisplacementField(const Transform &transform, PixelIDValueEnum outputPixelType=itk::simple::sitkVectorFloat64, std::vector< unsigned int > size=std::vector< unsigned int >(3, 64), std::vector< double > outputOrigin=std::vector< double >(3, 0.0), std::vector< double > outputSpacing=std::vector< double >(3, 1.0), std::vector< double > outputDirection=std::vector< double >())
Generate a displacement field from a coordinate transform.
itk::Size
itk::simple::Transform
A simplified wrapper around a variety of ITK transforms.
Definition: sitkTransform.h:80
itk::simple::detail::MemberFunctionAddressor
Definition: sitkDetail.h:32
itk::simple::TransformToDisplacementFieldFilter::SetOutputOrigin
Self & SetOutputOrigin(std::vector< double > OutputOrigin)
Definition: sitkTransformToDisplacementFieldFilter.h:92
itk::simple::TransformToDisplacementFieldFilter
Generate a displacement field from a coordinate transform.
Definition: sitkTransformToDisplacementFieldFilter.h:51
itk::simple::TransformToDisplacementFieldFilter::SetOutputDirection
Self & SetOutputDirection(std::vector< double > OutputDirection)
Definition: sitkTransformToDisplacementFieldFilter.h:112
itk::simple::TransformToDisplacementFieldFilter::GetName
std::string GetName() const
Definition: sitkTransformToDisplacementFieldFilter.h:120
itk::simple::PixelIDValueEnum
PixelIDValueEnum
Enumerated values of pixelIDs.
Definition: sitkPixelIDValues.h:90
sitkImageFilter.h
itk::simple::sitkVectorFloat64
@ sitkVectorFloat64
Multi-component of 64 bit float.
Definition: sitkPixelIDValues.h:113
itk::simple::TransformToDisplacementFieldFilter::SetOutputSpacing
Self & SetOutputSpacing(std::vector< double > OutputSpacing)
Definition: sitkTransformToDisplacementFieldFilter.h:102
itk::simple::TransformToDisplacementFieldFilter::SetOutputPixelType
Self & SetOutputPixelType(PixelIDValueEnum OutputPixelType)
Set the output pixel type, only sitkVectorFloat32 and sitkVectorFloat64 are supported.
Definition: sitkTransformToDisplacementFieldFilter.h:72
itk::simple::TransformToDisplacementFieldFilter::PixelIDTypeList
RealVectorPixelIDTypeList PixelIDTypeList
Definition: sitkTransformToDisplacementFieldFilter.h:63
itk::simple::TransformToDisplacementFieldFilter::GetOutputPixelType
PixelIDValueEnum GetOutputPixelType() const
Get the ouput pixel type.
Definition: sitkTransformToDisplacementFieldFilter.h:77
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::TransformToDisplacementFieldFilter::GetOutputOrigin
std::vector< double > GetOutputOrigin() const
Definition: sitkTransformToDisplacementFieldFilter.h:97
itk::simple::TransformToDisplacementFieldFilter::GetSize
std::vector< unsigned int > GetSize() const
Definition: sitkTransformToDisplacementFieldFilter.h:87
itk
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:36
itk::simple::TransformToDisplacementFieldFilter::GetOutputDirection
std::vector< double > GetOutputDirection() const
Definition: sitkTransformToDisplacementFieldFilter.h:117
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::Transform
Definition: sitkCompositeTransform.h:31
itk::simple::RealVectorPixelIDTypeList
typelist::MakeTypeList< VectorPixelID< float >, VectorPixelID< double > >::Type RealVectorPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:142
itk::simple::TransformToDisplacementFieldFilter::MemberFunctionType
Image(Self::*)(const Transform *transform) MemberFunctionType
Definition: sitkTransformToDisplacementFieldFilter.h:139
itk::simple::TransformToDisplacementFieldFilter::SetSize
Self & SetSize(std::vector< unsigned int > Size)
Definition: sitkTransformToDisplacementFieldFilter.h:82
itk::simple::TransformToDisplacementFieldFilter::m_MemberFactory
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Definition: sitkTransformToDisplacementFieldFilter.h:145
itk::simple::TransformToDisplacementFieldFilter::GetOutputSpacing
std::vector< double > GetOutputSpacing() const
Definition: sitkTransformToDisplacementFieldFilter.h:107