18 #ifndef sitkBSplineTransform_h
19 #define sitkBSplineTransform_h
52 explicit BSplineTransform(
const std::vector<Image> & coefficientImages,
unsigned int order = 3);
65 return std::string(
"BSplineTransform");
71 SITK_RETURN_SELF_TYPE_HEADER
72 SetTransformDomainDirection(
const std::vector<double> &);
74 GetTransformDomainDirection()
const;
75 SITK_RETURN_SELF_TYPE_HEADER
76 SetTransformDomainMeshSize(
const std::vector<unsigned int> &);
77 std::vector<unsigned int>
78 GetTransformDomainMeshSize()
const;
79 SITK_RETURN_SELF_TYPE_HEADER
80 SetTransformDomainOrigin(
const std::vector<double> &);
82 GetTransformDomainOrigin()
const;
83 SITK_RETURN_SELF_TYPE_HEADER
84 SetTransformDomainPhysicalDimensions(
const std::vector<double> &);
86 GetTransformDomainPhysicalDimensions()
const;
98 GetCoefficientImages()
const;
105 SetPimpleTransform(std::unique_ptr<PimpleTransformBase> && pimpleTransform)
override;
112 template <
typename TransformType>
116 TransformType * t =
dynamic_cast<TransformType *
>(transform);
117 if (t && (
typeid(*t) ==
typeid(TransformType)))
127 template <
typename TransformType>
129 InternalInitialization(TransformType * transform);
131 static PimpleTransformBase *
132 CreateBSplinePimpleTransform(
unsigned int dimension,
unsigned int order);
134 template <
unsigned int ND>
135 static PimpleTransformBase *
136 CreateBSplinePimpleTransform(
unsigned int order);
155 #endif // sitkBSplineTransform_h