absence_thelab

view src/3deng/motion.h @ 0:1cffe3409164

initial commit
author John Tsiombikas <nuclear@member.fsf.org>
date Thu, 23 Oct 2014 01:46:07 +0300
parents
children
line source
1 #ifndef _MOTION_H_
2 #define _MOTION_H_
4 #include "n3dmath.h"
5 #include "curves.h"
7 class MotionController {
8 private:
9 Matrix4x4 MotionXForm;
10 bool FollowPath;
11 float ScaleInputTrans, ScaleInputRot, ScaleInputScale;
13 float (*XTranslation)(float);
14 float (*YTranslation)(float);
15 float (*ZTranslation)(float);
16 float (*XRotation)(float);
17 float (*YRotation)(float);
18 float (*ZRotation)(float);
19 float (*XScaling)(float);
20 float (*YScaling)(float);
21 float (*ZScaling)(float);
23 public:
25 MotionController();
27 void SetTranslation(float (*xtrans)(float), float (*ytrans)(float), float (*ztrans)(float), float ScaleInput = 1.0f);
28 void SetRotation(float (*xrot)(float), float (*yrot)(float), float (*zrot)(float), float ScaleInput = 1.0f);
29 void SetScaling(float (*xscale)(float), float (*yscale)(float), float (*zscale)(float), float ScaleInput = 1.0f);
30 void SetPath(const Curve &path);
32 const Matrix4x4 &GetTransformation(float t);
33 };
37 #endif // _MOTION_H_