1
0
Fork 0

Optimize IESI

This commit is contained in:
legoboyvdlp R 2020-07-12 22:08:11 +01:00
parent 629c579b26
commit e5236d00b3

View file

@ -18,9 +18,6 @@ var iesi_rate = props.globals.getNode("/systems/acconfig/options/iesi-rate", 1);
var et = props.globals.getNode("/sim/time/elapsed-sec", 1); var et = props.globals.getNode("/sim/time/elapsed-sec", 1);
var aconfig = props.globals.getNode("/systems/acconfig/autoconfig-running", 1); var aconfig = props.globals.getNode("/systems/acconfig/autoconfig-running", 1);
var dcess = 0;
var dchot1 = 0;
var airspeed = props.globals.getNode("/instrumentation/airspeed-indicator/indicated-speed-kt", 1); var airspeed = props.globals.getNode("/instrumentation/airspeed-indicator/indicated-speed-kt", 1);
var mach = props.globals.getNode("/instrumentation/airspeed-indicator/indicated-mach", 1); var mach = props.globals.getNode("/instrumentation/airspeed-indicator/indicated-mach", 1);
var pitch = props.globals.getNode("/orientation/pitch-deg", 1); var pitch = props.globals.getNode("/orientation/pitch-deg", 1);
@ -29,7 +26,7 @@ var skid = props.globals.getNode("/instrumentation/slip-skid-ball/indicated-slip
var altitude = props.globals.getNode("/instrumentation/altimeter/indicated-altitude-ft", 1); var altitude = props.globals.getNode("/instrumentation/altimeter/indicated-altitude-ft", 1);
var altitude_ind = props.globals.getNode("/instrumentation/altimeter/indicated-altitude-ft-pfd", 1); var altitude_ind = props.globals.getNode("/instrumentation/altimeter/indicated-altitude-ft-pfd", 1);
var altimeter_mode = props.globals.getNode("/modes/altimeter/std", 1); var altimeter_mode = props.globals.getNode("/instrumentation/altimeter[0]/std", 1);
var qnh_hpa = props.globals.getNode("/instrumentation/altimeter/setting-hpa", 1); var qnh_hpa = props.globals.getNode("/instrumentation/altimeter/setting-hpa", 1);
var qnh_inhg = props.globals.getNode("/instrumentation/altimeter/setting-inhg", 1); var qnh_inhg = props.globals.getNode("/instrumentation/altimeter/setting-inhg", 1);
@ -77,11 +74,8 @@ var canvas_IESI_base = {
return []; return [];
}, },
update: func() { update: func() {
dcess = systems.ELEC.Bus.dcEss.getValue();
dchot1 = systems.ELEC.Bus.dcHot1.getValue();
cur_time = et.getValue(); cur_time = et.getValue();
if (dcess >= 25 or (dchot1 >= 25 and airspeed.getValue() >= 50 and cur_time >= 5)) { if (systems.ELEC.Bus.dcEss.getValue() >= 25 or (systems.ELEC.Bus.dcHot1.getValue() >= 25 and airspeed.getValue() >= 50 and cur_time >= 5)) {
IESI.page.show(); IESI.page.show();
IESI.update(); IESI.update();
@ -103,7 +97,8 @@ var canvas_IESI = {
new: func(canvas_group, file) { new: func(canvas_group, file) {
var m = {parents: [canvas_IESI, canvas_IESI_base]}; var m = {parents: [canvas_IESI, canvas_IESI_base]};
m.init(canvas_group, file); m.init(canvas_group, file);
m._cachedInhg = -99;
return m; return m;
}, },
getKeys: func() { getKeys: func() {
@ -113,6 +108,7 @@ var canvas_IESI = {
if (iesi_time.getValue() + 90 >= et.getValue()) { if (iesi_time.getValue() + 90 >= et.getValue()) {
me["IESI"].hide(); me["IESI"].hide();
me["IESI_Init"].show(); me["IESI_Init"].show();
return;
} else { } else {
me["IESI_Init"].hide(); me["IESI_Init"].hide();
me["IESI"].show(); me["IESI"].show();
@ -175,8 +171,13 @@ var canvas_IESI = {
altTens = num(right(sprintf("%02d", altitude.getValue()), 2)); altTens = num(right(sprintf("%02d", altitude.getValue()), 2));
me["ALT_tens"].setTranslation(0, altTens * 3.16); me["ALT_tens"].setTranslation(0, altTens * 3.16);
# QNH if (qnh_inhg.getValue() != me._cachedInhg) {
if (altimeter_mode.getValue() == 1) { me._cachedInhg = qnh_inhg.getValue();
me.updateQNH();
}
},
updateQNH: func() {
if (altimeter_mode.getBoolValue()) {
me["QNH_setting"].hide(); me["QNH_setting"].hide();
me["QNH_std"].show(); me["QNH_std"].show();
} else { } else {
@ -184,7 +185,7 @@ var canvas_IESI = {
me["QNH_setting"].show(); me["QNH_setting"].show();
me["QNH_std"].hide(); me["QNH_std"].hide();
} }
}, }
}; };
setlistener("sim/signals/fdm-initialized", func { setlistener("sim/signals/fdm-initialized", func {
@ -199,12 +200,16 @@ setlistener("sim/signals/fdm-initialized", func {
IESI = canvas_IESI.new(group_IESI, "Aircraft/A320-family/Models/Instruments/IESI/res/iesi.svg"); IESI = canvas_IESI.new(group_IESI, "Aircraft/A320-family/Models/Instruments/IESI/res/iesi.svg");
IESI.updateQNH();
IESI_update.start(); IESI_update.start();
if (iesi_rate.getValue() > 1) { if (iesi_rate.getValue() > 1) {
rateApply(); rateApply();
} }
}); });
setlistener("/instrumentation/altimeter[0]/std", func() { if (IESI != nil) { IESI.updateQNH(); } }, 0, 0);
var rateApply = func { var rateApply = func {
IESI_update.restart(0.05 * iesi_rate.getValue()); IESI_update.restart(0.05 * iesi_rate.getValue());
} }