Add clamped degrees deviation for glideslope.
This commit is contained in:
parent
77a8b4db30
commit
5f16e4da60
2 changed files with 5 additions and 0 deletions
src/Instrumentation
|
@ -81,6 +81,7 @@ FGNavRadio::FGNavRadio(SGPropertyNode *node) :
|
||||||
loc_node(NULL),
|
loc_node(NULL),
|
||||||
loc_dist_node(NULL),
|
loc_dist_node(NULL),
|
||||||
gs_deflection_node(NULL),
|
gs_deflection_node(NULL),
|
||||||
|
gs_deflection_deg_node(NULL),
|
||||||
gs_deflection_norm_node(NULL),
|
gs_deflection_norm_node(NULL),
|
||||||
gs_rate_of_climb_node(NULL),
|
gs_rate_of_climb_node(NULL),
|
||||||
gs_dist_node(NULL),
|
gs_dist_node(NULL),
|
||||||
|
@ -191,6 +192,7 @@ FGNavRadio::init ()
|
||||||
loc_node = node->getChild("nav-loc", 0, true);
|
loc_node = node->getChild("nav-loc", 0, true);
|
||||||
loc_dist_node = node->getChild("nav-distance", 0, true);
|
loc_dist_node = node->getChild("nav-distance", 0, true);
|
||||||
gs_deflection_node = node->getChild("gs-needle-deflection", 0, true);
|
gs_deflection_node = node->getChild("gs-needle-deflection", 0, true);
|
||||||
|
gs_deflection_deg_node = node->getChild("gs-needle-deflection-deg", 0, true);
|
||||||
gs_deflection_norm_node = node->getChild("gs-needle-deflection-norm", 0, true);
|
gs_deflection_norm_node = node->getChild("gs-needle-deflection-norm", 0, true);
|
||||||
gs_rate_of_climb_node = node->getChild("gs-rate-of-climb", 0, true);
|
gs_rate_of_climb_node = node->getChild("gs-rate-of-climb", 0, true);
|
||||||
gs_dist_node = node->getChild("gs-distance", 0, true);
|
gs_dist_node = node->getChild("gs-distance", 0, true);
|
||||||
|
@ -342,6 +344,7 @@ void FGNavRadio::clearOutputs()
|
||||||
cdi_xtrack_hdg_err_node->setDoubleValue( 0.0 );
|
cdi_xtrack_hdg_err_node->setDoubleValue( 0.0 );
|
||||||
time_to_intercept->setDoubleValue( 0.0 );
|
time_to_intercept->setDoubleValue( 0.0 );
|
||||||
gs_deflection_node->setDoubleValue( 0.0 );
|
gs_deflection_node->setDoubleValue( 0.0 );
|
||||||
|
gs_deflection_deg_node->setDoubleValue(0.0);
|
||||||
gs_deflection_norm_node->setDoubleValue(0.0);
|
gs_deflection_norm_node->setDoubleValue(0.0);
|
||||||
|
|
||||||
to_flag_node->setBoolValue( false );
|
to_flag_node->setBoolValue( false );
|
||||||
|
@ -648,6 +651,7 @@ void FGNavRadio::updateCDI(double dt)
|
||||||
_gsNeedleDeflectionNorm = 0.0;
|
_gsNeedleDeflectionNorm = 0.0;
|
||||||
}
|
}
|
||||||
gs_deflection_node->setDoubleValue(_gsNeedleDeflection);
|
gs_deflection_node->setDoubleValue(_gsNeedleDeflection);
|
||||||
|
gs_deflection_deg_node->setDoubleValue(_gsNeedleDeflectionNorm * 0.7);
|
||||||
gs_deflection_norm_node->setDoubleValue(_gsNeedleDeflectionNorm);
|
gs_deflection_norm_node->setDoubleValue(_gsNeedleDeflectionNorm);
|
||||||
|
|
||||||
last_xtrack_error = _cdiCrossTrackErrorM;
|
last_xtrack_error = _cdiCrossTrackErrorM;
|
||||||
|
|
|
@ -97,6 +97,7 @@ class FGNavRadio : public SGSubsystem
|
||||||
SGPropertyNode_ptr loc_node;
|
SGPropertyNode_ptr loc_node;
|
||||||
SGPropertyNode_ptr loc_dist_node;
|
SGPropertyNode_ptr loc_dist_node;
|
||||||
SGPropertyNode_ptr gs_deflection_node;
|
SGPropertyNode_ptr gs_deflection_node;
|
||||||
|
SGPropertyNode_ptr gs_deflection_deg_node;
|
||||||
SGPropertyNode_ptr gs_deflection_norm_node;
|
SGPropertyNode_ptr gs_deflection_norm_node;
|
||||||
SGPropertyNode_ptr gs_rate_of_climb_node;
|
SGPropertyNode_ptr gs_rate_of_climb_node;
|
||||||
SGPropertyNode_ptr gs_dist_node;
|
SGPropertyNode_ptr gs_dist_node;
|
||||||
|
|
Loading…
Add table
Reference in a new issue