1
0
Fork 0

Modified to use fgGetLowPass from utils.cxx.

This commit is contained in:
david 2002-09-27 22:04:21 +00:00
parent 5289055776
commit 8685e68b99
3 changed files with 9 additions and 6 deletions

View file

@ -7,6 +7,7 @@
#include "altimeter.hxx"
#include <Main/fg_props.hxx>
#include <Main/util.hxx>
// Altitude based on pressure difference from sea level.
@ -82,8 +83,11 @@ Altimeter::update (double dt)
if (_serviceable_node->getBoolValue()) {
double pressure = _pressure_node->getDoubleValue();
double setting = _setting_node->getDoubleValue();
_altitude_node
->setDoubleValue(_altitude_table->interpolate(setting-pressure));
double altitude =
fgGetLowPass(_altitude_node->getDoubleValue(),
_altitude_table->interpolate(setting - pressure),
dt * 10);
_altitude_node->setDoubleValue(altitude);
}
}

View file

@ -46,8 +46,6 @@ public:
private:
double _spin;
SGPropertyNode_ptr _serviceable_node;
SGPropertyNode_ptr _setting_node;
SGPropertyNode_ptr _pressure_node;

View file

@ -5,6 +5,7 @@
#include "static.hxx"
#include <Main/fg_props.hxx>
#include <Main/util.hxx>
StaticSystem::StaticSystem ()
@ -37,11 +38,11 @@ void
StaticSystem::update (double dt)
{
if (_serviceable_node->getBoolValue()) {
double target = _pressure_in_node->getDoubleValue();
double current = _pressure_out_node->getDoubleValue();
double delta = target - current;
current += delta * dt;
_pressure_out_node->setDoubleValue(current);
_pressure_out_node->setDoubleValue(fgGetLowPass(current, target, dt));
}
}