00001
00021
00022
00023
00024
00025 #ifndef __SYNFIG_STUDIO_DUCK_TRANSFORM_TRANSLATE_H
00026 #define __SYNFIG_STUDIO_DUCK_TRANSFORM_TRANSLATE_H
00027
00028
00029
00030 #include "duckmatic.h"
00031
00032
00033
00034
00035
00036
00037
00038 namespace studio {
00039
00040 class Transform_Translate : public synfig::Transform
00041 {
00042 private:
00043 synfig::Vector origin;
00044 std::vector<synfig::Vector> positions;
00045
00046 public:
00047 Transform_Translate(const synfig::GUID& guid, const synfig::Vector& origin):Transform(guid), origin(origin) { }
00048 synfig::Vector perform(const synfig::Vector& x)const { return x+origin; }
00049 synfig::Vector unperform(const synfig::Vector& x)const { return x-origin; }
00050 };
00051
00052 };
00053
00054
00055 #endif