////////////////////////////////////////////////////////////////////////
FGPanelTransformation::FGPanelTransformation ()
+ : table(0)
{
}
} else if (val > t->max) {
val = t->max;
}
- val = val * t->factor + t->offset;
+ if(t->table==0) {
+ val = val * t->factor + t->offset;
+ } else {
+ val = t->table->interpolate(val) * t->factor + t->offset;
+ }
switch (t->type) {
case FGPanelTransformation::XSHIFT:
#include <GL/glut.h>
#include <plib/ssg.h>
+#include <simgear/math/interpolater.hxx>
#include <simgear/misc/props.hxx>
#include <simgear/timing/timestamp.hxx>
#include <Main/fgfs.hxx>
-
SG_USING_STD(vector);
SG_USING_STD(map);
float max;
float factor;
float offset;
+ SGInterpTable * table;
};