Loading [MathJax]/extensions/tex2jax.js
SimpleITK  2.5.0.dev
sitkBSplineTransformInitializerFilter.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 sitkBSplineTransformInitializerFilter_h
19#define sitkBSplineTransformInitializerFilter_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 sitkImageFilterTemplate.h.in to make changes.
25 */
26
27#include <memory>
28
29#include "sitkBasicFilters.h"
30#include "sitkImageFilter.h"
32
33namespace itk::simple
34{
35
49{
50public:
52
56
59
62
63
68 SITK_RETURN_SELF_TYPE_HEADER
69 SetTransformDomainMeshSize(const std::vector<uint32_t> & TransformDomainMeshSize)
70 {
71 this->m_TransformDomainMeshSize = TransformDomainMeshSize;
72 return *this;
73 }
74
77 std::vector<uint32_t>
79 {
80 return this->m_TransformDomainMeshSize;
81 }
82
87 SITK_RETURN_SELF_TYPE_HEADER
88 SetOrder(unsigned int order)
89 {
90 this->m_Order = order;
91 return *this;
92 }
93 unsigned int
94 GetOrder() const
95 {
96 return this->m_Order;
97 }
98
100 std::string
101 GetName() const override
102 {
103 return std::string("BSplineTransformInitializerFilter");
104 }
105
107 std::string
108 ToString() const override;
109
110
113 Execute(const Image & image1);
114
115private:
117
118 typedef BSplineTransform (Self::*MemberFunctionType)(const Image & image1);
119 template <class TImageType>
121 ExecuteInternal(const Image & image1);
122 template <unsigned int NDimension, unsigned int NOrder>
125
126
128
129 std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType>> m_MemberFactory;
130
131
132 std::vector<uint32_t> m_TransformDomainMeshSize;
133 unsigned int m_Order;
134};
135
136
153 const std::vector<uint32_t> & transformDomainMeshSize = std::vector<uint32_t>(3, 1u),
154 unsigned int order = 3u);
155
156} // namespace itk::simple
157#endif
BSplineTransform ExecuteInternalWithOrder(const Image &image1)
Self & SetTransformDomainMeshSize(const std::vector< uint32_t > &TransformDomainMeshSize)
BSplineTransform Execute(const Image &image1)
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
BSplineTransform(Self::* MemberFunctionType)(const Image &image1)
BSplineTransform ExecuteInternal(const Image &image1)
A deformable transform over a bounded spatial domain using a BSpline representation for a 2D or 3D co...
The Image class for SimpleITK.
Definition sitkImage.h:77
BSplineTransform BSplineTransformInitializer(const Image &image1, const std::vector< uint32_t > &transformDomainMeshSize=std::vector< uint32_t >(3, 1u), unsigned int order=3u)
BSplineTransformInitializerFilter is a helper class intended to initialize the control point grid suc...
typelist2::append< BasicPixelIDTypeList, ComplexPixelIDTypeList, VectorPixelIDTypeList, LabelPixelIDTypeList >::type AllPixelIDTypeList
#define SITKBasicFilters_EXPORT