18 #ifndef sitkAffineTransform_h
19 #define sitkAffineTransform_h
48 const std::vector<double> & translation,
49 const std::vector<double> & fixedCenter = std::vector<double>(3, 0.0));
59 return std::string(
"AffineTransform");
64 GetTranslation()
const;
65 SITK_RETURN_SELF_TYPE_HEADER
66 SetTranslation(
const std::vector<double> & translation);
68 SITK_RETURN_SELF_TYPE_HEADER
69 SetMatrix(
const std::vector<double> & matrix);
74 SITK_RETURN_SELF_TYPE_HEADER
75 SetCenter(
const std::vector<double> & params);
80 SITK_RETURN_SELF_TYPE_HEADER
81 Scale(
const std::vector<double> & factor,
bool pre =
false);
82 SITK_RETURN_SELF_TYPE_HEADER
83 Scale(
double factor,
bool pre =
false);
85 SITK_RETURN_SELF_TYPE_HEADER
86 Shear(
int axis1,
int axis2,
double coef,
bool pre =
false);
88 SITK_RETURN_SELF_TYPE_HEADER
89 Translate(
const std::vector<double> & offset,
bool pre =
false);
91 SITK_RETURN_SELF_TYPE_HEADER
92 Rotate(
int axis1,
int axis2,
double angle,
bool pre =
false);
96 SetPimpleTransform(std::unique_ptr<PimpleTransformBase> && pimpleTransform)
override;
103 template <
typename TransformType>
107 TransformType * t =
dynamic_cast<TransformType *
>(transform);
108 if (t && (
typeid(*t) ==
typeid(TransformType)))
118 template <
typename TransformType>
120 InternalInitialization(TransformType * transform);
130 std::function<void(
const std::vector<double> &,
bool)>
m_pfScale1;
139 #endif // sitkAffineTransform_h