#include <simgear/compiler.h>
#include <simgear/math/sg_geodesy.hxx>
#include <simgear/math/sg_random.h>
-#include <simgear/sg_inlines.h>
#include <Main/fg_props.hxx>
#include <Main/util.hxx>
std::ostringstream temp;
temp << name << num;
adf_ident = temp.str();
-
- _serviceable_node->setBoolValue(true);
}
void
_in_range_node->setBoolValue(true);
bearing -= heading;
- SG_NORMALIZE_RANGE(bearing, 0.0, 360.0);
+ if (bearing < 0)
+ bearing += 360;
set_bearing(delta_time_sec, bearing);
// adf ident sound
{
double old_bearing_deg = _bearing_node->getDoubleValue();
- SG_NORMALIZE_RANGE(old_bearing_deg, 0.0, 360.0);
+ while ((bearing_deg - old_bearing_deg) >= 180)
+ old_bearing_deg += 360;
+ while ((bearing_deg - old_bearing_deg) <= -180)
+ old_bearing_deg -= 360;
bearing_deg += _error_node->getDoubleValue();
bearing_deg =
fgGetLowPass(old_bearing_deg, bearing_deg, dt * RESPONSIVENESS);