X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fkeyframe.h;h=4b985ca7e56dfb0d5248132cd9ff7b17d287e9f2;hp=7854a928863c86ea7d2a30891d97a3687ac44b22;hb=a4549c55a6d47129bd9e42c6a49a671b759ce6d9;hpb=3f7c493e13b7108098539078b729cffc095c304b diff --git a/source/keyframe.h b/source/keyframe.h index 7854a928..4b985ca7 100644 --- a/source/keyframe.h +++ b/source/keyframe.h @@ -4,6 +4,7 @@ #include #include #include "matrix.h" +#include "transform.h" namespace Msp { namespace GL { @@ -30,6 +31,7 @@ public: void rotation(float, float, float, float); void scaling_uniform(float); void scaling(float, float, float); + void transform(); void uniforms(); }; @@ -56,7 +58,7 @@ public: typedef std::map UniformMap; private: - Matrix matrix; + Transform transform; UniformMap uniforms; RefPtr pose; @@ -64,9 +66,11 @@ public: KeyFrame(); ~KeyFrame(); + void set_transform(const Transform &); void set_matrix(const Matrix &); void set_pose(const Pose &); - const Matrix &get_matrix() const { return matrix; } + const Transform &get_transform() const { return transform; } + Matrix get_matrix() const { return transform.to_matrix(); } const UniformMap &get_uniforms() const { return uniforms; } const Pose *get_pose() const { return pose.get(); } };