18 #ifndef sitkBSplineTransform_h
19 #define sitkBSplineTransform_h
50 std::string
GetName()
const {
return std::string (
"BSplineTransform"); }
55 SITK_RETURN_SELF_TYPE_HEADER SetTransformDomainDirection(
const std::vector<double> &);
56 std::vector<double> GetTransformDomainDirection()
const;
57 SITK_RETURN_SELF_TYPE_HEADER SetTransformDomainMeshSize(
const std::vector<unsigned int>&);
58 std::vector<unsigned int> GetTransformDomainMeshSize()
const;
59 SITK_RETURN_SELF_TYPE_HEADER SetTransformDomainOrigin(
const std::vector<double>&);
60 std::vector<double> GetTransformDomainOrigin()
const;
61 SITK_RETURN_SELF_TYPE_HEADER SetTransformDomainPhysicalDimensions(
const std::vector<double> &);
62 std::vector<double> GetTransformDomainPhysicalDimensions()
const;
73 std::vector<Image> GetCoefficientImages ()
const;
75 unsigned int GetOrder()
const;
79 virtual void SetPimpleTransform( PimpleTransformBase *pimpleTransform );
83 using Superclass::AddTransform;
89 template<
typename TransformType >
90 void operator() (
void )
const
92 TransformType *t =
dynamic_cast<TransformType*
>(transform);
93 if (t && (
typeid(*t)==
typeid(TransformType)))
102 template <
typename TransformType>
103 void InternalInitialization(TransformType *transform);
105 static PimpleTransformBase *CreateBSplinePimpleTransform(
unsigned int dimension,
unsigned int order);
107 template <
unsigned int ND>
108 static PimpleTransformBase *CreateBSplinePimpleTransform(
unsigned int order);
110 nsstd::function<std::vector<double> ()> m_pfGetTransformDomainDirection;
111 nsstd::function<void (const std::vector<double> &)> m_pfSetTransformDomainDirection;
112 nsstd::function<std::vector<unsigned int> ()> m_pfGetTransformDomainMeshSize;
113 nsstd::function<void (const std::vector<unsigned int>&)> m_pfSetTransformDomainMeshSize;
114 nsstd::function<std::vector<double> ()> m_pfGetTransformDomainOrigin;
115 nsstd::function<void (const std::vector<double>&)> m_pfSetTransformDomainOrigin;
116 nsstd::function<std::vector<double> ()> m_pfGetTransformDomainPhysicalDimensions;
117 nsstd::function<void (const std::vector<double> &)> m_pfSetTransformDomainPhysicalDimensions;
119 nsstd::function<std::vector<Image> ()> m_pfGetCoefficientImages;
127 #endif // sitkBSplineTransform_h
#define SITKCommon_EXPORT