Merge branch 'dev' into 3D
|
@ -4773,6 +4773,20 @@
|
|||
<canvas_ecam>
|
||||
<file>Aircraft/A320-family/Nasal/emesary/exec.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Upper-ECAM/Upper-ECAM.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-base.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-APU.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-bleed.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-cond.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-cruise.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-door.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-elec.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-eng.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-fctl.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-fuel.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-hyd.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-press.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-sts.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM-wheel.nas</file>
|
||||
<file>Aircraft/A320-family/Models/Instruments/Lower-ECAM/Lower-ECAM.nas</file>
|
||||
</canvas_ecam>
|
||||
<canvas_iesi>
|
||||
|
|
320
Models/Instruments/Lower-ECAM/Lower-ECAM-APU.nas
Normal file
|
@ -0,0 +1,320 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var apu_load = props.globals.initNode("/systems/electrical/extra/apu-load", 0, "DOUBLE");
|
||||
var gen1_load = props.globals.initNode("/systems/electrical/extra/gen1-load", 0, "DOUBLE");
|
||||
var gen2_load = props.globals.initNode("/systems/electrical/extra/gen2-load", 0, "DOUBLE");
|
||||
|
||||
var canvas_lowerECAMPageApu =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageApu,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["APUGenOff"].hide();
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("apuFlap",1, func(val) {
|
||||
if (val) {
|
||||
obj["APUFlapOpen"].show();
|
||||
} else {
|
||||
obj["APUFlapOpen"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuNeedleRot",0.1, func(val) {
|
||||
obj["APUN-needle"].setRotation((val + 90) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuEgtRot",0.1, func(val) {
|
||||
obj["APUEGT-needle"].setRotation((val + 90) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuAvailable", nil, func(val) {
|
||||
if (val) {
|
||||
obj["APUAvail"].show();
|
||||
} else {
|
||||
obj["APUAvail"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuRpm","apuEgt","apuMaster","apuGenPB"], nil, func(val) {
|
||||
if (val.apuRpm > 0.001) {
|
||||
obj["APUN"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["APUN"].setText(sprintf("%s", math.round(val.apuRpm)));
|
||||
obj["APUN-needle"].show();
|
||||
obj["APUEGT"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["APUEGT"].setText(sprintf("%s", math.round(val.apuEgt, 5)));
|
||||
obj["APUEGT-needle"].show();
|
||||
} else {
|
||||
obj["APUN"].setColor(0.7333,0.3803,0);
|
||||
obj["APUN"].setText(sprintf("%s", "XX"));
|
||||
obj["APUN-needle"].hide();
|
||||
obj["APUEGT"].setColor(0.7333,0.3803,0);
|
||||
obj["APUEGT"].setText(sprintf("%s", "XX"));
|
||||
obj["APUEGT-needle"].hide();
|
||||
}
|
||||
|
||||
if (val.apuMaster or val.apuRpm >= 94.9) {
|
||||
obj["APUGenbox"].show();
|
||||
if (val.apuGenPB) {
|
||||
obj["APUGenOff"].hide();
|
||||
obj["APUGentext"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["APUGenHz"].show();
|
||||
obj["APUGenVolt"].show();
|
||||
obj["APUGenLoad"].show();
|
||||
obj["text3724"].show();
|
||||
obj["text3728"].show();
|
||||
obj["text3732"].show();
|
||||
} else {
|
||||
obj["APUGenOff"].show();
|
||||
obj["APUGentext"].setColor(0.7333,0.3803,0);
|
||||
obj["APUGenHz"].hide();
|
||||
obj["APUGenVolt"].hide();
|
||||
obj["APUGenLoad"].hide();
|
||||
obj["text3724"].hide();
|
||||
obj["text3728"].hide();
|
||||
obj["text3732"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["APUGentext"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["APUGenbox"].hide();
|
||||
obj["APUGenHz"].hide();
|
||||
obj["APUGenVolt"].hide();
|
||||
obj["APUGenLoad"].hide();
|
||||
obj["text3724"].hide();
|
||||
obj["text3728"].hide();
|
||||
obj["text3732"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuFuelPumpsOff","apuFuelPump"], nil, func(val) {
|
||||
if (val.apuFuelPumpsOff and !val.apuFuelPump) {
|
||||
obj["APUfuelLO"].show();
|
||||
} else {
|
||||
obj["APUfuelLO"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuRpm","apuOilLevel","gear0Wow"], nil, func(val) {
|
||||
if (val.apuRpm >= 94.9 and val.gear0Wow and val.apuOilLevel < 3.69) {
|
||||
obj["APU-low-oil"].show();
|
||||
} else {
|
||||
obj["APU-low-oil"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuAdr","apuPsi","apuRpm"], nil, func(val) {
|
||||
if (val.apuAdr and val.apuRpm > 0.001) {
|
||||
obj["APUBleedPSI"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["APUBleedPSI"].setText(sprintf("%s", math.round(val.apuPsi)));
|
||||
} else {
|
||||
obj["APUBleedPSI"].setColor(0.7333,0.3803,0);
|
||||
obj["APUBleedPSI"].setText(sprintf("%s", "XX"));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuLoad", 0.1, func(val) {
|
||||
obj["APUGenLoad"].setText(sprintf("%s", math.round(val)));
|
||||
|
||||
if (val <= 100) {
|
||||
obj["APUGenHz"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenHz"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuHertz", 1, func(val) {
|
||||
if (val == 0) {
|
||||
obj["APUGenHz"].setText(sprintf("XX"));
|
||||
} else {
|
||||
obj["APUGenHz"].setText(sprintf("%s", math.round(val)));
|
||||
}
|
||||
|
||||
if (val >= 390 and val <= 410) {
|
||||
obj["APUGenHz"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenHz"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuVolt", 0.1, func(val) {
|
||||
obj["APUGenVolt"].setText(sprintf("%s", math.round(val)));
|
||||
|
||||
if (val >= 110 and val <= 120) {
|
||||
obj["APUGenVolt"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenVolt"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuGLC", nil, func(val) {
|
||||
if (val) {
|
||||
obj["APUGenOnline"].show();
|
||||
} else {
|
||||
obj["APUGenOnline"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuBleedValvePos","apuBleedValveCmd"], nil, func(val) {
|
||||
if (val.apuBleedValvePos == 1) {
|
||||
obj["APUBleedValve"].setRotation(90 * D2R);
|
||||
obj["APUBleedOnline"].show();
|
||||
} else {
|
||||
obj["APUBleedValve"].setRotation(0);
|
||||
obj["APUBleedOnline"].hide();
|
||||
}
|
||||
|
||||
if (val.apuBleedValveCmd == val.apuBleedValvePos) {
|
||||
obj["APUBleedValveCrossBar"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["APUBleedValveCrossBar"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["APUBleedValve"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUBleedValveCrossBar"].setColor(0.7333,0.3803,0);
|
||||
obj["APUBleedValveCrossBar"].setColorFill(0.7333,0.3803,0);
|
||||
obj["APUBleedValve"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return ["APUN-needle","APUEGT-needle","APUN","APUEGT","APUAvail","APUFlapOpen","APUBleedValve","APUBleedOnline","APUBleedValveCrossBar","APUGenOnline","APUGenOff","APUGentext","APUGenLoad","APUGenbox","APUGenVolt","APUGenHz","APUBleedPSI","APUfuelLO","APU-low-oil","text3724","text3728","text3732"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
apuAdr: "/systems/navigation/adr/operating-1",
|
||||
apuAvailable: "/systems/apu/available",
|
||||
apuBleed: "/controls/pneumatics/switches/apu",
|
||||
apuBleedValveCmd: "/systems/pneumatics/valves/apu-bleed-valve-cmd",
|
||||
apuBleedValvePos: "/systems/pneumatics/valves/apu-bleed-valve",
|
||||
apuEgt: "/systems/apu/egt-degC",
|
||||
apuEgtRot: "/ECAM/Lower/APU-EGT",
|
||||
apuGenPB: "/controls/electrical/switches/apu",
|
||||
apuGLC: "/systems/electrical/relay/apu-glc/contact-pos",
|
||||
apuFireBtn: "/controls/apu/fire-btn",
|
||||
apuFlap: "/controls/apu/inlet-flap/position-norm",
|
||||
apuFuelPump: "/systems/fuel/pumps/apu-operate",
|
||||
apuFuelPumpsOff: "/systems/fuel/pumps/all-eng-pump-off",
|
||||
apuOilLevel: "/systems/apu/oil/level-l",
|
||||
apuMaster: "/controls/apu/master",
|
||||
apuNeedleRot: "/ECAM/Lower/APU-N",
|
||||
apuRpm: "/engines/engine[2]/n1",
|
||||
apuPsi: "/systems/pneumatics/source/apu-psi",
|
||||
apuLoad: "/systems/electrical/extra/apu-load",
|
||||
apuHertz: "/systems/electrical/sources/apu/output-hertz",
|
||||
apuVolt: "/systems/electrical/sources/apu/output-volt",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
73
Models/Instruments/Lower-ECAM/Lower-ECAM-base.nas
Normal file
|
@ -0,0 +1,73 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var du4_lgt = props.globals.getNode("/controls/lighting/DU/du4", 1);
|
||||
var du4_test = props.globals.initNode("/instrumentation/du/du4-test", 0, "BOOL");
|
||||
var du4_test_time = props.globals.initNode("/instrumentation/du/du4-test-time", 0, "DOUBLE");
|
||||
var du4_test_amount = props.globals.initNode("/instrumentation/du/du4-test-amount", 0, "DOUBLE");
|
||||
var du4_offtime = props.globals.initNode("/instrumentation/du/du4-off-time", 0.0, "DOUBLE");
|
||||
|
||||
var canvas_lowerECAM_base =
|
||||
{
|
||||
init: func() {
|
||||
me.canvas = canvas.new({
|
||||
"name": "lowerECAM",
|
||||
"size": [1024, 1024],
|
||||
"view": [1024, 1024],
|
||||
"mipmapping": 1
|
||||
});
|
||||
me.canvas.addPlacement({"node": "lecam.screen"});
|
||||
|
||||
me.font_mapper = func(family, weight) {
|
||||
return "LiberationFonts/LiberationSans-Regular.ttf";
|
||||
};
|
||||
|
||||
me.test = me.canvas.createGroup();
|
||||
|
||||
canvas.parsesvg(me.test, "Aircraft/A320-family/Models/Instruments/Common/res/du-test.svg", {"font-mapper": me.font_mapper} );
|
||||
foreach(var key; me.getKeysTest()) {
|
||||
me[key] = me.test.getElementById(key);
|
||||
};
|
||||
},
|
||||
getKeysTest: func() {
|
||||
return ["Test_white","Test_text"];
|
||||
},
|
||||
powerTransient: func() {
|
||||
if (systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_offtime.getValue() + 3 < pts.Sim.Time.elapsedSec.getValue()) {
|
||||
if (pts.Gear.wow[0].getValue()) {
|
||||
if (!acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
} else if (acconfig.getBoolValue() and !du4_test.getBoolValue()) {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(math.round((rand() * 5 ) + 35, 0.1));
|
||||
du4_test_time.setValue(pts.Sim.Time.elapsedSec.getValue() - 30);
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(1);
|
||||
du4_test_amount.setValue(0);
|
||||
du4_test_time.setValue(-100);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
du4_test.setValue(0);
|
||||
du4_offtime.setValue(pts.Sim.Time.elapsedSec.getValue());
|
||||
}
|
||||
},
|
||||
# Due to weirdness of the parents hash / me reference
|
||||
# you need to access it using me.Test_white rather than
|
||||
# me["Test_white"]
|
||||
updateTest: func(notification) {
|
||||
if (du4_test_time.getValue() + 1 >= notification.elapsedTime) {
|
||||
me.Test_white.show();
|
||||
me.Test_text.hide();
|
||||
} else {
|
||||
me.Test_white.hide();
|
||||
me.Test_text.show();
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
canvas_lowerECAM_base.init();
|
547
Models/Instruments/Lower-ECAM/Lower-ECAM-bleed.nas
Normal file
|
@ -0,0 +1,547 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageBleed =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageBleed,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashList(["BleedCrossbleedCmd","BleedCrossbleed"], nil, func(val) {
|
||||
if (val.BleedCrossbleedCmd != val.BleedCrossbleed) {
|
||||
obj["BLEED-XFEED"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-XFEED-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-XFEED"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-XFEED-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.BleedCrossbleedCmd == val.BleedCrossbleed) {
|
||||
if (val.BleedCrossbleedCmd) {
|
||||
obj["BLEED-XFEED"].setRotation(0);
|
||||
} else {
|
||||
obj["BLEED-XFEED"].setRotation(90 * D2R);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-XFEED"].setRotation(45 * D2R);
|
||||
}
|
||||
|
||||
if (val.BleedCrossbleed == 1) {
|
||||
obj["BLEED-xbleedCenter"].show();
|
||||
obj["BLEED-xbleedRight"].show();
|
||||
} else {
|
||||
obj["BLEED-xbleedCenter"].hide();
|
||||
obj["BLEED-xbleedRight"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedHPValve1","BleedHPValve1Cmd"], nil, func(val) {
|
||||
if (val.BleedHPValve1Cmd == 1) {
|
||||
obj["BLEED-HP-Valve-1"].setRotation(90 * D2R);
|
||||
obj["BLEED-HP-1-connection"].show();
|
||||
} else {
|
||||
obj["BLEED-HP-Valve-1"].setRotation(0);
|
||||
obj["BLEED-HP-1-connection"].hide();
|
||||
}
|
||||
|
||||
if (val.BleedHPValve1Cmd == val.BleedHPValve1) {
|
||||
obj["BLEED-HP-Valve-1"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-HP-Valve-1"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedHPValve2","BleedHPValve2Cmd"], nil, func(val) {
|
||||
if (val.BleedHPValve2Cmd == 1) {
|
||||
obj["BLEED-HP-Valve-2"].setRotation(90 * D2R);
|
||||
obj["BLEED-HP-2-connection"].show();
|
||||
} else {
|
||||
obj["BLEED-HP-Valve-2"].setRotation(0);
|
||||
obj["BLEED-HP-2-connection"].hide();
|
||||
}
|
||||
|
||||
if (val.BleedHPValve2Cmd == val.BleedHPValve2) {
|
||||
obj["BLEED-HP-Valve-2"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-HP-Valve-2"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedPRVValve1Cmd","BleedPRVValve1"], nil, func(val) {
|
||||
if (val.BleedPRVValve1 == 0) {
|
||||
obj["BLEED-ENG-1"].setRotation(0);
|
||||
} else {
|
||||
obj["BLEED-ENG-1"].setRotation(90 * D2R);
|
||||
}
|
||||
|
||||
if (val.BleedPRVValve1Cmd == val.BleedPRVValve1) {
|
||||
obj["BLEED-ENG-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-ENG-1-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-ENG-1"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-ENG-1-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedPRVValve2Cmd","BleedPRVValve2"], nil, func(val) {
|
||||
if (val.BleedPRVValve2 == 0) {
|
||||
obj["BLEED-ENG-2"].setRotation(0);
|
||||
} else {
|
||||
obj["BLEED-ENG-2"].setRotation(90 * D2R);
|
||||
}
|
||||
|
||||
if (val.BleedPRVValve2Cmd == val.BleedPRVValve2) {
|
||||
obj["BLEED-ENG-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-ENG-2-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-ENG-2"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-ENG-2-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gear1Wow", nil, func(val) {
|
||||
if (val) {
|
||||
obj["BLEED-GND"].show();
|
||||
} else {
|
||||
obj["BLEED-GND"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("IceWingSw", nil, func(val) {
|
||||
if (val) {
|
||||
obj["BLEED-Anti-Ice-Left"].show();
|
||||
obj["BLEED-Anti-Ice-Right"].show();
|
||||
} else {
|
||||
obj["BLEED-Anti-Ice-Left"].hide();
|
||||
obj["BLEED-Anti-Ice-Right"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N2_actual_1", nil, func(val) {
|
||||
if (val >= 59) {
|
||||
obj["BLEED-ENG-1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["BLEED-ENG-1-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N2_actual_2", nil, func(val) {
|
||||
if (val >= 59) {
|
||||
obj["BLEED-ENG-2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["BLEED-ENG-2-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedBMC1Working","BleedPreCoolerPSI1"], nil, func(val) {
|
||||
if (val.BleedBMC1Working) {
|
||||
if (val.BleedPreCoolerPSI1 >= 98) {
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setText(sprintf("%s", 98));
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setText(sprintf("%s", math.round(val.BleedPreCoolerPSI1,2)));
|
||||
}
|
||||
if (val.BleedPreCoolerPSI1 < 4 or val.BleedPreCoolerPSI1 > 57) {
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setText(sprintf("%s", "XX"));
|
||||
obj["BLEED-Precooler-1-Inlet-Press"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedBMC2Working","BleedPreCoolerPSI2"], nil, func(val) {
|
||||
if (val.BleedBMC2Working) {
|
||||
if (val.BleedPreCoolerPSI2 >= 98) {
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setText(sprintf("%s", 98));
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setText(sprintf("%s", math.round(val.BleedPreCoolerPSI2,2)));
|
||||
}
|
||||
|
||||
if (val.BleedPreCoolerPSI2 < 4 or val.BleedPreCoolerPSI2 > 57) {
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setText(sprintf("%s", "XX"));
|
||||
obj["BLEED-Precooler-2-Inlet-Press"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedBMC1Working","BleedPreCoolerTemp1","BleedPRVValve1Cmd","BleedPreCoolerOvht1"], nil, func(val) {
|
||||
if (val.BleedBMC1Working) {
|
||||
if (val.BleedPreCoolerTemp1 >= 510) {
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setText(sprintf("%s", 510));
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setText(sprintf("%s", math.round(val.BleedPreCoolerTemp1, 5)));
|
||||
}
|
||||
|
||||
if (val.BleedPRVValve1Cmd and (val.BleedPreCoolerTemp1 < 150 or val.BleedPreCoolerOvht1)) {
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setText(sprintf("%s", "XX"));
|
||||
obj["BLEED-Precooler-1-Outlet-Temp"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedBMC2Working","BleedPreCoolerTemp2","BleedPRVValve2Cmd","BleedPreCoolerOvht2"], nil, func(val) {
|
||||
if (val.BleedBMC2Working) {
|
||||
if (val.BleedPreCoolerTemp2 >= 510) {
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setText(sprintf("%s", 510));
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setText(sprintf("%s", math.round(val.BleedPreCoolerTemp2, 5)));
|
||||
}
|
||||
|
||||
if (val.BleedPRVValve2Cmd and (val.BleedPreCoolerTemp2 < 150 or val.BleedPreCoolerOvht2)) {
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setText(sprintf("%s", "XX"));
|
||||
obj["BLEED-Precooler-2-Outlet-Temp"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack1Bypass", 1, func(val) {
|
||||
obj["BLEED-Pack-1-Bypass-needle"].setRotation((val - 50) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack2Bypass", 1, func(val) {
|
||||
obj["BLEED-Pack-2-Bypass-needle"].setRotation((val - 50) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack1OutTemp", 0.25, func(val) {
|
||||
obj["BLEED-Pack-1-Out-Temp"].setText(sprintf("%s", math.round(val, 5)));
|
||||
if (val > 90) {
|
||||
obj["BLEED-Pack-1-Out-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-1-Out-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack2OutTemp", 0.25, func(val) {
|
||||
obj["BLEED-Pack-2-Out-Temp"].setText(sprintf("%s", math.round(val, 5)));
|
||||
if (val > 90) {
|
||||
obj["BLEED-Pack-2-Out-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-2-Out-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack1OutletTemp", 0.25, func(val) {
|
||||
obj["BLEED-Pack-1-Comp-Out-Temp"].setText(sprintf("%s", math.round(val, 5)));
|
||||
if (val > 230) {
|
||||
obj["BLEED-Pack-1-Comp-Out-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-1-Comp-Out-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack2OutletTemp", 0.25, func(val) {
|
||||
obj["BLEED-Pack-2-Comp-Out-Temp"].setText(sprintf("%s", math.round(val, 5)));
|
||||
if (val > 230) {
|
||||
obj["BLEED-Pack-2-Comp-Out-Temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-2-Comp-Out-Temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack1FlowOutput", 0.5, func(val) {
|
||||
obj["BLEED-Pack-1-Packflow-needle"].setRotation(val * D2R);
|
||||
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("Pack2FlowOutput", 0.5, func(val) {
|
||||
obj["BLEED-Pack-2-Packflow-needle"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["Pack1Switch","flowCtlValve1"], nil, func(val) {
|
||||
if (val.flowCtlValve1 == 0) {
|
||||
obj["BLEED-Pack-1-Packflow-needle"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-1-Flow-Valve"].setRotation(90 * D2R);
|
||||
} else {
|
||||
obj["BLEED-Pack-1-Packflow-needle"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-1-Flow-Valve"].setRotation(0);
|
||||
}
|
||||
|
||||
if (val.flowCtlValve1 == val.Pack1Switch) {
|
||||
obj["BLEED-Pack-1-Flow-Valve"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-1-Flow-Valve-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-Pack-1-Flow-Valve"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-1-Flow-Valve-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["Pack2Switch","flowCtlValve2"], nil, func(val) {
|
||||
if (val.flowCtlValve2 == 0) {
|
||||
obj["BLEED-Pack-2-Packflow-needle"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-2-Flow-Valve"].setRotation(90 * D2R);
|
||||
} else {
|
||||
obj["BLEED-Pack-2-Packflow-needle"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-2-Flow-Valve"].setRotation(0);
|
||||
}
|
||||
|
||||
if (val.flowCtlValve2 == val.Pack2Switch) {
|
||||
obj["BLEED-Pack-2-Flow-Valve"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-2-Flow-Valve-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-Pack-2-Flow-Valve"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-2-Flow-Valve-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["flowCtlValve1","flowCtlValve2","RamAirValve","gear1Wow"], nil, func(val) {
|
||||
if (val.RamAirValve == 0) {
|
||||
obj["BLEED-Ram-Air"].setRotation(90 * D2R);
|
||||
obj["BLEED-Ram-Air"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air-connection"].hide();
|
||||
} elsif (val.RamAirValve) {
|
||||
obj["BLEED-Ram-Air"].setRotation(0);
|
||||
if (val.gear1Wow) {
|
||||
obj["BLEED-Ram-Air"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-connection"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-connection"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Ram-Air"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air-connection"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Ram-Air-connection"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
obj["BLEED-Ram-Air-connection"].show();
|
||||
} else {
|
||||
obj["BLEED-Ram-Air"].setRotation(45 * D2R);
|
||||
obj["BLEED-Ram-Air"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-connection"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-connection"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BLEED-Ram-Air-connection"].show();
|
||||
}
|
||||
|
||||
if (val.flowCtlValve1 == 0 and val.flowCtlValve2 == 0) {
|
||||
if (val.gear1Wow or val.RamAirValve != 1) {
|
||||
obj["BLEED-cond-1"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-cond-2"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-cond-3"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-cond-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-cond-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-cond-3"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["BLEED-cond-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-cond-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-cond-3"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.flowCtlValve1 == 0) {
|
||||
obj["BLEED-Pack-1-connection"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-1-connection"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-1-connection"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-1-connection"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.flowCtlValve2 == 0) {
|
||||
obj["BLEED-Pack-2-connection"].setColor(0.7333,0.3803,0);
|
||||
obj["BLEED-Pack-2-connection"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BLEED-Pack-2-connection"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["BLEED-Pack-2-connection"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["BleedCrossbleed","apuMaster","apuBleedValvePos","ApuBleedNotOn"], nil, func(val) {
|
||||
if (val.apuMaster) {
|
||||
obj["BLEED-APU-LINES"].show();
|
||||
if (val.apuBleedValvePos == 1) {
|
||||
obj["BLEED-APU-CIRCLE"].setRotation(0);
|
||||
obj["BLEED-APU-connectionTop"].show();
|
||||
obj["BLEED-xbleedLeft"].show();
|
||||
} else {
|
||||
obj["BLEED-APU-CIRCLE"].setRotation(90 * D2R);
|
||||
obj["BLEED-APU-connectionTop"].hide();
|
||||
if (val.BleedCrossbleed != 1) {
|
||||
obj["BLEED-xbleedLeft"].hide();
|
||||
} else {
|
||||
obj["BLEED-xbleedLeft"].show();
|
||||
}
|
||||
}
|
||||
if (val.ApuBleedNotOn != 1) {
|
||||
obj["BLEED-APU-CIRCLE"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["BLEED-APU-CIRCLE"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
if (val.BleedCrossbleed != 1) {
|
||||
obj["BLEED-xbleedLeft"].hide();
|
||||
} else {
|
||||
obj["BLEED-xbleedLeft"].show();
|
||||
}
|
||||
obj["BLEED-APU-LINES"].hide();
|
||||
obj["BLEED-APU-connectionTop"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit", "BLEED-XFEED", "BLEED-Ram-Air", "BLEED-Ram-Air-Cross", "BLEED-APU-CIRCLE", "BLEED-HP-Valve-1", "BLEED-XFEED-Cross",
|
||||
"BLEED-APU-LINES","BLEED-ENG-1", "BLEED-HP-Valve-2", "BLEED-ENG-2", "BLEED-Precooler-1-Inlet-Press", "BLEED-Precooler-1-Outlet-Temp",
|
||||
"BLEED-Precooler-2-Inlet-Press", "BLEED-Precooler-2-Outlet-Temp", "BLEED-ENG-1-label", "BLEED-ENG-2-label",
|
||||
"BLEED-GND", "BLEED-Pack-1-Flow-Valve", "BLEED-Pack-2-Flow-Valve", "BLEED-Pack-1-Out-Temp","BLEED-APU-connectionTop",
|
||||
"BLEED-Pack-1-Comp-Out-Temp", "BLEED-Pack-1-Packflow-needle", "BLEED-Pack-1-Bypass-needle", "BLEED-Pack-2-Out-Temp",
|
||||
"BLEED-Pack-2-Bypass-needle", "BLEED-Pack-2-Comp-Out-Temp", "BLEED-Pack-2-Packflow-needle", "BLEED-Anti-Ice-Left",
|
||||
"BLEED-Anti-Ice-Right", "BLEED-HP-2-connection", "BLEED-HP-1-connection", "BLEED-ANTI-ICE-ARROW-LEFT", "BLEED-ANTI-ICE-ARROW-RIGHT",
|
||||
"BLEED-xbleedLeft","BLEED-xbleedCenter","BLEED-xbleedRight","BLEED-cond-1","BLEED-cond-2","BLEED-cond-3","BLEED-Ram-Air-connection","BLEED-ENG-1-Cross","BLEED-ENG-2-Cross",
|
||||
"BLEED-Pack-1-Flow-Valve-Cross","BLEED-Pack-2-Flow-Valve-Cross","BLEED-Pack-1-connection","BLEED-Pack-2-connection"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
ApuBleedNotOn: "/systems/pneumatics/warnings/apu-bleed-not-on",
|
||||
BleedBMC1Working: "/systems/pneumatics/indicating/bmc1-working",
|
||||
BleedBMC2Working: "/systems/pneumatics/indicating/bmc2-working",
|
||||
BleedCrossbleedCmd: "/systems/pneumatics/valves/crossbleed-valve-cmd",
|
||||
BleedCrossbleed: "/systems/pneumatics/valves/crossbleed-valve",
|
||||
BleedHPValve1: "/systems/pneumatics/valves/engine-1-hp-valve",
|
||||
BleedHPValve2: "/systems/pneumatics/valves/engine-2-hp-valve",
|
||||
BleedHPValve1Cmd: "/systems/pneumatics/valves/engine-1-hp-valve-cmd",
|
||||
BleedHPValve2Cmd: "/systems/pneumatics/valves/engine-2-hp-valve-cmd",
|
||||
BleedPRVValve1Cmd: "/controls/pneumatics/switches/bleed-1",
|
||||
BleedPRVValve2Cmd: "/controls/pneumatics/switches/bleed-2",
|
||||
BleedPRVValve1: "/systems/pneumatics/valves/engine-1-prv-valve",
|
||||
BleedPRVValve2: "/systems/pneumatics/valves/engine-2-prv-valve",
|
||||
BleedPreCoolerPSI1: "/systems/pneumatics/psi/engine-1-psi",
|
||||
BleedPreCoolerPSI2: "/systems/pneumatics/psi/engine-2-psi",
|
||||
BleedPreCoolerTemp1: "/systems/pneumatics/precooler/temp-1",
|
||||
BleedPreCoolerTemp2: "/systems/pneumatics/precooler/temp-2",
|
||||
BleedPreCoolerOvht1: "/systems/pneumatics/precooler/ovht-1",
|
||||
BleedPreCoolerOvht2: "/systems/pneumatics/precooler/ovht-2",
|
||||
Pack1Bypass: "/systems/pneumatics/pack-1-bypass",
|
||||
Pack2Bypass: "/systems/pneumatics/pack-2-bypass",
|
||||
Pack1FlowOutput: "/ECAM/Lower/pack-1-flow-output",
|
||||
Pack2FlowOutput: "/ECAM/Lower/pack-2-flow-output",
|
||||
Pack1OutTemp: "/systems/air-conditioning/packs/pack-1-output-temp",
|
||||
Pack2OutTemp: "/systems/air-conditioning/packs/pack-2-output-temp",
|
||||
Pack1OutletTemp: "/systems/air-conditioning/packs/pack-1-outlet-temp",
|
||||
Pack2OutletTemp: "/systems/air-conditioning/packs/pack-2-outlet-temp",
|
||||
Pack1Switch: "/controls/pneumatics/switches/pack-1",
|
||||
Pack2Switch: "/controls/pneumatics/switches/pack-2",
|
||||
RamAirValve: "/systems/air-conditioning/valves/ram-air",
|
||||
IceWingSw: "/controls/ice-protection/wing",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
209
Models/Instruments/Lower-ECAM/Lower-ECAM-cond.nas
Normal file
|
@ -0,0 +1,209 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageCond =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageCond,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["CONDFanFwdFault"].hide();
|
||||
obj["CONDFanAftFault"].hide();
|
||||
|
||||
# aft cargo ventilation disabled
|
||||
obj["CargoCond"].hide();
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("condDuctTempCockpit", 0.5, func(val) {
|
||||
obj["CONDDuctTempCKPT"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condDuctTempAft", 0.5, func(val) {
|
||||
obj["CONDDuctTempAFT"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condDuctTempFwd", 0.5, func(val) {
|
||||
obj["CONDDuctTempFWD"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempCockpit", 0.5, func(val) {
|
||||
obj["CONDTempCKPT"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempAft", 0.5, func(val) {
|
||||
obj["CONDTempAFT"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempFwd", 0.5, func(val) {
|
||||
obj["CONDTempFWD"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTrimCockpit", 0.01, func(val) {
|
||||
obj["CONDTrimValveCKPT"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTrimAft", 0.01, func(val) {
|
||||
obj["CONDTrimValveAFT"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTrimFwd", 0.01, func(val) {
|
||||
obj["CONDTrimValveFWD"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["condHotAirSwitch","condHotAirValve","condHotAirCmd"], nil, func(val) {
|
||||
if (!val.condHotAirSwitch or (val.condHotAirCmd == 1 and val.condHotAirValve == 0)) {
|
||||
obj["CONDHotAirValve"].setRotation(90 * D2R);
|
||||
obj["CONDHotAirValve"].setColor(0.7333,0.3803,0);
|
||||
obj["CONDHotAirValveCross"].setColorFill(0.7333,0.3803,0);
|
||||
} elsif (val.condHotAirCmd == 0 and val.condHotAirValve == 0) {
|
||||
obj["CONDHotAirValve"].setRotation(90 * D2R);
|
||||
obj["CONDHotAirValve"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["CONDHotAirValveCross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} elsif (val.condHotAirCmd == 0 and val.condHotAirValve != 0) {
|
||||
obj["CONDHotAirValve"].setRotation(0);
|
||||
obj["CONDHotAirValve"].setColor(0.7333,0.3803,0);
|
||||
obj["CONDHotAirValveCross"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["CONDHotAirValve"].setRotation(0);
|
||||
obj["CONDHotAirValve"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["CONDHotAirValveCross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["CargoCond","CONDHotAirValve","CONDFanFwdFault","CONDFanAftFault","CONDTrimValveCKPT","CONDTrimValveAFT","CONDTrimValveFWD","CONDDuctTempCKPT",
|
||||
"CONDDuctTempAFT","CONDDuctTempFWD","CONDTempCKPT","CONDTempAFT","CONDTempFWD","CONDHotAirValveCross"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
condDuctTempCockpit: "/systems/air-conditioning/temperatures/cockpit-duct",
|
||||
condDuctTempAft: "/systems/air-conditioning/temperatures/cabin-aft-duct",
|
||||
condDuctTempFwd: "/systems/air-conditioning/temperatures/cabin-fwd-duct",
|
||||
condTempCockpit: "/systems/air-conditioning/temperatures/cockpit-temp",
|
||||
condTempAft: "/systems/air-conditioning/temperatures/cabin-aft-temp",
|
||||
condTempFwd: "/systems/air-conditioning/temperatures/cabin-fwd-temp",
|
||||
condTrimCockpit: "/ECAM/Lower/trim-cockpit-output",
|
||||
condTrimAft: "/ECAM/Lower/trim-aft-output",
|
||||
condTrimFwd: "/ECAM/Lower/trim-fwd-output",
|
||||
condHotAirCmd: "/systems/air-conditioning/valves/hot-air-cmd",
|
||||
condHotAirSwitch: "/controls/pneumatics/switches/hot-air",
|
||||
condHotAirValve: "/systems/air-conditioning/valves/hot-air"
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
257
Models/Instruments/Lower-ECAM/Lower-ECAM-cruise.nas
Normal file
|
@ -0,0 +1,257 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageCruise =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageCruise,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("engOil1", 0.005, func(val) {
|
||||
if (obj.units) {
|
||||
obj["Oil1"].setText(sprintf("%2.1f",(0.1 * math.round(val * QT2LTR * 10,5))));
|
||||
} else {
|
||||
obj["Oil1"].setText(sprintf("%2.1f",(0.1 * math.round(val * 10,5))));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engOil2", 0.005, func(val) {
|
||||
if (obj.units) {
|
||||
obj["Oil2"].setText(sprintf("%2.1f",(0.1 * math.round(val * QT2LTR * 10,5))));
|
||||
} else {
|
||||
obj["Oil2"].setText(sprintf("%2.1f",(0.1 * math.round(val * 10,5))));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
if (val) {
|
||||
obj["Fused-weight-unit"].setText("KG");
|
||||
obj["OilUnit"].setText("LTR");
|
||||
# immediately update parameters
|
||||
obj["Oil1"].setText(sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[0].getValue() * QT2LTR * 10,5))));
|
||||
obj["Oil2"].setText(sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[1].getValue() * QT2LTR * 10,5))));
|
||||
obj["FUsed1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue() * LBS2KGS, 10)));
|
||||
obj["FUsed2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue() * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["Fused-weight-unit"].setText("LBS");
|
||||
obj["OilUnit"].setText("QT");
|
||||
obj["Oil1"].setText(sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[0].getValue() * 10,5))));
|
||||
obj["Oil2"].setText(sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[1].getValue() * 10,5))));
|
||||
obj["FUsed1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue(), 10)));
|
||||
obj["FUsed2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue(), 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed1", 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUsed1"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUsed1"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed2", 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUsed2"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUsed2"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["engFuelUsed1","engFuelUsed2"], 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUsed"].setText(sprintf("%s", math.round((val.engFuelUsed1 + val.engFuelUsed2) * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUsed"].setText(sprintf("%s", math.round((val.engFuelUsed1 + val.engFuelUsed2), 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressDelta", 0.05, func(val) {
|
||||
if (val > 31.9) {
|
||||
obj["deltaPSI"].setText(sprintf("%2.1f", 31.9));
|
||||
} else if (val < -9.9) {
|
||||
obj["deltaPSI"].setText(sprintf("%2.1f", -9.9));
|
||||
} else {
|
||||
obj["deltaPSI"].setText(sprintf("%2.1f", val));
|
||||
}
|
||||
|
||||
if (val < -0.4 or val > 8.5) {
|
||||
obj["deltaPSI"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["deltaPSI"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressVS", 25, func(val) {
|
||||
if (val > 9950) {
|
||||
obj["CABVS"].setText(sprintf("%4.0f", 9950));
|
||||
} else if (val < -9950) {
|
||||
obj["CABVS"].setText(sprintf("%4.0f", -9950));
|
||||
} else {
|
||||
obj["CABVS"].setText(sprintf("%-4.0f", math.round(val,50)));
|
||||
}
|
||||
|
||||
if (val >= 25) {
|
||||
obj["VS-Arrow-UP"].show();
|
||||
obj["VS-Arrow-DN"].hide();
|
||||
} elsif (val <= -25) {
|
||||
obj["VS-Arrow-UP"].hide();
|
||||
obj["VS-Arrow-DN"].show();
|
||||
} else {
|
||||
obj["VS-Arrow-UP"].hide();
|
||||
obj["VS-Arrow-DN"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressAlt", 25, func(val) {
|
||||
if (val > 32750) {
|
||||
obj["CABALT"].setText(sprintf("%5.0f", 32750));
|
||||
} else if (val < -9950) {
|
||||
obj["CABALT"].setText(sprintf("%5.0f", -9950));
|
||||
} else {
|
||||
obj["CABALT"].setText(sprintf("%5.0f", math.round(val,50)));
|
||||
}
|
||||
|
||||
if (val > 9550) {
|
||||
obj["CABALT"].setColor(1,0,0);
|
||||
} else {
|
||||
obj["CABALT"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempCockpit", 0.5, func(val) {
|
||||
obj["CKPT-TEMP"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempAft", 0.5, func(val) {
|
||||
obj["AFT-TEMP"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("condTempFwd", 0.5, func(val) {
|
||||
obj["FWD-TEMP"].setText(sprintf("%2.0f",val));
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["Oil1","Oil2","OilUnit","FUsed1","FUsed2","FUsed","VIB1N1","VIB1N2","VIB2N1","VIB2N2","deltaPSI","LDGELEV-AUTO","LDGELEV","CABVS","CABALT","VS-Arrow-UP","VS-Arrow-DN","CKPT-TEMP","FWD-TEMP","AFT-TEMP","Fused-weight-unit"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
319
Models/Instruments/Lower-ECAM/Lower-ECAM-door.nas
Normal file
|
@ -0,0 +1,319 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageDoor =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageDoor,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["Cabin2LeftSlide"].hide();
|
||||
obj["Cabin2RightSlide"].hide();
|
||||
obj["Cabin3LeftSlide"].hide();
|
||||
obj["Cabin3RightSlide"].hide();
|
||||
|
||||
obj["DOOROXY-REGUL-LO-PR"].hide();
|
||||
obj["AvionicsLine1"].hide();
|
||||
obj["AvionicsLine2"].hide();
|
||||
obj["AvionicsLbl1"].hide();
|
||||
obj["AvionicsLbl2"].hide();
|
||||
obj["ExitLLine"].hide();
|
||||
obj["ExitLLbl"].hide();
|
||||
obj["ExitRLine"].hide();
|
||||
obj["ExitRLbl"].hide();
|
||||
obj["Cabin2Left"].hide();
|
||||
obj["Cabin2LeftLine"].hide();
|
||||
obj["Cabin2LeftLbl"].hide();
|
||||
obj["Cabin2Right"].hide();
|
||||
obj["Cabin2RightLine"].hide();
|
||||
obj["Cabin2RightLbl"].hide();
|
||||
obj["Cabin3Left"].hide();
|
||||
obj["Cabin3LeftLine"].hide();
|
||||
obj["Cabin3LeftLbl"].hide();
|
||||
obj["Cabin3Right"].hide();
|
||||
obj["Cabin3RightLine"].hide();
|
||||
obj["Cabin3RightLbl"].hide();
|
||||
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("doorL1", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cabin1Left"].show();
|
||||
obj["Cabin1Left"].setColor(0.7333,0.3803,0);
|
||||
obj["Cabin1Left"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cabin1LeftLbl"].show();
|
||||
obj["Cabin1LeftLine"].show();
|
||||
obj["Cabin1LeftSlide"].hide();
|
||||
} else {
|
||||
obj["Cabin1Left"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cabin1Left"].setColorFill(0,0,0);
|
||||
obj["Cabin1LeftLbl"].hide();
|
||||
obj["Cabin1LeftLine"].hide();
|
||||
obj["Cabin1LeftSlide"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("doorL4", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cabin4Left"].show();
|
||||
obj["Cabin4Left"].setColor(0.7333,0.3803,0);
|
||||
obj["Cabin4Left"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cabin4LeftLbl"].show();
|
||||
obj["Cabin4LeftLine"].show();
|
||||
obj["Cabin4LeftSlide"].hide();
|
||||
} else {
|
||||
obj["Cabin4Left"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cabin4Left"].setColorFill(0,0,0);
|
||||
obj["Cabin4LeftLbl"].hide();
|
||||
obj["Cabin4LeftLine"].hide();
|
||||
obj["Cabin4LeftSlide"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("doorR1", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cabin1Right"].show();
|
||||
obj["Cabin1Right"].setColor(0.7333,0.3803,0);
|
||||
obj["Cabin1Right"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cabin1RightLbl"].show();
|
||||
obj["Cabin1RightLine"].show();
|
||||
obj["Cabin1RightSlide"].hide();
|
||||
} else {
|
||||
obj["Cabin1Right"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cabin1Right"].setColorFill(0,0,0);
|
||||
obj["Cabin1RightLbl"].hide();
|
||||
obj["Cabin1RightLine"].hide();
|
||||
obj["Cabin1RightSlide"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("doorR4", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cabin4Right"].show();
|
||||
obj["Cabin4Right"].setColor(0.7333,0.3803,0);
|
||||
obj["Cabin4Right"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cabin4RightLbl"].show();
|
||||
obj["Cabin4RightLine"].show();
|
||||
obj["Cabin4RightSlide"].hide();
|
||||
} else {
|
||||
obj["Cabin4Right"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cabin4Right"].setColorFill(0,0,0);
|
||||
obj["Cabin4RightLbl"].hide();
|
||||
obj["Cabin4RightLine"].hide();
|
||||
obj["Cabin4RightSlide"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("cargoAft", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cargo2Door"].setColor(0.7333,0.3803,0);
|
||||
obj["Cargo2Door"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cargo2Lbl"].show();
|
||||
obj["Cargo2Line"].show();
|
||||
} else {
|
||||
obj["Cargo2Door"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cargo2Door"].setColorFill(0,0,0);
|
||||
obj["Cargo2Lbl"].hide();
|
||||
obj["Cargo2Line"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("cargoBulk", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Bulk"].setColor(0.7333,0.3803,0);
|
||||
obj["Bulk"].setColorFill(0.7333,0.3803,0);
|
||||
obj["BulkLbl"].show();
|
||||
obj["BulkLine"].show();
|
||||
} else {
|
||||
obj["Bulk"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Bulk"].setColorFill(0,0,0);
|
||||
obj["BulkLbl"].hide();
|
||||
obj["BulkLine"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("cargoFwd", nil, func(val) {
|
||||
if (val > 0) {
|
||||
obj["Cargo1Door"].setColor(0.7333,0.3803,0);
|
||||
obj["Cargo1Door"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Cargo1Lbl"].show();
|
||||
obj["Cargo1Line"].show();
|
||||
} else {
|
||||
obj["Cargo1Door"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Cargo1Door"].setColorFill(0,0,0);
|
||||
obj["Cargo1Lbl"].hide();
|
||||
obj["Cargo1Line"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("oxyPB", nil, func(val) {
|
||||
if (val) {
|
||||
obj["DOOROXY-OxyIndicator"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["DOOROXY-PR"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["DOOROXY-PR"].setText("1300");
|
||||
} else {
|
||||
obj["DOOROXY-OxyIndicator"].setColor(0.7333,0.3803,0);
|
||||
obj["DOOROXY-PR"].setColor(0.7333,0.3803,0);
|
||||
obj["DOOROXY-PR"].setText("0");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressVS", nil, func(val) {
|
||||
if (val > 9950) {
|
||||
obj["DOOR-VS"].setText(sprintf("%+4.0f", 9950));
|
||||
} else if (val < -9950) {
|
||||
obj["DOOR-VS"].setText(sprintf("%+4.0f", -9950));
|
||||
} else {
|
||||
obj["DOOR-VS"].setText(sprintf("%+4.0f", math.round(val,50)));
|
||||
}
|
||||
|
||||
if (abs(val) > 2000) {
|
||||
obj["DOOR-VS"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["DOOR-VS"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("FWCPhase", nil, func(val) {
|
||||
if (val >= 5 and val <= 7) {
|
||||
obj["DOOR-VS-Container"].show();
|
||||
} else {
|
||||
obj["DOOR-VS-Container"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["Bulk","BulkLine","BulkLbl","Exit1L","Exit1R","Cabin1Left","Cabin1LeftLbl","Cabin1LeftLine","Cabin1LeftSlide","Cabin1Right","Cabin1RightLbl","Cabin1RightLine","Cabin1RightSlide","Cabin2Left","Cabin2LeftLbl",
|
||||
"Cabin2LeftLine","Cabin2LeftSlide","Cabin2Right","Cabin2RightLbl","Cabin2RightLine","Cabin2RightSlide","Cabin3Left","Cabin3LeftLbl","Cabin3LeftLine","Cabin3LeftSlide","Cabin3Right","Cabin3RightLbl","Cabin3RightLine","Cabin3RightSlide","AvionicsLine1",
|
||||
"AvionicsLbl1","AvionicsLine2","AvionicsLbl2","Cargo1Line","Cargo1Lbl","Cargo1Door","Cargo2Line","Cargo2Lbl","Cargo2Door","ExitLSlide","ExitLLine","ExitLLbl","ExitRSlide","ExitRLine","ExitRLbl","Cabin4Left","Cabin4LeftLbl","Cabin4LeftLine",
|
||||
"Cabin4LeftSlide","Cabin4Right","Cabin4RightLbl","Cabin4RightLine","Cabin4RightSlide","DOOROXY-REGUL-LO-PR","DOOROXY-PR","DOOROXY-OxyIndicator","DOOR-VS","DOOR-VS-Container"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
doorL1: "/sim/model/door-positions/doorl1/position-norm",
|
||||
doorL4: "/sim/model/door-positions/doorl4/position-norm",
|
||||
doorR1: "/sim/model/door-positions/doorr1/position-norm",
|
||||
doorR4: "/sim/model/door-positions/doorr4/position-norm",
|
||||
cargoAft: "/sim/model/door-positions/cargoaft/position-norm",
|
||||
cargoBulk: "/sim/model/door-positions/cargobulk/position-norm",
|
||||
cargoFwd: "/sim/model/door-positions/cargofwd/position-norm",
|
||||
oxyPB: "/controls/oxygen/crewOxyPB",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
827
Models/Instruments/Lower-ECAM/Lower-ECAM-elec.nas
Normal file
|
@ -0,0 +1,827 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageElec =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageElec,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["IDG1-LOPR"].hide();
|
||||
obj["IDG2-LOPR"].hide();
|
||||
obj["Shed-label"].hide();
|
||||
obj["IDG2-RISE-label"].hide();
|
||||
obj["IDG2-RISE-Value"].hide();
|
||||
obj["IDG1-RISE-label"].hide();
|
||||
obj["IDG1-RISE-Value"].hide();
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("apuLoad", 0.1, func(val) {
|
||||
obj["APUGenLoad"].setText(sprintf("%s", math.round(val)));
|
||||
|
||||
if (val < 110) {
|
||||
obj["APUGenHz"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenHz"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuHertz", 0.5, func(val) {
|
||||
if (val == 0) {
|
||||
obj["APUGenHz"].setText(sprintf("XX"));
|
||||
} else {
|
||||
obj["APUGenHz"].setText(sprintf("%s", math.round(val)));
|
||||
}
|
||||
|
||||
if (val >= 390 and val <= 410) {
|
||||
obj["APUGenHz"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenHz"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("apuVolt", 0.1, func(val) {
|
||||
obj["APUGenVolt"].setText(sprintf("%s", math.round(val)));
|
||||
|
||||
if (val >= 110 and val <= 120) {
|
||||
obj["APUGenVolt"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["APUGenVolt"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuMaster","apuVolt","apuLoad","apuHertz","apuGLC"], nil, func(val) {
|
||||
if (val.apuMaster == 0) {
|
||||
obj["APUGentext"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
if (val.apuGLC == 0) {
|
||||
obj["APUGentext"].setColor(0.7333,0.3803,0);
|
||||
} else if (val.apuVolt > 120 or val.apuVolt < 110 or val.apuHertz > 410 or val.apuHertz < 390 or val.apuLoad >= 100) {
|
||||
obj["APUGentext"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["APUGentext"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["apuMaster","apuGenPB"], nil, func(val) {
|
||||
if (val.apuMaster == 0) {
|
||||
obj["APU-content"].hide();
|
||||
obj["APUGEN-off"].hide();
|
||||
obj["APU-border"].hide();
|
||||
} else {
|
||||
obj["APU-border"].show();
|
||||
if (val.apuGenPB == 0) {
|
||||
obj["APU-content"].hide();
|
||||
obj["APUGEN-off"].show();
|
||||
} else {
|
||||
obj["APU-content"].show();
|
||||
obj["APUGEN-off"].hide();
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecIDG1Disc", nil, func(val) {
|
||||
if (!val) {
|
||||
obj["IDG1-DISC"].show();
|
||||
obj["ELEC-IDG-1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["IDG1-DISC"].hide();
|
||||
obj["ELEC-IDG-1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecIDG2Disc", nil, func(val) {
|
||||
if (!val) {
|
||||
obj["IDG2-DISC"].show();
|
||||
obj["ELEC-IDG-2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["IDG2-DISC"].hide();
|
||||
obj["ELEC-IDG-2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engine1Running", nil, func(val) {
|
||||
if (val == 0) {
|
||||
obj["ELEC-IDG-1-num-label"].setColor(0.7333,0.3803,0);
|
||||
obj["GEN1-num-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ELEC-IDG-1-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["GEN1-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engine2Running", nil, func(val) {
|
||||
if (val == 0) {
|
||||
obj["ELEC-IDG-2-num-label"].setColor(0.7333,0.3803,0);
|
||||
obj["GEN2-num-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ELEC-IDG-2-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["GEN2-num-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("dc1", 0.5, func(val) {
|
||||
if (val > 25) {
|
||||
obj["ELEC-DC1-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-DC1-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("dc2", 0.5, func(val) {
|
||||
if (val > 25) {
|
||||
obj["ELEC-DC2-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-DC2-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("dcEss", 0.5, func(val) {
|
||||
if (val > 25) {
|
||||
obj["ELEC-DCESS-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-DCESS-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecAC1", 0.5, func(val) {
|
||||
if (val >= 110) {
|
||||
obj["ELEC-AC1-label"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["AC1-in"].show();
|
||||
obj["ELEC-Line-AC1-TR1"].show();
|
||||
} else {
|
||||
obj["ELEC-AC1-label"].setColor(0.7333,0.3803,0);
|
||||
obj["AC1-in"].hide();
|
||||
obj["ELEC-Line-AC1-TR1"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecAC2", 0.5, func(val) {
|
||||
if (val >= 110) {
|
||||
obj["ELEC-AC2-label"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["AC2-in"].show();
|
||||
obj["ELEC-Line-AC2-TR2"].show();
|
||||
} else {
|
||||
obj["ELEC-AC2-label"].setColor(0.7333,0.3803,0);
|
||||
obj["AC2-in"].hide();
|
||||
obj["ELEC-Line-AC2-TR2"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecACEss", 0.5, func(val) {
|
||||
if (val >= 110) {
|
||||
obj["ELEC-ACESS-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-ACESS-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecACEssShed", 0.5, func(val) {
|
||||
if (val >= 110) {
|
||||
obj["ACESS-SHED"].hide();
|
||||
} else {
|
||||
obj["ACESS-SHED"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("ElecGalleyShed", nil, func(val) {
|
||||
if (val) {
|
||||
obj["GalleyShed"].show();
|
||||
} else {
|
||||
obj["GalleyShed"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecBat1Switch","elecBat2Switch","dcBat"], nil, func(val) {
|
||||
if (val.elecBat1Switch or val.elecBat2Switch) {
|
||||
obj["ELEC-DCBAT-label"].setText("DC BAT");
|
||||
if (val.dcBat > 25) {
|
||||
obj["ELEC-DCBAT-label"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-DCBAT-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
obj["ELEC-DCBAT-label"].setText("XX"); # BCL not powered hence no voltage info supplied from BCL
|
||||
obj["ELEC-DCBAT-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecBat1Switch","elecBat1Volt","elecBat1Amp","elecBat1Direction","elecBat1Fault"], nil, func(val) {
|
||||
if (val.elecBat1Switch == 0) {
|
||||
obj["BAT1-OFF"].show();
|
||||
obj["BAT1-content"].hide();
|
||||
obj["BAT1-discharge"].hide();
|
||||
obj["BAT1-charge"].hide();
|
||||
} else {
|
||||
obj["BAT1-OFF"].hide();
|
||||
obj["BAT1-content"].show();
|
||||
obj["Bat1Ampere"].setText(sprintf("%2.0f", val.elecBat1Amp));
|
||||
|
||||
obj["Bat1Volt"].setText(sprintf("%2.0f", val.elecBat1Volt));
|
||||
|
||||
if (val.elecBat1Volt >= 24.95 and val.elecBat1Volt <= 31.05) {
|
||||
obj["Bat1Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Bat1Volt"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (val.elecBat1Amp > 5 and val.elecBat1Direction == 1) {
|
||||
obj["Bat1Ampere"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Bat1Ampere"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecBat1Direction == 0) {
|
||||
obj["BAT1-discharge"].hide();
|
||||
obj["BAT1-charge"].hide();
|
||||
} else {
|
||||
if (val.elecBat1Direction == -1) {
|
||||
obj["BAT1-charge"].show();
|
||||
obj["BAT1-discharge"].hide();
|
||||
} else {
|
||||
obj["BAT1-discharge"].show();
|
||||
obj["BAT1-charge"].hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (val.elecBat1Fault or val.elecBat1Volt < 25 or val.elecBat1Volt > 31 or val.elecBat1Amp > 5) {
|
||||
obj["BAT1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BAT1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecBat2Switch","elecBat2Volt","elecBat2Amp","elecBat2Direction","elecBat2Fault"], nil, func(val) {
|
||||
if (val.elecBat2Switch == 0) {
|
||||
obj["BAT2-OFF"].show();
|
||||
obj["BAT2-content"].hide();
|
||||
obj["BAT2-discharge"].hide();
|
||||
obj["BAT2-charge"].hide();
|
||||
} else {
|
||||
obj["BAT2-OFF"].hide();
|
||||
obj["BAT2-content"].show();
|
||||
obj["Bat2Ampere"].setText(sprintf("%2.0f", val.elecBat2Amp));
|
||||
|
||||
obj["Bat2Volt"].setText(sprintf("%2.0f", val.elecBat2Volt));
|
||||
|
||||
if (val.elecBat2Volt >= 24.95 and val.elecBat2Volt <= 31.05) {
|
||||
obj["Bat2Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Bat2Volt"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (val.elecBat2Amp > 5 and val.elecBat2Direction == 1) {
|
||||
obj["Bat2Ampere"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Bat2Ampere"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecBat2Direction == 0) {
|
||||
obj["BAT2-discharge"].hide();
|
||||
obj["BAT2-charge"].hide();
|
||||
} else {
|
||||
if (val.elecBat2Direction == -1) {
|
||||
obj["BAT2-charge"].show();
|
||||
obj["BAT2-discharge"].hide();
|
||||
} else {
|
||||
obj["BAT2-discharge"].show();
|
||||
obj["BAT2-charge"].hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (val.elecBat2Fault or val.elecBat2Volt < 25 or val.elecBat2Volt > 31 or val.elecBat2Amp > 5) {
|
||||
obj["BAT2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["BAT2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecTR1Amp","elecTR1Volt"], nil, func(val) {
|
||||
obj["TR1Volt"].setText(sprintf("%s", math.round(val.elecTR1Volt)));
|
||||
obj["TR1Ampere"].setText(sprintf("%s", math.round(val.elecTR1Amp)));
|
||||
|
||||
if (val.elecTR1Volt < 25 or val.elecTR1Volt > 31 or val.elecTR1Amp < 5) {
|
||||
obj["TR1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecTR1Volt < 25 or val.elecTR1Volt > 31) {
|
||||
obj["TR1Volt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR1Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecTR1Amp < 5) {
|
||||
obj["TR1Ampere"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR1Ampere"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecTR2Amp","elecTR2Volt"], nil, func(val) {
|
||||
obj["TR2Volt"].setText(sprintf("%s", math.round(val.elecTR2Volt)));
|
||||
obj["TR2Ampere"].setText(sprintf("%s", math.round(val.elecTR2Amp)));
|
||||
|
||||
if (val.elecTR2Volt < 25 or val.elecTR2Volt > 31 or val.elecTR2Amp < 5) {
|
||||
obj["TR2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecTR2Volt < 25 or val.elecTR2Volt > 31) {
|
||||
obj["TR2Volt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR2Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecTR2Amp < 5) {
|
||||
obj["TR2Ampere"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["TR2Ampere"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecExtHertz","elecExtVolt","elecGroundCart"], nil, func(val) {
|
||||
if (val.elecGroundCart == 0) {
|
||||
obj["EXTPWR-group"].hide();
|
||||
} else {
|
||||
obj["EXTPWR-group"].show();
|
||||
obj["ExtVolt"].setText(sprintf("%s", math.round(val.elecExtVolt)));
|
||||
obj["ExtHz"].setText(sprintf("%s", math.round(val.elecExtHertz)));
|
||||
|
||||
if (val.elecExtHertz > 410 or val.elecExtHertz < 390 or val.elecExtVolt > 120 or val.elecExtVolt < 110) {
|
||||
obj["EXTPWR-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["EXTPWR-label"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecExtHertz > 410 or val.elecExtHertz < 390) {
|
||||
obj["ExtHz"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ExtHz"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecExtVolt > 120 or val.elecExtVolt < 110) {
|
||||
obj["ExtVolt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ExtVolt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecDCTie1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-Line-DC1-DCESS_DCBAT"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-DC1-DCESS_DCBAT"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecDCTie2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-Line-DC2-DCESS_DCBAT"].show();
|
||||
obj["ELEC-Line-DC2-DCBAT"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-DC2-DCESS_DCBAT"].hide();
|
||||
obj["ELEC-Line-DC2-DCBAT"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecDcEssFeedBat","elecDCTie1"], nil, func(val) {
|
||||
if (val.elecDcEssFeedBat or val.elecDCTie1) {
|
||||
obj["ELEC-Line-DC1-DCBAT"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-DC1-DCBAT"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecDcEssFeedBat", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-Line-DC1-DCESS"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-DC1-DCESS"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecTrEssContact", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-Line-ESSTR-DCESS"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-ESSTR-DCESS"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elecAcEssEmerGenFeed", nil, func(val) {
|
||||
if (val) {
|
||||
obj["EMERGEN-out"].show();
|
||||
obj["ELEC-Line-Emergen-ESSTR"].show();
|
||||
} else {
|
||||
obj["EMERGEN-out"].hide();
|
||||
obj["ELEC-Line-Emergen-ESSTR"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecTREssAmp","elecTREssVolt","elecTrEssContact"], nil, func(val) {
|
||||
if (val.elecTrEssContact) {
|
||||
obj["ESSTR-group"].show();
|
||||
obj["ESSTR-Volt"].setText(sprintf("%s", math.round(val.elecTREssVolt)));
|
||||
obj["ESSTR-Ampere"].setText(sprintf("%s", math.round(val.elecTREssAmp)));
|
||||
|
||||
if (val.elecTREssVolt < 25 or val.elecTREssVolt > 31 or val.elecTREssAmp < 5) {
|
||||
obj["ESSTR"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ESSTR"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecTREssVolt < 25 or val.elecTREssVolt > 31) {
|
||||
obj["ESSTR-Volt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ESSTR-Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecTREssAmp < 5) {
|
||||
obj["ESSTR-Ampere"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ESSTR-Ampere"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["ESSTR-group"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecEmerGenHertz","elecEmerGenVolts","elecEmerGenVoltsRelay"], nil, func(val) {
|
||||
if (val.elecEmerGenVolts == 0) {
|
||||
obj["EMERGEN-group"].hide();
|
||||
obj["ELEC-Line-Emergen-ESSTR"].hide();
|
||||
obj["ELEC-Line-Emergen-ESSTR-off"].show();
|
||||
obj["EMERGEN-Label-off"].show();
|
||||
} else {
|
||||
obj["EMERGEN-group"].show();
|
||||
obj["ELEC-Line-Emergen-ESSTR"].show();
|
||||
obj["ELEC-Line-Emergen-ESSTR-off"].hide();
|
||||
obj["EMERGEN-Label-off"].hide();
|
||||
|
||||
obj["EmergenVolt"].setText(sprintf("%s", math.round(val.elecEmerGenVoltsRelay)));
|
||||
obj["EmergenHz"].setText(sprintf("%s", math.round(val.elecEmerGenHertz)));
|
||||
|
||||
if (val.elecEmerGenVoltsRelay > 120 or val.elecEmerGenVoltsRelay < 110 or val.elecEmerGenHertz > 410 or val.elecEmerGenHertz < 390) {
|
||||
obj["Emergen-Label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Emergen-Label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecEmerGenVoltsRelay > 120 or val.elecEmerGenVoltsRelay < 110) {
|
||||
obj["EmergenVolt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["EmergenVolt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecEmerGenHertz > 410 or val.elecEmerGenHertz < 390) {
|
||||
obj["EmergenHz"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["EmergenHz"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecGen1Switch","elecGen1Hertz","elecGen1Volt","engine1Running","elecGen1Relay"], nil, func(val) {
|
||||
if (val.elecGen1Switch == 0) {
|
||||
obj["GEN1-content"].hide();
|
||||
obj["GEN1-off"].show();
|
||||
if (val.elecGen1Relay) {
|
||||
obj["GEN1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["GEN1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
} else {
|
||||
obj["GEN1-content"].show();
|
||||
obj["GEN1-off"].hide();
|
||||
obj["Gen1Volt"].setText(sprintf("%s", math.round(val.elecGen1Volt)));
|
||||
|
||||
if (val.elecGen1Hertz == 0) {
|
||||
obj["Gen1Hz"].setText(sprintf("XX"));
|
||||
} else {
|
||||
obj["Gen1Hz"].setText(sprintf("%s", math.round(val.elecGen1Hertz)));
|
||||
}
|
||||
|
||||
if (val.elecGen1Volt > 120 or val.elecGen1Volt < 110 or val.elecGen1Hertz > 410 or val.elecGen1Hertz < 390) {
|
||||
obj["GEN1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["GEN1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecGen1Volt > 120 or val.elecGen1Volt < 110) {
|
||||
obj["Gen1Volt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Gen1Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecGen1Hertz > 410 or val.elecGen1Hertz < 390) {
|
||||
obj["Gen1Hz"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Gen1Hz"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecGen2Switch","elecGen2Hertz","elecGen2Volt","engine1Running","elecGen2Relay"], nil, func(val) {
|
||||
if (val.elecGen2Switch == 0) {
|
||||
obj["GEN2-content"].hide();
|
||||
obj["GEN2-off"].show();
|
||||
if (val.elecGen2Relay) {
|
||||
obj["GEN2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["GEN2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
} else {
|
||||
obj["GEN2-content"].show();
|
||||
obj["GEN2-off"].hide();
|
||||
obj["Gen2Volt"].setText(sprintf("%s", math.round(val.elecGen2Volt)));
|
||||
|
||||
if (val.elecGen2Hertz == 0) {
|
||||
obj["Gen2Hz"].setText(sprintf("XX"));
|
||||
} else {
|
||||
obj["Gen2Hz"].setText(sprintf("%s", math.round(val.elecGen2Hertz)));
|
||||
}
|
||||
|
||||
if (val.elecGen2Volt > 120 or val.elecGen2Volt < 110 or val.elecGen2Hertz > 410 or val.elecGen2Hertz < 390) {
|
||||
obj["GEN2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["GEN2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
|
||||
if (val.elecGen2Volt > 120 or val.elecGen2Volt < 110) {
|
||||
obj["Gen2Volt"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Gen2Volt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if (val.elecGen2Hertz > 410 or val.elecGen2Hertz < 390) {
|
||||
obj["Gen2Hz"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["Gen2Hz"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecTR1Contact","elecAC1"], nil, func(val) {
|
||||
if (val.elecTR1Contact) {
|
||||
if (val.elecAC1 < 110) {
|
||||
obj["ELEC-Line-AC1-TR1"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ELEC-Line-AC1-TR1"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
obj["ELEC-Line-TR1-DC1"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-TR1-DC1"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecTR2Contact","elecAC2"], nil, func(val) {
|
||||
if (val.elecTR2Contact) {
|
||||
if (val.elecAC2 < 110) {
|
||||
obj["ELEC-Line-AC2-TR2"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ELEC-Line-AC2-TR2"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
obj["ELEC-Line-TR2-DC2"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-TR2-DC2"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecAcEssFeed1","elecAcEssFeed2","elecAC1","elecAC2"], nil, func(val) {
|
||||
if (val.elecAcEssFeed1) {
|
||||
if (val.elecAC1 >= 110) {
|
||||
obj["ELEC-Line-AC1-ACESS"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-AC1-ACESS"].hide();
|
||||
}
|
||||
obj["ELEC-Line-AC2-ACESS"].hide();
|
||||
} elsif (val.elecAcEssFeed2) {
|
||||
obj["ELEC-Line-AC1-ACESS"].hide();
|
||||
if (val.elecAC2 >= 110) {
|
||||
obj["ELEC-Line-AC2-ACESS"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-AC2-ACESS"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["ELEC-Line-AC1-ACESS"].hide();
|
||||
obj["ELEC-Line-AC2-ACESS"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecGen1Volt","elecGen1GLC"], nil, func(val) {
|
||||
if (val.elecGen1Volt >= 110 and val.elecGen1GLC) {
|
||||
obj["ELEC-Line-GEN1-AC1"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-GEN1-AC1"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecGen2Volt","elecGen2GLC"], nil, func(val) {
|
||||
if (val.elecGen2Volt >= 110 and val.elecGen2GLC) {
|
||||
obj["ELEC-Line-GEN1-AC1"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-GEN1-AC1"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecAcTie1","elecAcTie2","apuGLC","elecExtEPC","elecGen1GLC","elecGen2GLC"], nil, func(val) {
|
||||
if (val.apuGLC and (val.elecAcTie1 or val.elecAcTie2)) {
|
||||
obj["APU-out"].show();
|
||||
} else {
|
||||
obj["APU-out"].hide();
|
||||
}
|
||||
|
||||
if (val.elecExtEPC and (val.elecAcTie1 or val.elecAcTie2)) {
|
||||
obj["EXT-out"].show();
|
||||
} else {
|
||||
obj["EXT-out"].hide();
|
||||
}
|
||||
|
||||
|
||||
if (val.elecAcTie1 and val.elecAcTie2) {
|
||||
obj["ELEC-Line-APU-AC1"].show();
|
||||
obj["ELEC-Line-APU-EXT"].show();
|
||||
obj["ELEC-Line-EXT-AC2"].show();
|
||||
} else {
|
||||
if (val.elecAcTie1) {
|
||||
obj["ELEC-Line-APU-AC1"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-APU-AC1"].hide();
|
||||
}
|
||||
|
||||
if ((val.elecAcTie2 and val.apuGLC and !val.elecGen2GLC) or (val.elecAcTie1 and val.elecExtEPC and !val.elecGen1GLC)) {
|
||||
obj["ELEC-Line-APU-EXT"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-APU-EXT"].hide();
|
||||
}
|
||||
|
||||
if (val.elecAcTie2) {
|
||||
obj["ELEC-Line-EXT-AC2"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-EXT-AC2"].hide();
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecACEss","ELEC-Line-ACESS-TRESS","elecTR1Contact","elecTR2Contact"], nil, func(val) {
|
||||
if (val.elecACEss >= 110 and !val.elecAcEssEmerGenFeed and (!val.elecTR1Contact or !val.elecTR2Contact)) {
|
||||
obj["ELEC-Line-ACESS-TRESS"].show();
|
||||
} else {
|
||||
obj["ELEC-Line-ACESS-TRESS"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit","BAT1-label","Bat1Volt","Bat1Ampere","BAT2-label","Bat2Volt","Bat2Ampere","BAT1-charge","BAT1-discharge","BAT2-charge","BAT2-discharge","ELEC-Line-DC1-DCBAT","ELEC-Line-DC1-DCESS","ELEC-Line-DC2-DCBAT",
|
||||
"ELEC-Line-DC1-DCESS_DCBAT","ELEC-Line-DC2-DCESS_DCBAT","ELEC-Line-TR1-DC1","ELEC-Line-TR2-DC2","Shed-label","ELEC-Line-ESSTR-DCESS","TR1-label","TR1Volt","TR1Ampere","TR2-label","TR2Volt","TR2Ampere","EMERGEN-group","EmergenVolt","EmergenHz",
|
||||
"ELEC-Line-Emergen-ESSTR","EMERGEN-Label-off","Emergen-Label","EMERGEN-out","ELEC-Line-ACESS-TRESS","ELEC-Line-AC1-TR1","ELEC-Line-AC2-TR2","ELEC-Line-AC1-ACESS","ELEC-Line-AC2-ACESS","ACESS-SHED","ACESS","AC1-in","AC2-in","ELEC-Line-GEN1-AC1","ELEC-Line-GEN2-AC2",
|
||||
"ELEC-Line-APU-AC1","ELEC-Line-APU-EXT","ELEC-Line-EXT-AC2","APU-out","EXT-out","EXTPWR-group","ExtVolt","ExtHz","APU-content","APU-border","APUGentext","APUGenLoad","APUGenVolt","APUGenHz","APUGEN-off","GEN1-label","Gen1Load","Gen1Volt","Gen1Hz",
|
||||
"GEN2-label","Gen2Load","GEN2-off","Gen2Volt","Gen2Hz","ELEC-IDG-1-label","ELEC-IDG-1-num-label","ELEC-IDG-1-Temp","IDG1-LOPR","IDG1-DISC","IDG1-RISE-Value","IDG1-RISE-label","GalleyShed","ELEC-IDG-2-Temp","ELEC-IDG-2-label","ELEC-IDG-2-num-label","IDG2-RISE-label","IDG2-RISE-Value","IDG2-LOPR",
|
||||
"IDG2-DISC","ESSTR-group","ESSTR","ESSTR-Volt","ESSTR-Ampere","BAT1-content","BAT2-content","BAT1-OFF","BAT2-OFF","GEN1-content","GEN2-content","GEN-1-num-label","GEN-2-num-label","GEN1-off","GEN2-off","GEN1-num-label","GEN2-num-label","EXTPWR-label",
|
||||
"ELEC-ACESS-SHED-label","ELEC-DCBAT-label","ELEC-DCESS-label","ELEC-DC2-label","ELEC-DC1-label","ELEC-AC1-label","ELEC-AC2-label","ELEC-ACESS-label","ELEC-Line-ESSTR-DCESS-off","ELEC-Line-Emergen-ESSTR-off"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
elecAcEssFeed1: "/systems/electrical/relay/ac-ess-feed-1/contact-pos",
|
||||
elecAcEssFeed2: "/systems/electrical/relay/ac-ess-feed-2/contact-pos",
|
||||
elecBat1Amp: "/systems/electrical/sources/bat-1/amps",
|
||||
elecBat2Amp: "/systems/electrical/sources/bat-2/amps",
|
||||
elecBat1Direction: "/systems/electrical/sources/bat-1/direction",
|
||||
elecBat2Direction: "/systems/electrical/sources/bat-2/direction",
|
||||
elecBat1Fault: "/systems/electrical/light/bat-1-fault",
|
||||
elecBat2Fault: "/systems/electrical/light/bat-2-fault",
|
||||
elecBat1Volt: "/systems/electrical/sources/bat-1/volt",
|
||||
elecBat2Volt: "/systems/electrical/sources/bat-2/volt",
|
||||
elecBat1Switch: "/controls/electrical/switches/bat-1",
|
||||
elecBat2Switch: "/controls/electrical/switches/bat-2",
|
||||
elecTR1Amp: "/systems/electrical/relay/tr-contactor-1/output-amp",
|
||||
elecTR2Amp: "/systems/electrical/relay/tr-contactor-2/output-amp",
|
||||
elecTR1Volt: "/systems/electrical/relay/tr-contactor-1/output",
|
||||
elecTR2Volt: "/systems/electrical/relay/tr-contactor-2/output",
|
||||
elecTR1Contact: "/systems/electrical/relay/tr-contactor-1/contact-pos",
|
||||
elecTR2Contact: "/systems/electrical/relay/tr-contactor-2/contact-pos",
|
||||
elecTREssAmp: "/systems/electrical/relay/dc-ess-feed-tr/output-amp",
|
||||
elecTrEssContact: "/systems/electrical/relay/dc-ess-feed-tr/contact-pos",
|
||||
elecTREssVolt: "/systems/electrical/relay/dc-ess-feed-tr/output",
|
||||
elecIDG1Disc: "/controls/electrical/switches/idg-1-disc",
|
||||
elecIDG2Disc: "/controls/electrical/switches/idg-2-disc",
|
||||
elecGroundCart: "/controls/electrical/ground-cart",
|
||||
elecExtHertz: "/systems/electrical/sources/ext/output-hertz",
|
||||
elecExtVolt: "/systems/electrical/sources/ext/output-volt",
|
||||
elecDCTie1: "/systems/electrical/relay/dc-bus-tie-dc-1/contact-pos",
|
||||
elecDCTie2: "/systems/electrical/relay/dc-bus-tie-dc-2/contact-pos",
|
||||
elecDcEssFeedBat: "/systems/electrical/relay/dc-ess-feed-bat/contact-pos",
|
||||
elecAcEssEmerGenFeed: "/systems/electrical/relay/ac-ess-feed-emer-gen/contact-pos",
|
||||
elecEmerGenVolts: "/systems/electrical/sources/emer-gen/output-volt",
|
||||
elecEmerGenVoltsRelay: "/systems/electrical/relay/emer-glc/output",
|
||||
elecEmerGenHertz: "/systems/electrical/sources/emer-gen/output-hertz",
|
||||
elecGen1Switch: "/controls/electrical/switches/gen-1",
|
||||
elecGen1Hertz: "/systems/electrical/sources/idg-1/output-hertz",
|
||||
elecGen1Volt: "/systems/electrical/sources/idg-1/output-volt",
|
||||
elecGen1Relay: "/systems/electrical/sources/idg-1/gcr-relay",
|
||||
elecGen1GLC: "/systems/electrical/relay/gen-1-glc/contact-pos",
|
||||
elecGen2Switch: "/controls/electrical/switches/gen-2",
|
||||
elecGen2Hertz: "/systems/electrical/sources/idg-2/output-hertz",
|
||||
elecGen2Volt: "/systems/electrical/sources/idg-2/output-volt",
|
||||
elecGen2Relay: "/systems/electrical/sources/idg-2/gcr-relay",
|
||||
elecGen2GLC: "/systems/electrical/relay/gen-2-glc/contact-pos",
|
||||
elecAcTie1: "/systems/electrical/relay/ac-bus-ac-bus-tie-1/contact-pos",
|
||||
elecAcTie2: "/systems/electrical/relay/ac-bus-ac-bus-tie-2/contact-pos",
|
||||
elecExtEPC: "/systems/electrical/relay/ext-epc/contact-pos",
|
||||
ElecGalleyShed: "/systems/electrical/some-electric-thingie/galley-shed",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
258
Models/Instruments/Lower-ECAM/Lower-ECAM-eng.nas
Normal file
|
@ -0,0 +1,258 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var fuel_used_lbs1 = props.globals.getNode("/systems/fuel/fuel-used-1", 1);
|
||||
var fuel_used_lbs2 = props.globals.getNode("/systems/fuel/fuel-used-2", 1);
|
||||
|
||||
var QT2LTR = 0.946353;
|
||||
|
||||
var canvas_lowerECAMPageEng =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageEng,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["FUEL-clog-1"].hide();
|
||||
obj["FUEL-clog-2"].hide();
|
||||
obj["OIL-clog-1"].hide();
|
||||
obj["OIL-clog-2"].hide();
|
||||
|
||||
obj.quantity = [nil, nil];
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("engOilQt1", 0.005, func(val) {
|
||||
if (obj.units) {
|
||||
obj.quantity[0] = sprintf("%2.1f",(0.1 * math.round(val * QT2LTR * 10,5)));
|
||||
obj["OilQT1"].setText(sprintf("%s", left(obj.quantity[0], (size(obj.quantity[0]) == 4 ? 2 : 1))));
|
||||
obj["OilQT1-decimal"].setText(sprintf("%s", right(obj.quantity[0],1)));
|
||||
obj["OilQT1-needle"].setRotation(((val * QT2LTR) + 90) * D2R);
|
||||
} else {
|
||||
obj.quantity[0] = sprintf("%2.1f",(0.1 * math.round(val * 10,5)));
|
||||
obj["OilQT1"].setText(sprintf("%s", left(obj.quantity[0], (size(obj.quantity[0]) == 4 ? 2 : 1))));
|
||||
obj["OilQT1-decimal"].setText(sprintf("%s", right(obj.quantity[0],1)));
|
||||
obj["OilQT1-needle"].setRotation((val + 90) * D2R);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engOilQt2", 0.005, func(val) {
|
||||
if (obj.units) {
|
||||
obj.quantity[1] = sprintf("%2.1f",(0.1 * math.round(val * QT2LTR * 10,5)));
|
||||
obj["OilQT2"].setText(sprintf("%s", left(obj.quantity[1], (size(obj.quantity[1]) == 4 ? 2 : 1))));
|
||||
obj["OilQT2-decimal"].setText(sprintf("%s", right(obj.quantity[1],1)));
|
||||
obj["OilQT2-needle"].setRotation(((val * QT2LTR) + 90) * D2R);
|
||||
} else {
|
||||
obj.quantity[1] = sprintf("%2.1f",(0.1 * math.round(val * 10,5)));
|
||||
obj["OilQT2"].setText(sprintf("%s", left(obj.quantity[1], (size(obj.quantity[1]) == 4 ? 2 : 1))));
|
||||
obj["OilQT2-decimal"].setText(sprintf("%s", right(obj.quantity[1],1)));
|
||||
obj["OilQT2-needle"].setRotation((val + 90) * D2R);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engOilPsi1", 0.25, func(val) {
|
||||
if (val >= 13) {
|
||||
obj["OilPSI1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["OilPSI1-needle"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["OilPSI1"].setColor(1,0,0);
|
||||
obj["OilPSI1-needle"].setColor(1,0,0);
|
||||
}
|
||||
|
||||
obj["OilPSI1"].setText(sprintf("%s", math.round(val)));
|
||||
obj["OilPSI1-needle"].setRotation((val + 90) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engOilPsi2", 0.25, func(val) {
|
||||
if (val >= 13) {
|
||||
obj["OilPSI2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["OilPSI2-needle"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["OilPSI2"].setColor(1,0,0);
|
||||
obj["OilPSI2-needle"].setColor(1,0,0);
|
||||
}
|
||||
|
||||
obj["OilPSI2"].setText(sprintf("%s", math.round(val)));
|
||||
obj["OilPSI2-needle"].setRotation((val + 90) * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
if (val) {
|
||||
obj["Fused-weight-unit"].setText("KG");
|
||||
obj["Fused-oil-unit"].setText("LTR");
|
||||
# immediately update parameters
|
||||
obj.quantity[0] = sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[0].getValue() * QT2LTR * 10,5)));
|
||||
obj["OilQT1"].setText(sprintf("%s", left(obj.quantity[0], (size(obj.quantity[0]) == 4 ? 2 : 1))));
|
||||
obj["OilQT1-decimal"].setText(sprintf("%s", right(obj.quantity[0],1)));
|
||||
obj["OilQT1-needle"].setRotation(((pts.Engines.Engine.oilQt[0].getValue() * QT2LTR) + 90) * D2R);
|
||||
obj.quantity[1] = sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[1].getValue() * QT2LTR * 10,5)));
|
||||
obj["OilQT2"].setText(sprintf("%s", left(obj.quantity[1], (size(obj.quantity[1]) == 4 ? 2 : 1))));
|
||||
obj["OilQT2-decimal"].setText(sprintf("%s", right(obj.quantity[1],1)));
|
||||
obj["OilQT2-needle"].setRotation(((pts.Engines.Engine.oilQt[1].getValue() * QT2LTR) + 90) * D2R);
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue() * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["Fused-weight-unit"].setText("LBS");
|
||||
obj["Fused-oil-unit"].setText("QT");
|
||||
obj.quantity[0] = sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[0].getValue() * 10,5)));
|
||||
obj["OilQT1"].setText(sprintf("%s", left(obj.quantity[0], (size(obj.quantity[0]) == 4 ? 2 : 1))));
|
||||
obj["OilQT1-decimal"].setText(sprintf("%s", right(obj.quantity[0],1)));
|
||||
obj["OilQT1-needle"].setRotation((pts.Engines.Engine.oilQt[0].getValue() + 90) * D2R);
|
||||
obj.quantity[1] = sprintf("%2.1f",(0.1 * math.round(pts.Engines.Engine.oilQt[1].getValue() * 10,5)));
|
||||
obj["OilQT2"].setText(sprintf("%s", left(obj.quantity[1], (size(obj.quantity[1]) == 4 ? 2 : 1))));
|
||||
obj["OilQT2-decimal"].setText(sprintf("%s", right(obj.quantity[1],1)));
|
||||
obj["OilQT2-needle"].setRotation((pts.Engines.Engine.oilQt[1].getValue() + 90) * D2R);
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue(), 10)));
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue(), 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed1", 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed2", 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["OilQT1-needle","OilQT2-needle","OilQT1","OilQT2","OilQT1-decimal","OilQT2-decimal","OilPSI1-needle","OilPSI2-needle","OilPSI1","OilPSI2",
|
||||
"FUEL-used-1","FUEL-used-2", "Fused-weight-unit","Fused-oil-unit","FUEL-clog-1","FUEL-clog-2","OIL-clog-1","OIL-clog-2","OilTemp1","OilTemp2",
|
||||
"VIB-N1-1","VIB-N1-2","VIB-N2-1","VIB-N2-2"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
engFuelUsed1: "/systems/fuel/fuel-used-1",
|
||||
engFuelUsed2: "/systems/fuel/fuel-used-2",
|
||||
engOilQt1: "/engines/engine[0]/oil-qt-actual",
|
||||
engOilQt2: "/engines/engine[1]/oil-qt-actual",
|
||||
engOilPsi1: "/engines/engine[0]/oil-psi-actual",
|
||||
engOilPsi2: "/engines/engine[1]/oil-psi-actual",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
611
Models/Instruments/Lower-ECAM/Lower-ECAM-fctl.nas
Normal file
|
@ -0,0 +1,611 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageFctl =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageFctl,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashList(["green","elac1","elac2","sec2"], nil, func(val) {
|
||||
if (val.green >= 1450) {
|
||||
if (val.elac2 or val.sec2) {
|
||||
obj["elevLgreen"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elevLgreen"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (val.elac2) {
|
||||
obj["ailLgreen"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailLgreen"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
if (val.elac1) {
|
||||
obj["ailRgreen"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailRgreen"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
obj["ruddergreen"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PTgreen"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spdbrkgreen"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailLgreen"].setColor(0.7333,0.3803,0);
|
||||
obj["ailRgreen"].setColor(0.7333,0.3803,0);
|
||||
obj["elevLgreen"].setColor(0.7333,0.3803,0);
|
||||
obj["ruddergreen"].setColor(0.7333,0.3803,0);
|
||||
obj["PTgreen"].setColor(0.7333,0.3803,0);
|
||||
obj["spdbrkgreen"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["yellow","elac2","sec2"], nil, func(val) {
|
||||
if (val.yellow >= 1450) {
|
||||
if (val.elac2 or val.sec2) {
|
||||
obj["elevRyellow"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elevRyellow"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
obj["rudderyellow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PTyellow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spdbrkyellow"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elevRyellow"].setColor(0.7333,0.3803,0);
|
||||
obj["rudderyellow"].setColor(0.7333,0.3803,0);
|
||||
obj["PTyellow"].setColor(0.7333,0.3803,0);
|
||||
obj["spdbrkyellow"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["blue","elac1","elac2","sec1"], nil, func(val) {
|
||||
if (val.blue >= 1500) {
|
||||
if (val.elac1) {
|
||||
obj["ailLblue"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailLblue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
if (val.elac1 or val.sec1) {
|
||||
obj["elevLblue"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["elevRblue"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elevLblue"].setColor(0.7333,0.3803,0);
|
||||
obj["elevRblue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
if (val.elac2) {
|
||||
obj["ailRblue"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailRblue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
obj["rudderblue"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spdbrkblue"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ailLblue"].setColor(0.7333,0.3803,0);
|
||||
obj["ailRblue"].setColor(0.7333,0.3803,0);
|
||||
obj["elevLblue"].setColor(0.7333,0.3803,0);
|
||||
obj["elevRblue"].setColor(0.7333,0.3803,0);
|
||||
obj["rudderblue"].setColor(0.7333,0.3803,0);
|
||||
obj["spdbrkblue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlAilL", 0.001, func(val) {
|
||||
obj["ailL"].setTranslation(0, val * 100);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlAilR", 0.001, func(val) {
|
||||
obj["ailR"].setTranslation(0, val * -100);
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["blue","green","elac1","elac2"], nil, func(val) {
|
||||
if ((val.blue < 1500 or !val.elac1) and (val.green < 1500 or !val.elac2)) {
|
||||
obj["ailL"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ailL"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
if ((val.green < 1500 or !val.elac1) and (val.blue < 1500 or !val.elac2)) {
|
||||
obj["ailR"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ailR"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlElevL", 0.001, func(val) {
|
||||
obj["elevL"].setTranslation(0, val * 100);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlElevR", 0.001, func(val) {
|
||||
obj["elevR"].setTranslation(0, val * 100);
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["blue","green","yellow","elac1","elac2","sec1","sec2"], nil, func(val) {
|
||||
if ((val.blue < 1500 or (!val.elac1 and !val.sec1)) and (val.green < 1500 or (!val.elac2 and !val.sec2))) {
|
||||
obj["elevL"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["elevL"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
|
||||
if ((val.blue < 1500 or (!val.elac1 and !val.sec1)) and (val.yellow < 1500 or (!val.elac2 and !val.sec2))) {
|
||||
obj["elevR"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["elevR"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlElevTrim", 0.01, func(val) {
|
||||
obj["PT"].setText(sprintf("%2.1f", val));
|
||||
if (val >= 0.09) {
|
||||
obj["PTupdn"].setText("UP");
|
||||
obj["PTupdn"].show();
|
||||
} elsif (val <= -0.09) {
|
||||
obj["PTupdn"].setText("DN");
|
||||
obj["PTupdn"].show();
|
||||
} else {
|
||||
obj["PTupdn"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elac1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["elac1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path4249"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elac1"].setColor(0.7333,0.3803,0);
|
||||
obj["path4249"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("elac2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["elac2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path4249-3"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["elac2"].setColor(0.7333,0.3803,0);
|
||||
obj["path4249-3"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("sec1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["sec1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path4249-3-6-7"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["sec1"].setColor(0.7333,0.3803,0);
|
||||
obj["path4249-3-6-7"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("sec2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["sec2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path4249-3-6-7-5"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["sec2"].setColor(0.7333,0.3803,0);
|
||||
obj["path4249-3-6-7-5"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("sec3", nil, func(val) {
|
||||
if (val) {
|
||||
obj["sec3"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path4249-3-6"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["sec3"].setColor(0.7333,0.3803,0);
|
||||
obj["path4249-3-6"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["blue","yellow","green"], 25, func(val) {
|
||||
if (val.green < 1500 and val.yellow < 1500) {
|
||||
obj["PT"].setColor(0.7333,0.3803,0);
|
||||
obj["PTupdn"].setColor(0.7333,0.3803,0);
|
||||
obj["PTcc"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["PT"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PTupdn"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PTcc"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (val.blue < 1500 and val.yellow < 1500 and val.green < 1500) {
|
||||
obj["rudder"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["rudder"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlRudder", 0.001, func(val) {
|
||||
obj["rudder"].setRotation(val * -0.024);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlRudderTrim", 0.01, func(val) {
|
||||
obj["rudderTrimInd"].setRotation(val * -0.024);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fctlTHSJam", nil, func(val) {
|
||||
if (val) {
|
||||
obj["pitchTrimStatus"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["pitchTrimStatus"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL1", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler1Lex"].hide();
|
||||
obj["spoiler1Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler1Lrt"].hide();
|
||||
obj["spoiler1Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL2", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler2Lex"].hide();
|
||||
obj["spoiler2Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler2Lrt"].hide();
|
||||
obj["spoiler2Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL3", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler3Lex"].hide();
|
||||
obj["spoiler3Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler3Lrt"].hide();
|
||||
obj["spoiler3Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL4", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler4Lex"].hide();
|
||||
obj["spoiler4Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler4Lrt"].hide();
|
||||
obj["spoiler4Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL5", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler5Lex"].hide();
|
||||
obj["spoiler5Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler5Lrt"].hide();
|
||||
obj["spoiler5Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR1", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler1Rex"].hide();
|
||||
obj["spoiler1Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler1Rrt"].hide();
|
||||
obj["spoiler1Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR2", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler2Rex"].hide();
|
||||
obj["spoiler2Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler2Rrt"].hide();
|
||||
obj["spoiler2Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR3", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler3Rex"].hide();
|
||||
obj["spoiler3Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler3Rrt"].hide();
|
||||
obj["spoiler3Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR4", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler4Rex"].hide();
|
||||
obj["spoiler4Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler4Rrt"].hide();
|
||||
obj["spoiler4Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR5", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler5Rex"].hide();
|
||||
obj["spoiler5Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler5Rrt"].hide();
|
||||
obj["spoiler5Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL1Failure","spoilerL1","green"], nil, func(val) {
|
||||
if (val.spoilerL1Failure or val.green < 1500) {
|
||||
obj["spoiler1Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler1Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL1 < 1.5) {
|
||||
obj["spoiler1Lf"].show();
|
||||
} else {
|
||||
obj["spoiler1Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler1Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL2Failure","spoilerL2","yellow"], nil, func(val) {
|
||||
if (val.spoilerL2Failure or val.yellow < 1500) {
|
||||
obj["spoiler2Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler2Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL2 < 1.5) {
|
||||
obj["spoiler2Lf"].show();
|
||||
} else {
|
||||
obj["spoiler2Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler2Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL3Failure","spoilerL3","blue"], nil, func(val) {
|
||||
if (val.spoilerL3Failure or val.blue < 1500) {
|
||||
obj["spoiler3Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler3Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL3 < 1.5) {
|
||||
obj["spoiler3Lf"].show();
|
||||
} else {
|
||||
obj["spoiler3Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler3Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL4Failure","spoilerL4","yellow"], nil, func(val) {
|
||||
if (val.spoilerL4Failure or val.yellow < 1500) {
|
||||
obj["spoiler4Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler4Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL4 < 1.5) {
|
||||
obj["spoiler4Lf"].show();
|
||||
} else {
|
||||
obj["spoiler4Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler4Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL5Failure","spoilerL5","green"], nil, func(val) {
|
||||
if (val.spoilerL5Failure or val.green < 1500) {
|
||||
obj["spoiler5Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler5Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL5 < 1.5) {
|
||||
obj["spoiler5Lf"].show();
|
||||
} else {
|
||||
obj["spoiler5Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler5Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR1Failure","spoilerR1","green"], nil, func(val) {
|
||||
if (val.spoilerR1Failure or val.green < 1500) {
|
||||
obj["spoiler1Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler1Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR1 < 1.5) {
|
||||
obj["spoiler1Rf"].show();
|
||||
} else {
|
||||
obj["spoiler1Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler1Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR2Failure","spoilerR2","yellow"], nil, func(val) {
|
||||
if (val.spoilerR2Failure or val.yellow < 1500) {
|
||||
obj["spoiler2Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler2Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR2 < 1.5) {
|
||||
obj["spoiler2Rf"].show();
|
||||
} else {
|
||||
obj["spoiler2Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler2Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR3Failure","spoilerR3","blue"], nil, func(val) {
|
||||
if (val.spoilerR3Failure or val.blue < 1500) {
|
||||
obj["spoiler3Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler3Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR3 < 1.5) {
|
||||
obj["spoiler3Rf"].show();
|
||||
} else {
|
||||
obj["spoiler3Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler3Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR4Failure","spoilerR4","yellow"], nil, func(val) {
|
||||
if (val.spoilerR4Failure or val.yellow < 1500) {
|
||||
obj["spoiler4Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler4Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR4 < 1.5) {
|
||||
obj["spoiler4Rf"].show();
|
||||
} else {
|
||||
obj["spoiler4Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler4Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR5Failure","spoilerR5","green"], nil, func(val) {
|
||||
if (val.spoilerR5Failure or val.green < 1500) {
|
||||
obj["spoiler5Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler5Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR5 < 1.5) {
|
||||
obj["spoiler5Rf"].show();
|
||||
} else {
|
||||
obj["spoiler5Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler5Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Rf"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["ailL","ailR","elevL","elevR","PTcc","PT","PTupdn","elac1","elac2","sec1","sec2","sec3","ailLblue","ailRblue","elevLblue","elevRblue","rudderblue","ailLgreen","ailRgreen","elevLgreen","ruddergreen","PTgreen",
|
||||
"elevRyellow","rudderyellow","PTyellow","rudder","spdbrkblue","spdbrkgreen","spdbrkyellow","spoiler1Rex","spoiler1Rrt","spoiler2Rex","spoiler2Rrt","spoiler3Rex","spoiler3Rrt","spoiler4Rex","spoiler4Rrt","spoiler5Rex","spoiler5Rrt","spoiler1Lex",
|
||||
"spoiler1Lrt","spoiler2Lex","spoiler2Lrt","spoiler3Lex","spoiler3Lrt","spoiler4Lex","spoiler4Lrt","spoiler5Lex","spoiler5Lrt","spoiler1Rf","spoiler2Rf","spoiler3Rf","spoiler4Rf","spoiler5Rf","spoiler1Lf","spoiler2Lf","spoiler3Lf","spoiler4Lf",
|
||||
"spoiler5Lf","ailLscale","ailRscale","path4249","path4249-3","path4249-3-6-7","path4249-3-6-7-5","path4249-3-6","pitchTrimStatus","rudderTrimInd"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
elac1: "/systems/fctl/elac1",
|
||||
elac2: "/systems/fctl/elac2",
|
||||
elac1Fail: "/systems/failures/fctl/elac1",
|
||||
elac2Fail: "/systems/failures/fctl/elac2",
|
||||
sec1: "/systems/fctl/sec1",
|
||||
sec2: "/systems/fctl/sec2",
|
||||
sec3: "/systems/fctl/sec3",
|
||||
sec1Fail: "/systems/failures/fctl/sec1",
|
||||
sec2Fail: "/systems/failures/fctl/sec2",
|
||||
sec3Fail: "/systems/failures/fctl/sec3",
|
||||
fac1: "/systems/fctl/fac1-healthy-signal",
|
||||
fac2: "/systems/fctl/fac2-healthy-signal",
|
||||
fac1Fail: "/systems/failures/fctl/fac1",
|
||||
fac2Fail: "/systems/failures/fctl/fac2",
|
||||
fctlAilL: "/ECAM/Lower/aileron-ind-left",
|
||||
fctlAilR: "/ECAM/Lower/aileron-ind-right",
|
||||
fctlElevL: "/ECAM/Lower/elevator-ind-left",
|
||||
fctlElevR: "/ECAM/Lower/elevator-ind-right",
|
||||
fctlElevTrim: "/ECAM/Lower/elevator-trim-deg",
|
||||
fctlRudder: "/fdm/jsbsim/hydraulics/rudder/final-deg",
|
||||
fctlRudderTrim: "/fdm/jsbsim/hydraulics/rudder/trim-deg",
|
||||
fctlTHSJam: "/systems/failures/fctl/ths-jam",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
600
Models/Instruments/Lower-ECAM/Lower-ECAM-fuel.nas
Normal file
|
@ -0,0 +1,600 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var fuel_used_lbs1 = props.globals.getNode("/systems/fuel/fuel-used-1", 1);
|
||||
var fuel_used_lbs2 = props.globals.getNode("/systems/fuel/fuel-used-2", 1);
|
||||
|
||||
var canvas_lowerECAMPageFuel =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageFuel,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["FUEL-Left-blocked"].hide();
|
||||
obj["FUEL-Right-blocked"].hide();
|
||||
obj["FUEL-Left-Outer-Inacc"].hide();
|
||||
obj["FUEL-Left-Inner-Inacc"].hide();
|
||||
obj["FUEL-Right-Outer-Inacc"].hide();
|
||||
obj["FUEL-Right-Inner-Inacc"].hide();
|
||||
obj["FUEL-Center-Inacc"].hide();
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FOB-weight-unit"].setText("KG");
|
||||
obj["Fused-weight-unit"].setText("KG");
|
||||
obj["FFlow-weight-unit"].setText("KG/MIN");
|
||||
obj["FUEL-On-Board"].setText(sprintf("%s", math.round(pts.Consumables.Fuel.totalFuelLbs.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Left-Outer-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.leftOuter.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Left-Inner-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.leftInner.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Center-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.center.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Right-Inner-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.rightInner.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Right-Outer-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.rightOuter.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-Flow-per-min"].setText(sprintf("%s", math.round(((pts.Engines.Engine.fuelFlow[0].getValue() + pts.Engines.Engine.fuelFlow[1].getValue()) * LBS2KGS) / 60, 10)));
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue() * LBS2KGS, 10)));
|
||||
obj["FUEL-used-both"].setText(sprintf("%s", (math.round((fuel_used_lbs1.getValue() * LBS2KGS) + (fuel_used_lbs2.getValue() * LBS2KGS), 10))));
|
||||
} else {
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(fuel_used_lbs1.getValue(), 10)));
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(fuel_used_lbs2.getValue(), 10)));
|
||||
obj["FUEL-used-both"].setText(sprintf("%s", (math.round(fuel_used_lbs1.getValue() + fuel_used_lbs2.getValue(), 10))));
|
||||
obj["FUEL-Flow-per-min"].setText(sprintf("%s", math.round((pts.Engines.Engine.fuelFlow[0].getValue() + pts.Engines.Engine.fuelFlow[1].getValue()) / 60, 10)));
|
||||
obj["FOB-weight-unit"].setText("LBS");
|
||||
obj["Fused-weight-unit"].setText("LBS");
|
||||
obj["FFlow-weight-unit"].setText("LBS/MIN");
|
||||
obj["FUEL-On-Board"].setText(sprintf("%s", math.round(pts.Consumables.Fuel.totalFuelLbs.getValue(), 10)));
|
||||
obj["FUEL-Left-Outer-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.leftOuter.getValue(), 10)));
|
||||
obj["FUEL-Left-Inner-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.leftInner.getValue(), 10)));
|
||||
obj["FUEL-Center-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.center.getValue(), 10)));
|
||||
obj["FUEL-Right-Inner-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.rightInner.getValue(), 10)));
|
||||
obj["FUEL-Right-Outer-quantity"].setText(sprintf("%s", math.round(systems.FUEL.Quantity.rightOuter.getValue(), 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed1", 0.5, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-used-1"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("engFuelUsed2", 0.5, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-used-2"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["engFuelUsed1","engFuelUsed2"], 0.5, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-used-both"].setText(sprintf("%s", (math.round((val.engFuelUsed1 * LBS2KGS) + (val.engFuelUsed2 * LBS2KGS), 10))));
|
||||
} else {
|
||||
obj["FUEL-used-both"].setText(sprintf("%s", (math.round(val.engFuelUsed1 + val.engFuelUsed2, 10))));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelLeftOuterQty", 0.25, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-Left-Outer-quantity"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-Left-Outer-quantity"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelRightOuterQty", 0.25, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-Right-Outer-quantity"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-Right-Outer-quantity"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelLeftInnerQty", 0.25, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-Left-Inner-quantity"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-Left-Inner-quantity"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelRightInnerQty", 0.25, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-Right-Inner-quantity"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-Right-Inner-quantity"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fadecPower1","fadecPower2","fadecPowerStart","fuelflow_1","fuelflow_2"], nil, func(val) {
|
||||
if (val.fadecPower1 or val.fadecPower2 or val.fadecPowerStart) {
|
||||
obj["FUEL-Flow-per-min"].setColor(0.0509,0.7529,0.2941);
|
||||
if (obj.units) {
|
||||
obj["FUEL-Flow-per-min"].setText(sprintf("%s", math.round(((val.fuelflow_1 + val.fuelflow_2) * LBS2KGS) / 60, 10)));
|
||||
} else {
|
||||
obj["FUEL-Flow-per-min"].setText(sprintf("%s", math.round((val.fuelflow_1 + val.fuelflow_2) / 60, 10)));
|
||||
}
|
||||
} else {
|
||||
obj["FUEL-Flow-per-min"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Flow-per-min"].setText("XX");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N1_actual_1", 0.05, func(val) {
|
||||
if (val <= 18.8) {
|
||||
obj["ENG1idFFlow"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-1-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ENG1idFFlow"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["FUEL-ENG-1-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N1_actual_2", 0.05, func(val) {
|
||||
if (val <= 18.8) {
|
||||
obj["ENG2idFFlow"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-2-label"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ENG2idFFlow"].setColor(0.8078,0.8039,0.8078);
|
||||
obj["FUEL-ENG-2-label"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelLeftSwitch1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Left-1-Open"].show();
|
||||
obj["FUEL-Pump-Left-1-Closed"].hide();
|
||||
obj["FUEL-Pump-Left-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-1"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-1-Square"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-1-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-1-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Left-1-Open"].hide();
|
||||
obj["FUEL-Pump-Left-1-Closed"].show();
|
||||
obj["FUEL-Pump-Left-1"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-1-Square"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-1"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-1-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-1-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelLeftSwitch2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Left-2-Open"].show();
|
||||
obj["FUEL-Pump-Left-2-Closed"].hide();
|
||||
obj["FUEL-Pump-Left-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-2"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-2-Square"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-2-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Left-2-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Left-2-Open"].hide();
|
||||
obj["FUEL-Pump-Left-2-Closed"].show();
|
||||
obj["FUEL-Pump-Left-2"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-2"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-2-Square"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-2-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Left-2-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelCenterSwitch1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Center-1-Open"].show();
|
||||
obj["FUEL-Pump-Center-1-Closed"].hide();
|
||||
obj["FUEL-Pump-Center-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-1"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-1-Square"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-1-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-1-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Center-1-Open"].hide();
|
||||
obj["FUEL-Pump-Center-1-Closed"].show();
|
||||
obj["FUEL-Pump-Center-1"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-1"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-1-Square"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-1-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-1-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelCenterSwitch2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Center-2-Open"].show();
|
||||
obj["FUEL-Pump-Center-2-Closed"].hide();
|
||||
obj["FUEL-Pump-Center-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-2"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-2-Square"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-2-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Center-2-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Center-2-Open"].hide();
|
||||
obj["FUEL-Pump-Center-2-Closed"].show();
|
||||
obj["FUEL-Pump-Center-2"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-2"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-2-Square"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-2-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Center-2-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelRightSwitch1", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Right-1-Open"].show();
|
||||
obj["FUEL-Pump-Right-1-Closed"].hide();
|
||||
obj["FUEL-Pump-Right-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-1"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-1-Square"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-1-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-1-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Right-1-Open"].hide();
|
||||
obj["FUEL-Pump-Right-1-Closed"].show();
|
||||
obj["FUEL-Pump-Right-1"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-1"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-1-Square"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-1-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-1-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelRightSwitch2", nil, func(val) {
|
||||
if (val) {
|
||||
obj["FUEL-Pump-Right-2-Open"].show();
|
||||
obj["FUEL-Pump-Right-2-Closed"].hide();
|
||||
obj["FUEL-Pump-Right-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-2"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-2-Square"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-2-Open"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-Pump-Right-2-Closed"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Pump-Right-2-Open"].hide();
|
||||
obj["FUEL-Pump-Right-2-Closed"].show();
|
||||
obj["FUEL-Pump-Right-2"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-2"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-2-Square"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-2-Open"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-Pump-Right-2-Closed"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fuelCenterSwitch1","fuelCenterSwitch2"], nil, func(val) {
|
||||
if (!val.fuelCenterSwitch1 and !val.fuelCenterSwitch2) {
|
||||
obj["FUEL-Center-blocked"].show();
|
||||
} else {
|
||||
obj["FUEL-Center-blocked"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fuelCrossfeedValve","fuelCrossfeedSwitch"], nil, func(val) {
|
||||
if (val.fuelCrossfeedValve == 1) {
|
||||
obj["FUEL-XFEED"].setRotation(0);
|
||||
obj["FUEL-XFEED-pipes"].show();
|
||||
if (val.fuelCrossfeedSwitch) {
|
||||
obj["FUEL-XFEED"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-XFEED"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-XFEED-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-XFEED"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
} elsif (val.fuelCrossfeedValve == 0) {
|
||||
obj["FUEL-XFEED"].setRotation(90 * D2R);
|
||||
obj["FUEL-XFEED-pipes"].hide();
|
||||
if (!val.fuelCrossfeedSwitch) {
|
||||
obj["FUEL-XFEED"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-XFEED"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-XFEED-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-XFEED"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
obj["FUEL-XFEED"].setRotation(45 * D2R);
|
||||
obj["FUEL-XFEED-pipes"].hide();
|
||||
obj["FUEL-XFEED"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-XFEED-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fuelEngine1Valve","engineCutoff1"], nil, func(val) {
|
||||
if (val.fuelEngine1Valve) {
|
||||
if (val.fuelEngine1Valve == 1) {
|
||||
obj["FUEL-ENG-Master-1"].setRotation(0);
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-1"].setRotation(45 * D2R);
|
||||
}
|
||||
if (val.engineCutoff1) {
|
||||
obj["FUEL-ENG-Master-1"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-1"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-1-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-1-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-1-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-Master-1"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-Master-1-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-1-pipe"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-1-pipe"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-1"].setRotation(90 * D2R);
|
||||
obj["FUEL-ENG-Master-1"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-1"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-1-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-1-pipe"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-1-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fuelEngine2Valve","engineCutoff2"], nil, func(val) {
|
||||
if (val.fuelEngine2Valve) {
|
||||
if (val.fuelEngine2Valve == 1) {
|
||||
obj["FUEL-ENG-Master-2"].setRotation(0);
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-2"].setRotation(45 * D2R);
|
||||
}
|
||||
if (val.engineCutoff1) {
|
||||
obj["FUEL-ENG-Master-2"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-2"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-2-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-2-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-2-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-2"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-Master-2"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-Master-2-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-2-pipe"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-ENG-2-pipe"].setColorFill(0.0509,0.7529,0.2941);
|
||||
}
|
||||
} else {
|
||||
obj["FUEL-ENG-Master-2"].setRotation(90 * D2R);
|
||||
obj["FUEL-ENG-Master-2"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-2"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-Master-2-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-2-pipe"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-ENG-2-pipe"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTransferValve1", nil, func(val) {
|
||||
if (val == 0) {
|
||||
obj["FUEL-Left-Transfer"].hide();
|
||||
} else {
|
||||
if (val == 1) {
|
||||
obj["FUEL-Left-Transfer"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Left-Transfer"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
obj["FUEL-Left-Transfer"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTransferValve2", nil, func(val) {
|
||||
if (val == 0) {
|
||||
obj["FUEL-Right-Transfer"].hide();
|
||||
} else {
|
||||
if (val == 1) {
|
||||
obj["FUEL-Right-Transfer"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["FUEL-Right-Transfer"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
obj["FUEL-Right-Transfer"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTotalLbs", 1, func(val) {
|
||||
if (obj.units) {
|
||||
obj["FUEL-On-Board"].setText(sprintf("%s", math.round(val * LBS2KGS, 10)));
|
||||
} else {
|
||||
obj["FUEL-On-Board"].setText(sprintf("%s", math.round(val, 10)));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTempLeftOuter", 0.25, func(val) {
|
||||
obj["FUEL-Left-Outer-temp"].setText(sprintf("%s", math.round(val)));
|
||||
if (val > 55 or val < -40) {
|
||||
obj["FUEL-Left-Outer-temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-Left-Outer-temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTempLeftInner", 0.25, func(val) {
|
||||
obj["FUEL-Left-Inner-temp"].setText(sprintf("%s", math.round(val)));
|
||||
if (val > 45 or val < -40) {
|
||||
obj["FUEL-Left-Inner-temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-Left-Inner-temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTempRightInner", 0.25, func(val) {
|
||||
obj["FUEL-Right-Inner-temp"].setText(sprintf("%s", math.round(val)));
|
||||
if (val > 45 or val < -40) {
|
||||
obj["FUEL-Right-Inner-temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-Right-Inner-temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("fuelTempRightOuter", 0.25, func(val) {
|
||||
obj["FUEL-Right-Outer-temp"].setText(sprintf("%s", math.round(val)));
|
||||
if (val > 55 or val < -40) {
|
||||
obj["FUEL-Right-Outer-temp"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["FUEL-Right-Outer-temp"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["fuelApuValve","apuMaster","apuFireBtn"], nil, func(val) {
|
||||
if (val.fuelApuValve == 0) {
|
||||
if (val.apuMaster or val.apuFireBtn) {
|
||||
obj["FUEL-APU-label"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-APU-line"].hide();
|
||||
obj["FUEL-APU-arrow"].hide();
|
||||
} else {
|
||||
obj["FUEL-APU-label"].setColor(0.8078, 0.8039, 0.8078);
|
||||
obj["FUEL-APU-arrow"].setColor(0.8078, 0.8039, 0.8078);
|
||||
obj["FUEL-APU-line"].hide();
|
||||
obj["FUEL-APU-arrow"].show();
|
||||
}
|
||||
} else {
|
||||
if (!val.apuMaster or val.apuFireBtn) {
|
||||
obj["FUEL-APU-label"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-APU-line"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-APU-line"].setColorFill(0.7333,0.3803,0);
|
||||
obj["FUEL-APU-arrow"].setColor(0.7333,0.3803,0);
|
||||
obj["FUEL-APU-line"].show();
|
||||
obj["FUEL-APU-arrow"].show();
|
||||
} else {
|
||||
obj["FUEL-APU-label"].setColor(0.8078, 0.8039, 0.8078);
|
||||
obj["FUEL-APU-line"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-APU-arrow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["FUEL-APU-line"].show();
|
||||
obj["FUEL-APU-arrow"].show();
|
||||
}
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit","FUEL-Pump-Left-1","FUEL-Pump-Left-2","FUEL-Pump-Center-1","FUEL-Pump-Center-2","FUEL-Pump-Right-1","FUEL-Pump-Right-2","FUEL-Left-blocked","FUEL-Right-blocked","FUEL-Center-blocked","FUEL-Left-Transfer",
|
||||
"FUEL-Right-Transfer","FUEL-Left-Outer-Inacc","FUEL-Left-Inner-Inacc","FUEL-Center-Inacc","FUEL-Right-Inner-Inacc","FUEL-Right-Outer-Inacc","FUEL-Left-Outer-quantity","FUEL-Left-Inner-quantity","FUEL-Center-quantity","FUEL-Right-Inner-quantity",
|
||||
"FUEL-Right-Outer-quantity","FUEL-On-Board","FUEL-Flow-per-min","FUEL-APU-arrow","FUEL-APU-line","FUEL-APU-label","FUEL-used-1","FUEL-used-both","FUEL-used-2","FUEL-ENG-Master-1","FUEL-ENG-Master-2","FUEL-XFEED","FUEL-XFEED-Cross","FUEL-XFEED-pipes","FUEL-Left-Outer-temp",
|
||||
"FUEL-Left-Inner-temp","FUEL-Right-Inner-temp","FUEL-Right-Outer-temp","FUEL-Pump-Left-1-Closed","FUEL-Pump-Left-1-Open","FUEL-Pump-Left-2-Closed","FUEL-Pump-Left-2-Open","FUEL-Pump-Center-1-Open","FUEL-Pump-Center-1-Closed","FUEL-Pump-Center-2-Closed",
|
||||
"FUEL-Pump-Center-2-Open","FUEL-Pump-Right-1-Closed","FUEL-Pump-Right-1-Open","FUEL-Pump-Right-2-Closed","FUEL-Pump-Right-2-Open","FUEL-ENG-1-label","FUEL-ENG-2-label","FUEL-ENG-1-pipe","FUEL-ENG-2-pipe","ENG1idFFlow","ENG2idFFlow","FUEL-used-1","FUEL-used-2","FUEL-used-both",
|
||||
"Fused-weight-unit","FFlow-weight-unit","FOB-weight-unit","FUEL-ENG-Master-1-Cross","FUEL-ENG-Master-2-Cross","FUEL-Pump-Left-1-Square","FUEL-Pump-Left-2-Square","FUEL-Pump-Center-1-Square","FUEL-Pump-Center-2-Square","FUEL-Pump-Right-1-Square","FUEL-Pump-Right-2-Square"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
engineCutoff1: "/controls/engines/engine[0]/cutoff-switch",
|
||||
engineCutoff2: "/controls/engines/engine[1]/cutoff-switch",
|
||||
fuelApuValve: "/systems/fuel/valves/apu-lp-valve",
|
||||
fuelCrossfeedSwitch: "/controls/fuel/switches/crossfeed",
|
||||
fuelCrossfeedValve: "/systems/fuel/valves/crossfeed-valve",
|
||||
fuelEngine1Valve: "/systems/fuel/valves/engine-1-lp-valve",
|
||||
fuelEngine2Valve: "/systems/fuel/valves/engine-2-lp-valve",
|
||||
fuelTransferValve1: "/systems/fuel/valves/outer-inner-transfer-valve-1",
|
||||
fuelTransferValve2: "/systems/fuel/valves/outer-inner-transfer-valve-2",
|
||||
fuelLeftSwitch1: "/controls/fuel/switches/pump-left-1",
|
||||
fuelLeftSwitch2: "/controls/fuel/switches/pump-left-2",
|
||||
fuelCenterSwitch1: "/controls/fuel/switches/pump-center-1",
|
||||
fuelCenterSwitch2: "/controls/fuel/switches/pump-center-2",
|
||||
fuelRightSwitch1: "/controls/fuel/switches/pump-right-1",
|
||||
fuelRightSwitch2: "/controls/fuel/switches/pump-right-2",
|
||||
fuelTempLeftOuter: "/consumables/fuel/tank[0]/temperature_degC",
|
||||
fuelTempLeftInner: "/consumables/fuel/tank[1]/temperature_degC",
|
||||
fuelTempRightOuter: "/consumables/fuel/tank[4]/temperature_degC",
|
||||
fuelTempRightInner: "/consumables/fuel/tank[3]/temperature_degC",
|
||||
fuelLeftOuterQty: "/consumables/fuel/tank[0]/level-lbs",
|
||||
fuelLeftInnerQty: "/consumables/fuel/tank[1]/level-lbs",
|
||||
fuelRightOuterQty: "/consumables/fuel/tank[4]/level-lbs",
|
||||
fuelRightInnerQty: "/consumables/fuel/tank[3]/level-lbs",
|
||||
fuelCenterQty: "/consumables/fuel/tank[2]/level-lbs",
|
||||
fuelTotalLbs: "/consumables/fuel/total-fuel-lbs",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
528
Models/Instruments/Lower-ECAM/Lower-ECAM-hyd.nas
Normal file
|
@ -0,0 +1,528 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var elec_pump_y_ovht = props.globals.initNode("/systems/hydraulic/elec-pump-yellow-ovht", 0, "BOOL");
|
||||
var elec_pump_b_ovht = props.globals.initNode("/systems/hydraulic/elec-pump-blue-ovht", 0, "BOOL");
|
||||
var y_resv_ovht = props.globals.initNode("/systems/hydraulic/yellow-resv-ovht", 0, "BOOL");
|
||||
var b_resv_ovht = props.globals.initNode("/systems/hydraulic/blue-resv-ovht", 0, "BOOL");
|
||||
var g_resv_ovht = props.globals.initNode("/systems/hydraulic/green-resv-ovht", 0, "BOOL");
|
||||
var y_resv_lo_press = props.globals.initNode("/systems/hydraulic/yellow-resv-lo-air-press", 0, "BOOL");
|
||||
var b_resv_lo_press = props.globals.initNode("/systems/hydraulic/blue-resv-lo-air-press", 0, "BOOL");
|
||||
var g_resv_lo_press = props.globals.initNode("/systems/hydraulic/green-resv-lo-air-press", 0, "BOOL");
|
||||
|
||||
var canvas_lowerECAMPageHyd =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageHyd,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
|
||||
var clip_el = obj.group.getElementById(key ~ "_clip");
|
||||
if (clip_el != nil) {
|
||||
clip_el.setVisible(0);
|
||||
var tran_rect = clip_el.getTransformedBounds();
|
||||
|
||||
var clip_rect = sprintf("rect(%d,%d, %d,%d)",
|
||||
tran_rect[1],
|
||||
tran_rect[2],
|
||||
tran_rect[3],
|
||||
tran_rect[0]);
|
||||
obj[key].set("clip", clip_rect);
|
||||
obj[key].set("clip-frame", canvas.Element.PARENT);
|
||||
}
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("blue", 25, func(val) {
|
||||
if (val >= 100) {
|
||||
obj["Press-Blue"].setText(sprintf("%s", math.round(val, 50)));
|
||||
} else {
|
||||
obj["Press-Blue"].setText(sprintf("%s", 0));
|
||||
}
|
||||
|
||||
if (val > 1450) {
|
||||
obj["Blue-Line"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Blue-Line"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Blue-Line-Top"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Blue-Line-Bottom"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Blue-Indicator"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Press-Blue"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Blue-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["Blue-Line"].setColor(0.7333,0.3803,0);
|
||||
obj["Blue-Line"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Blue-Line-Top"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Blue-Line-Bottom"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Blue-Indicator"].setColor(0.7333,0.3803,0);
|
||||
obj["Press-Blue"].setColor(0.7333,0.3803,0);
|
||||
obj["Blue-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("yellow", 25, func(val) {
|
||||
if (val >= 100) {
|
||||
obj["Press-Yellow"].setText(sprintf("%s", math.round(val, 50)));
|
||||
} else {
|
||||
obj["Press-Yellow"].setText(sprintf("%s", 0));
|
||||
}
|
||||
|
||||
if (val > 1450) {
|
||||
obj["Yellow-Line"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-Line"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-Line-Top"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-Line-Middle"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-Line-Bottom"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-Indicator"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Press-Yellow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Yellow-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["Yellow-Line"].setColor(0.7333,0.3803,0);
|
||||
obj["Yellow-Line"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Yellow-Line-Top"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Yellow-Line-Middle"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Yellow-Line-Bottom"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Yellow-Indicator"].setColor(0.7333,0.3803,0);
|
||||
obj["Press-Yellow"].setColor(0.7333,0.3803,0);
|
||||
obj["Yellow-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("green", 25, func(val) {
|
||||
if (val >= 100) {
|
||||
obj["Press-Green"].setText(sprintf("%s", math.round(val, 50)));
|
||||
} else {
|
||||
obj["Press-Green"].setText(sprintf("%s", 0));
|
||||
}
|
||||
|
||||
if (val > 1450) {
|
||||
obj["Green-Line"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Green-Line"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Green-Line-Top"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Green-Line-Middle"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Green-Line-Bottom"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Green-Indicator"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Press-Green"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Green-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["Green-Line"].setColor(0.7333,0.3803,0);
|
||||
obj["Green-Line"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Green-Line-Top"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Green-Line-Middle"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Green-Line-Bottom"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Green-Indicator"].setColor(0.7333,0.3803,0);
|
||||
obj["Press-Green"].setColor(0.7333,0.3803,0);
|
||||
obj["Green-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N2_actual_1", 0.5, func(val) {
|
||||
if (val >= 59) {
|
||||
obj["Pump-Green-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["Pump-Green-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("N2_actual_2", 0.5, func(val) {
|
||||
if (val >= 59) {
|
||||
obj["Pump-Yellow-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["Pump-Yellow-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydBlueResvLoPrs", nil, func(val) {
|
||||
if (val) {
|
||||
obj["LO-AIR-PRESS-Blue"].show();
|
||||
} else {
|
||||
obj["LO-AIR-PRESS-Blue"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydGreenResvLoPrs", nil, func(val) {
|
||||
if (val) {
|
||||
obj["LO-AIR-PRESS-Green"].show();
|
||||
} else {
|
||||
obj["LO-AIR-PRESS-Green"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydYellowResvLoPrs", nil, func(val) {
|
||||
if (val) {
|
||||
obj["LO-AIR-PRESS-Yellow"].show();
|
||||
} else {
|
||||
obj["LO-AIR-PRESS-Yellow"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydYellowElecPumpOvht", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-OVHT-Yellow"].show();
|
||||
} else {
|
||||
obj["ELEC-OVHT-Yellow"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydBlueElecPumpOvht", nil, func(val) {
|
||||
if (val) {
|
||||
obj["ELEC-OVHT-Blue"].show();
|
||||
} else {
|
||||
obj["ELEC-OVHT-Blue"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydBlueResvOvht", nil, func(val) {
|
||||
if (val) {
|
||||
obj["OVHT-Blue"].show();
|
||||
} else {
|
||||
obj["OVHT-Blue"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydGreenResvOvht", nil, func(val) {
|
||||
if (val) {
|
||||
obj["OVHT-Green"].show();
|
||||
} else {
|
||||
obj["OVHT-Green"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydYellowResvOvht", nil, func(val) {
|
||||
if (val) {
|
||||
obj["OVHT-Yellow"].show();
|
||||
} else {
|
||||
obj["OVHT-Yellow"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydRATPosition", nil, func(val) {
|
||||
if (val) {
|
||||
obj["RAT-stowed"].hide();
|
||||
obj["RAT-not-stowed"].show();
|
||||
} else {
|
||||
obj["RAT-stowed"].show();
|
||||
obj["RAT-not-stowed"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydGreenFireValve", nil, func(val) {
|
||||
if (val != 0) {
|
||||
obj["Fire-Valve-Green"].setColor(0.7333,0.3803,0);
|
||||
obj["Fire-Valve-Green-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Fire-Valve-Green"].setRotation(90 * D2R);
|
||||
} else {
|
||||
obj["Fire-Valve-Green"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Fire-Valve-Green-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Fire-Valve-Green"].setRotation(0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydYellowFireValve", nil, func(val) {
|
||||
if (val != 0) {
|
||||
obj["Fire-Valve-Yellow"].setColor(0.7333,0.3803,0);
|
||||
obj["Fire-Valve-Yellow-Cross"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Fire-Valve-Yellow"].setRotation(90 * D2R);
|
||||
} else {
|
||||
obj["Fire-Valve-Yellow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Fire-Valve-Yellow-Cross"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Fire-Valve-Yellow"].setRotation(0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecAC1","dcEss"], 1, func(val) {
|
||||
if (val.elecAC1 >= 110 and val.dcEss >= 25) {
|
||||
obj["ELEC-Blue-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["ELEC-Blue-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["elecAC2","dc2"], 1, func(val) {
|
||||
if (val.elecAC2 >= 110 and val.dc2 >= 25) {
|
||||
obj["ELEC-Yellow-label"].setColor(0.8078,0.8039,0.8078);
|
||||
} else {
|
||||
obj["ELEC-Yellow-label"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["yellow","hydYellowElecPumpSwitch"], nil, func(val) {
|
||||
if (!val.hydYellowElecPumpSwitch) {
|
||||
obj["ELEC-Yellow-on"].hide();
|
||||
obj["ELEC-Yellow-off"].show();
|
||||
} else {
|
||||
obj["ELEC-Yellow-on"].show();
|
||||
obj["ELEC-Yellow-off"].hide();
|
||||
if (val.yellow > 1450) {
|
||||
obj["ELEC-Yellow-on"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["ELEC-Yellow-on"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["blue","hydBlueElecPumpSwitch"], nil, func(val) {
|
||||
if (val.hydBlueElecPumpSwitch) {
|
||||
obj["Pump-Blue-off"].hide();
|
||||
if (val.blue > 1450) {
|
||||
obj["Pump-Blue-on"].show();
|
||||
obj["Pump-LOPR-Blue"].hide();
|
||||
obj["Pump-Blue"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Pump-Blue"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Pump-Blue-on"].hide();
|
||||
obj["Pump-LOPR-Blue"].show();
|
||||
obj["Pump-Blue"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Pump-Blue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
obj["Pump-Blue-off"].show();
|
||||
obj["Pump-Blue-on"].hide();
|
||||
obj["Pump-LOPR-Blue"].hide();
|
||||
obj["Pump-Blue"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Pump-Blue"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["yellow","hydYellowEDPPumpSwitch"], nil, func(val) {
|
||||
if (val.hydYellowEDPPumpSwitch) {
|
||||
obj["Pump-Yellow-off"].hide();
|
||||
if (val.yellow > 1450) {
|
||||
obj["Pump-Yellow-on"].show();
|
||||
obj["Pump-LOPR-Yellow"].hide();
|
||||
obj["Pump-Yellow"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["Pump-Yellow"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Pump-Yellow-on"].hide();
|
||||
obj["Pump-LOPR-Yellow"].show();
|
||||
obj["Pump-Yellow"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Pump-Yellow"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
obj["Pump-Yellow-off"].show();
|
||||
obj["Pump-Yellow-on"].hide();
|
||||
obj["Pump-LOPR-Yellow"].hide();
|
||||
obj["Pump-Yellow"].setColorFill(0.7333,0.3803,0);
|
||||
obj["Pump-Yellow"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["green","hydGreenEDPPumpSwitch"], nil, func(val) {
|
||||
if (val.hydGreenEDPPumpSwitch) {
|
||||
obj["Pump-Green-off"].hide();
|
||||
if (val.green > 1450) {
|
||||
obj["Pump-Green-on"].show();
|
||||
obj["Pump-LOPR-Green"].hide();
|
||||
obj["Pump-Green"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Pump-Green"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Pump-Green-on"].hide();
|
||||
obj["Pump-LOPR-Green"].show();
|
||||
obj["Pump-Green"].setColor(0.7333,0.3803,0);
|
||||
obj["Pump-Green"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
} else {
|
||||
obj["Pump-Green-off"].show();
|
||||
obj["Pump-Green-on"].hide();
|
||||
obj["Pump-LOPR-Green"].hide();
|
||||
obj["Pump-Green"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["hydPTUSwitch","hydPTUDiff","hydPTUActive","hydPTUFault"], nil, func(val) {
|
||||
if (val.hydPTUSwitch and !val.hydPTUFault) {
|
||||
obj["PTU-connection"].setColor(0.0509,0.7529,0.2941);
|
||||
|
||||
if (val.hydPTUActive) {
|
||||
if (val.hydPTUDiff < 0) {
|
||||
obj["PTU-Supply-Line"].show();
|
||||
obj["PTU-supply-yellow"].show();
|
||||
obj["PTU-supply-green"].hide();
|
||||
obj["PTU-Auto-or-off"].hide();
|
||||
} else {
|
||||
obj["PTU-Supply-Line"].show();
|
||||
obj["PTU-supply-yellow"].hide();
|
||||
obj["PTU-supply-green"].show();
|
||||
obj["PTU-Auto-or-off"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["PTU-Auto-or-off"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PTU-Supply-Line"].hide();
|
||||
obj["PTU-supply-yellow"].hide();
|
||||
obj["PTU-supply-green"].hide();
|
||||
obj["PTU-Auto-or-off"].show();
|
||||
}
|
||||
} else {
|
||||
obj["PTU-connection"].setColor(0.7333,0.3803,0);
|
||||
obj["PTU-Auto-or-off"].setColor(0.7333,0.3803,0);
|
||||
obj["PTU-Supply-Line"].hide();
|
||||
obj["PTU-supply-yellow"].hide();
|
||||
obj["PTU-supply-green"].hide();
|
||||
obj["PTU-Auto-or-off"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydBlueQTY", 0.05, func(val) {
|
||||
obj["Quantity-Indicator-Blue"].setTranslation(0,((val / 8) * -140) + 140);
|
||||
if (val >= 2.4) {
|
||||
obj["Quantity-Indicator-Blue"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path5561-4"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Quantity-Indicator-Blue"].setColor(0.7333,0.3803,0);
|
||||
obj["path5561-4"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydGreenQTY", 0.05, func(val) {
|
||||
obj["Quantity-Indicator-Green"].setTranslation(0,((val / 18) * -140) + 140);
|
||||
if (val >= 3.5) {
|
||||
obj["Quantity-Indicator-Green"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path5561-5"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Quantity-Indicator-Green"].setColor(0.7333,0.3803,0);
|
||||
obj["path5561-5"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hydYellowQTY", 0.05, func(val) {
|
||||
obj["Quantity-Indicator-Yellow"].setTranslation(0,((val / 15) * -140) + 140);
|
||||
if (val >= 3.5) {
|
||||
obj["Quantity-Indicator-Yellow"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["path5561"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Quantity-Indicator-Yellow"].setColor(0.7333,0.3803,0);
|
||||
obj["path5561"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit","Green-Indicator","HYD-Quantity-Group-Blue","HYD-Quantity-Group-Yellow","HYD-Quantity-Group-Green","Blue-Indicator","Yellow-Indicator","Press-Green","Press-Blue","Press-Yellow","Green-Line","Blue-Line","Yellow-Line","Green-Line-Top","Blue-Line-Top","Yellow-Line-Middle","Green-Line-Middle","Yellow-Line-Bottom","Green-Line-Bottom","Blue-Line-Bottom","Yellow-Line-Top","PTU-Supply-Line","PTU-supply-yellow","PTU-supply-green","PTU-connection",
|
||||
"PTU-Auto-or-off","RAT-label","RAT-stowed","RAT-not-stowed","ELEC-Yellow-off","ELEC-Yellow-on","ELEC-Yellow-label","ELEC-OVTH-Yellow","ELEC-Blue-label","ELEC-OVHT-Blue","ELEC-OVHT-Yellow","Pump-Green-label","Pump-Yellow-label","Pump-Green",
|
||||
"Pump-LOPR-Green","Pump-Green-off","Pump-Green-on","Pump-Yellow","Pump-LOPR-Yellow","Pump-Yellow-off","Pump-Yellow-on","Pump-Blue","Pump-LOPR-Blue","Pump-Blue-off","Pump-Blue-on","Fire-Valve-Green","Fire-Valve-Yellow","LO-AIR-PRESS-Green",
|
||||
"LO-AIR-PRESS-Yellow","LO-AIR-PRESS-Blue","OVHT-Green","OVHT-Blue","OVHT-Yellow","Quantity-Indicator-Green","Quantity-Indicator-Blue","Quantity-Indicator-Yellow","Green-label","Blue-label","Yellow-label","Fire-Valve-Yellow-Cross","Fire-Valve-Green-Cross","path5561","path5561-4","path5561-5"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
hydBlueResvOvht: "/systems/hydraulic/blue-resv-ovht",
|
||||
hydGreenResvOvht: "/systems/hydraulic/green-resv-ovht",
|
||||
hydYellowResvOvht: "/systems/hydraulic/yellow-resv-ovht",
|
||||
hydBlueResvLoPrs: "/systems/hydraulic/blue-resv-lo-air-press",
|
||||
hydGreenResvLoPrs: "/systems/hydraulic/green-resv-lo-air-press",
|
||||
hydYellowResvLoPrs: "/systems/hydraulic/yellow-resv-lo-air-press",
|
||||
hydYellowElecPumpOvht: "/systems/hydraulic/elec-pump-yellow-ovht",
|
||||
hydBlueElecPumpOvht: "/systems/hydraulic/elec-pump-blue-ovht",
|
||||
hydRATPosition: "/systems/hydraulic/sources/rat/position",
|
||||
hydGreenFireValve: "/systems/hydraulic/sources/green-edp/fire-valve",
|
||||
hydYellowFireValve: "/systems/hydraulic/sources/yellow-edp/fire-valve",
|
||||
hydBlueElecPumpSwitch: "/controls/hydraulic/switches/blue-elec",
|
||||
hydGreenEDPPumpSwitch: "/controls/hydraulic/switches/green-edp",
|
||||
hydYellowElecPumpSwitch: "/controls/hydraulic/switches/yellow-elec",
|
||||
hydYellowEDPPumpSwitch: "/controls/hydraulic/switches/yellow-edp",
|
||||
hydPTUSwitch: "/controls/hydraulic/switches/ptu",
|
||||
hydPTUFault: "/systems/failures/hydraulic/ptu",
|
||||
hydPTUActive: "/systems/hydraulic/sources/ptu/ptu-hydraulic-condition",
|
||||
hydPTUDiff: "/systems/hydraulic/yellow-psi-diff",
|
||||
hydBlueQTY: "/systems/hydraulic/blue-qty",
|
||||
hydGreenQTY: "/systems/hydraulic/green-qty",
|
||||
hydYellowQTY: "/systems/hydraulic/yellow-qty",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
229
Models/Instruments/Lower-ECAM/Lower-ECAM-press.nas
Normal file
|
@ -0,0 +1,229 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPagePress =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPagePress,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["PRESS-Sys-2"].hide();
|
||||
obj["PRESS-Outlet-Transit-Failed"].hide();
|
||||
obj["PRESS-Inlet-Transit-Failed"].hide();
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashValue("pressDelta", 0.05, func(val) {
|
||||
if (val > 31.9) {
|
||||
obj["PRESS-deltaP"].setText(sprintf("%2.1f", 31.9));
|
||||
} else if (val < -9.9) {
|
||||
obj["PRESS-deltaP"].setText(sprintf("%2.1f", -9.9));
|
||||
} else {
|
||||
obj["PRESS-deltaP"].setText(sprintf("%2.1f", val));
|
||||
}
|
||||
|
||||
if (val < -0.4 or val > 8.5) {
|
||||
obj["PRESS-deltaP"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["PRESS-deltaP"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressVS", 25, func(val) {
|
||||
if (val > 9950) {
|
||||
obj["PRESS-Cab-VS"].setText(sprintf("%4.0f", 9950));
|
||||
} else if (val < -9950) {
|
||||
obj["PRESS-Cab-VS"].setText(sprintf("%4.0f", -9950));
|
||||
} else {
|
||||
obj["PRESS-Cab-VS"].setText(sprintf("%-4.0f", math.round(val,50)));
|
||||
}
|
||||
|
||||
if (abs(val) > 2000) {
|
||||
obj["PRESS-Cab-VS"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["PRESS-Cab-VS"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressAlt", 25, func(val) {
|
||||
if (val > 32750) {
|
||||
obj["PRESS-Cab-Alt"].setText(sprintf("%5.0f", 32750));
|
||||
} else if (val < -9950) {
|
||||
obj["PRESS-Cab-Alt"].setText(sprintf("%5.0f", -9950));
|
||||
} else {
|
||||
obj["PRESS-Cab-Alt"].setText(sprintf("%5.0f", math.round(val,50)));
|
||||
}
|
||||
|
||||
if (val > 9550) {
|
||||
obj["PRESS-Cab-Alt"].setColor(1,0,0);
|
||||
} else {
|
||||
obj["PRESS-Cab-Alt"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("pressAuto", nil, func(val) {
|
||||
if (val) {
|
||||
obj["PRESS-Man"].hide();
|
||||
obj["PRESS-Sys-1"].show();
|
||||
} else {
|
||||
obj["PRESS-Man"].show();
|
||||
obj["PRESS-Sys-1"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["flowCtlValve1","engine1State"], nil, func(val) {
|
||||
if (val.flowCtlValve1 == 0 and val.engine1State == 3) {
|
||||
obj["PRESS-Pack-1-Triangle"].setColor(0.7333,0.3803,0);
|
||||
obj["PRESS-Pack-1"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["PRESS-Pack-1-Triangle"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PRESS-Pack-1"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["flowCtlValve2","engine2State"], nil, func(val) {
|
||||
if (val.flowCtlValve2 == 0 and val.engine2State == 3) {
|
||||
obj["PRESS-Pack-2-Triangle"].setColor(0.7333,0.3803,0);
|
||||
obj["PRESS-Pack-2"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["PRESS-Pack-2-Triangle"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["PRESS-Pack-2"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["PRESS-Cab-VS", "PRESS-Cab-VS-neg", "PRESS-Cab-Alt", "PRESS-deltaP", "PRESS-LDG-Elev", "PRESS-deltaP-needle", "PRESS-VS-needle", "PRESS-Alt-needle",
|
||||
"PRESS-Man", "PRESS-Sys-1", "PRESS-Sys-2", "PRESS-Outlet-Transit-Failed", "PRESS-Inlet-Transit-Failed", "PRESS-LDG-Elev-mode","PRESS-Pack-1-Triangle","PRESS-Pack-2-Triangle",
|
||||
"PRESS-Pack-1","PRESS-Pack-2"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
pressAlt: "/systems/pressurization/cabinalt-norm",
|
||||
pressAuto: "/systems/pressurization/auto",
|
||||
pressDelta: "/systems/pressurization/deltap-norm",
|
||||
pressVS: "/systems/pressurization/vs-norm",
|
||||
|
||||
flowCtlValve1: "/systems/air-conditioning/valves/flow-control-valve-1",
|
||||
flowCtlValve2: "/systems/air-conditioning/valves/flow-control-valve-2",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
147
Models/Instruments/Lower-ECAM/Lower-ECAM-sts.nas
Normal file
|
@ -0,0 +1,147 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageSts =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageSts,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
|
||||
obj.update_items = [
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["Bulk","BulkLine","BulkLbl","Exit1L","Exit1R","Cabin1Left","Cabin1LeftLbl","Cabin1LeftLine","Cabin1LeftSlide","Cabin1Right","Cabin1RightLbl","Cabin1RightLine","Cabin1RightSlide","Cabin2Left","Cabin2LeftLbl",
|
||||
"Cabin2LeftLine","Cabin2LeftSlide","Cabin2Right","Cabin2RightLbl","Cabin2RightLine","Cabin2RightSlide","Cabin3Left","Cabin3LeftLbl","Cabin3LeftLine","Cabin3LeftSlide","Cabin3Right","Cabin3RightLbl","Cabin3RightLine","Cabin3RightSlide","AvionicsLine1",
|
||||
"AvionicsLbl1","AvionicsLine2","AvionicsLbl2","Cargo1Line","Cargo1Lbl","Cargo1Door","Cargo2Line","Cargo2Lbl","Cargo2Door","ExitLSlide","ExitLLine","ExitLLbl","ExitRSlide","ExitRLine","ExitRLbl","Cabin4Left","Cabin4LeftLbl","Cabin4LeftLine",
|
||||
"Cabin4LeftSlide","Cabin4Right","Cabin4RightLbl","Cabin4RightLine","Cabin4RightSlide","DOOROXY-REGUL-LO-PR"];},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
745
Models/Instruments/Lower-ECAM/Lower-ECAM-wheel.nas
Normal file
|
@ -0,0 +1,745 @@
|
|||
# A3XX Lower ECAM Canvas
|
||||
# Copyright (c) 2021 Josh Davidson (Octal450) and Jonathan Redpath
|
||||
|
||||
var canvas_lowerECAMPageWheel =
|
||||
{
|
||||
new: func(svg,name) {
|
||||
var obj = {parents: [canvas_lowerECAMPageWheel,canvas_lowerECAM_base] };
|
||||
obj.group = obj.canvas.createGroup();
|
||||
obj.name = name;
|
||||
|
||||
canvas.parsesvg(obj.group, svg, {"font-mapper": obj.font_mapper} );
|
||||
|
||||
foreach(var key; obj.getKeys()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
foreach(var key; obj.getKeysBottom()) {
|
||||
obj[key] = obj.group.getElementById(key);
|
||||
};
|
||||
|
||||
obj.units = acconfig_weight_kgs.getValue();
|
||||
|
||||
# init
|
||||
obj["leftuplock"].hide();
|
||||
obj["noseuplock"].hide();
|
||||
obj["rightuplock"].hide();
|
||||
obj["tirepress1"].hide();
|
||||
obj["tirepress2"].hide();
|
||||
obj["tirepress3"].hide();
|
||||
obj["tirepress4"].hide();
|
||||
obj["tirepress5"].hide();
|
||||
obj["tirepress6"].hide();
|
||||
|
||||
|
||||
obj.update_items = [
|
||||
props.UpdateManager.FromHashList(["gearPosNorm","gearPosNorm1","gearPosNorm2","gearLever"], nil, func(val) {
|
||||
if (val.gearLever and (val.gearPosNorm != 1 or val.gearPosNorm1 != 1 or val.gearPosNorm2 != 1)) {
|
||||
obj["lgctltext"].show();
|
||||
} elsif (!val.gearLever and (val.gearPosNorm != 0 or val.gearPosNorm1 != 0 or val.gearPosNorm2 != 0)) {
|
||||
obj["lgctltext"].show();
|
||||
} else {
|
||||
obj["lgctltext"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gearPosNorm", nil, func(val) {
|
||||
if (val < 0.2) {
|
||||
obj["Triangle-Nose1"].hide();
|
||||
obj["Triangle-Nose2"].hide();
|
||||
} else {
|
||||
obj["Triangle-Nose1"].show();
|
||||
obj["Triangle-Nose2"].show();
|
||||
}
|
||||
|
||||
if (val == 1) {
|
||||
obj["Triangle-Nose1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Triangle-Nose2"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Triangle-Nose1"].setColor(1,0,0);
|
||||
obj["Triangle-Nose2"].setColor(1,0,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gearPosNorm1", nil, func(val) {
|
||||
if (val < 0.2) {
|
||||
obj["Triangle-Left1"].hide();
|
||||
obj["Triangle-Left2"].hide();
|
||||
} else {
|
||||
obj["Triangle-Left1"].show();
|
||||
obj["Triangle-Left2"].show();
|
||||
}
|
||||
|
||||
if (val == 1) {
|
||||
obj["Triangle-Left1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Triangle-Left2"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Triangle-Left1"].setColor(1,0,0);
|
||||
obj["Triangle-Left2"].setColor(1,0,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gearPosNorm2", nil, func(val) {
|
||||
if (val < 0.2) {
|
||||
obj["Triangle-Right1"].hide();
|
||||
obj["Triangle-Right2"].hide();
|
||||
} else {
|
||||
obj["Triangle-Right1"].show();
|
||||
obj["Triangle-Right2"].show();
|
||||
}
|
||||
|
||||
if (val == 1) {
|
||||
obj["Triangle-Right1"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["Triangle-Right2"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["Triangle-Right1"].setColor(1,0,0);
|
||||
obj["Triangle-Right2"].setColor(1,0,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["yellow","green","NWSSwitch","brakesMode","val.accumPressPsiPressPsi","leftBrakeFCS","rightBrakeFCS"], nil, func(val) {
|
||||
if (val.NWSSwitch and val.yellow >= 1500) {
|
||||
obj["NWStext"].hide();
|
||||
obj["NWS"].hide();
|
||||
obj["NWSrect"].hide();
|
||||
} else if (!val.NWSSwitch and val.yellow >= 1500) {
|
||||
obj["NWStext"].show();
|
||||
obj["NWS"].show();
|
||||
obj["NWS"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["NWSrect"].show();
|
||||
} else {
|
||||
obj["NWStext"].show();
|
||||
obj["NWS"].show();
|
||||
obj["NWS"].setColor(0.7333,0.3803,0);
|
||||
obj["NWSrect"].show();
|
||||
}
|
||||
|
||||
if ((val.yellow < 1500 and val.brakesMode == 1) or !val.NWSSwitch) {
|
||||
obj["antiskidtext"].show();
|
||||
obj["antiskidtext"].setColor(0.7333,0.3803,0);
|
||||
obj["BSCUrect1"].show();
|
||||
obj["BSCUrect2"].show();
|
||||
obj["BSCU1"].show();
|
||||
obj["BSCU2"].show();
|
||||
} else {
|
||||
obj["antiskidtext"].hide();
|
||||
obj["BSCUrect1"].hide();
|
||||
obj["BSCUrect2"].hide();
|
||||
obj["BSCU1"].hide();
|
||||
obj["BSCU2"].hide();
|
||||
}
|
||||
|
||||
if (val.green >= 1500) {
|
||||
obj["normbrkhyd"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["normbrkhyd"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (val.yellow >= 1500) {
|
||||
obj["altnbrkhyd"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["altnbrkhyd"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (!val.NWSSwitch or val.green < 1500) {
|
||||
obj["NORMbrk"].show();
|
||||
obj["normbrk-rect"].show();
|
||||
obj["normbrkhyd"].show();
|
||||
} else {
|
||||
obj["NORMbrk"].hide();
|
||||
obj["normbrk-rect"].hide();
|
||||
obj["normbrkhyd"].hide();
|
||||
}
|
||||
|
||||
if (val.brakesMode != 2 or val.green < 1500 or val.yellow < 1500 or !val.NWSSwitch) {
|
||||
obj["ALTNbrk"].hide();
|
||||
obj["altnbrk-rect"].hide();
|
||||
obj["altnbrkhyd"].hide();
|
||||
} else {
|
||||
obj["ALTNbrk"].show();
|
||||
obj["altnbrk-rect"].show();
|
||||
obj["altnbrkhyd"].show();
|
||||
if (val.yellow < 1500 and val.accumPressPsi < 1500) {
|
||||
obj["ALTNbrk"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["ALTNbrk"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}
|
||||
|
||||
if (val.brakesMode == 2 and val.accumPressPsi < 200 and val.yellow < 1500) {
|
||||
obj["accuonlyarrow"].hide();
|
||||
obj["accuonly"].hide();
|
||||
obj["accupress_text"].show();
|
||||
obj["brakearrow"].hide();
|
||||
obj["accupress_text"].setColor(0.7333,0.3803,0);
|
||||
} else if (val.brakesMode == 2 and val.NWSSwitch and val.accumPressPsi > 200 and val.yellow >= 1500){
|
||||
obj["accuonlyarrow"].hide();
|
||||
obj["accuonly"].hide();
|
||||
obj["accupress_text"].show();
|
||||
obj["brakearrow"].show();
|
||||
obj["accupress_text"].setColor(0.0509,0.7529,0.2941);
|
||||
} else if (val.brakesMode == 2 and val.accumPressPsi > 200 and val.yellow < 1500) {
|
||||
obj["accuonlyarrow"].show();
|
||||
obj["accuonly"].show();
|
||||
obj["brakearrow"].hide();
|
||||
obj["accupress_text"].hide();
|
||||
} else {
|
||||
obj["accuonlyarrow"].hide();
|
||||
obj["accuonly"].hide();
|
||||
obj["brakearrow"].hide();
|
||||
obj["accupress_text"].hide();
|
||||
}
|
||||
|
||||
if (val.brakesMode == 1) {
|
||||
obj["releaseL1"].hide();
|
||||
obj["releaseL2"].hide();
|
||||
obj["releaseL3"].hide();
|
||||
obj["releaseL4"].hide();
|
||||
obj["releaseR1"].hide();
|
||||
obj["releaseR2"].hide();
|
||||
obj["releaseR3"].hide();
|
||||
obj["releaseR4"].hide();
|
||||
} else { # Display if the brakes are released and in alternate braking
|
||||
if (val.leftBrakeFCS == 0) {
|
||||
obj["releaseL1"].show();
|
||||
obj["releaseL2"].show();
|
||||
obj["releaseL3"].show();
|
||||
obj["releaseL4"].show();
|
||||
} else {
|
||||
obj["releaseL1"].hide();
|
||||
obj["releaseL2"].hide();
|
||||
obj["releaseL3"].hide();
|
||||
obj["releaseL4"].hide();
|
||||
}
|
||||
|
||||
if (val.rightBrakeFCS == 0) {
|
||||
obj["releaseR1"].show();
|
||||
obj["releaseR2"].show();
|
||||
obj["releaseR3"].show();
|
||||
obj["releaseR4"].show();
|
||||
} else {
|
||||
obj["releaseR1"].hide();
|
||||
obj["releaseR2"].hide();
|
||||
obj["releaseR3"].hide();
|
||||
obj["releaseR4"].hide();
|
||||
}
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["brakeAutobrkMode","NWSSwitch"], nil, func(val) {
|
||||
if (val.brakeAutobrkMode == 0) {
|
||||
obj["autobrkind"].hide();
|
||||
} elsif (val.brakeAutobrkMode == 1) {
|
||||
obj["autobrkind"].show();
|
||||
obj["autobrkind"].setText(sprintf("%s", "LO"));
|
||||
} elsif (val.brakeAutobrkMode == 2) {
|
||||
obj["autobrkind"].show();
|
||||
obj["autobrkind"].setText(sprintf("%s", "MED"));
|
||||
} elsif (val.brakeAutobrkMode == 3) {
|
||||
obj["autobrkind"].show();
|
||||
obj["autobrkind"].setText(sprintf("%s", "MAX"));
|
||||
}
|
||||
|
||||
if (val.brakeAutobrkMode != 0 or !val.NWSSwitch) {
|
||||
obj["autobrk"].show();
|
||||
} else {
|
||||
obj["autobrk"].hide();
|
||||
}
|
||||
|
||||
if (!val.NWSSwitch) {
|
||||
obj["autobrk"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
obj["autobrk"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("brakeLeft1", 0.5, func(val) {
|
||||
obj["braketemp1"].setText(sprintf("%s", math.round(val, 5)));
|
||||
|
||||
if (val > 300) {
|
||||
obj["braketemp1"].setColor(0.7333,0.3803,0);
|
||||
obj["toparc1"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
if (val > 100 and val <= 300) {
|
||||
obj["toparc1"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["toparc1"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
obj["braketemp1"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("brakeLeft2", 0.5, func(val) {
|
||||
obj["braketemp2"].setText(sprintf("%s", math.round(val, 5)));
|
||||
|
||||
if (val > 300) {
|
||||
obj["braketemp2"].setColor(0.7333,0.3803,0);
|
||||
obj["toparc2"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
if (val > 100 and val <= 300) {
|
||||
obj["toparc2"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["toparc2"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
obj["braketemp2"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("brakeRight1", 0.5, func(val) {
|
||||
obj["braketemp3"].setText(sprintf("%s", math.round(val, 5)));
|
||||
|
||||
if (val > 300) {
|
||||
obj["braketemp3"].setColor(0.7333,0.3803,0);
|
||||
obj["toparc3"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
if (val > 100 and val <= 300) {
|
||||
obj["toparc3"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["toparc3"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
obj["braketemp3"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("brakeRight2", 0.5, func(val) {
|
||||
obj["braketemp4"].setText(sprintf("%s", math.round(val, 5)));
|
||||
|
||||
if (val > 300) {
|
||||
obj["braketemp4"].setColor(0.7333,0.3803,0);
|
||||
obj["toparc4"].setColor(0.7333,0.3803,0);
|
||||
} else {
|
||||
if (val > 100 and val <= 300) {
|
||||
obj["toparc4"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["toparc4"].setColor(0.8078,0.8039,0.8078);
|
||||
}
|
||||
obj["braketemp4"].setColor(0.0509,0.7529,0.2941);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelLeftDoor", 0.5, func(val) {
|
||||
obj["leftdoor"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelNoseLeftDoor", 0.5, func(val) {
|
||||
obj["nosegeardoorL"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelNoseRightDoor", 0.5, func(val) {
|
||||
obj["nosegeardoorR"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelRightDoor", 0.5, func(val) {
|
||||
obj["rightdoor"].setRotation(val * D2R);
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelLeftDoorPos", 0.01, func(val) {
|
||||
if (val == 0) {
|
||||
obj["leftdoor"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["leftdoor"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelNoseDoorPos", 0.01, func(val) {
|
||||
if (val == 0) {
|
||||
obj["nosegeardoorL"].setColorFill(0.0509,0.7529,0.2941);
|
||||
obj["nosegeardoorR"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["nosegeardoorL"].setColorFill(0.7333,0.3803,0);
|
||||
obj["nosegeardoorR"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("wheelRightDoorPos", 0.01, func(val) {
|
||||
if (val == 0) {
|
||||
obj["rightdoor"].setColorFill(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
obj["rightdoor"].setColorFill(0.7333,0.3803,0);
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL1", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler1Lex"].hide();
|
||||
obj["spoiler1Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler1Lrt"].hide();
|
||||
obj["spoiler1Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL2", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler2Lex"].hide();
|
||||
obj["spoiler2Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler2Lrt"].hide();
|
||||
obj["spoiler2Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL3", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler3Lex"].hide();
|
||||
obj["spoiler3Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler3Lrt"].hide();
|
||||
obj["spoiler3Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL4", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler4Lex"].hide();
|
||||
obj["spoiler4Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler4Lrt"].hide();
|
||||
obj["spoiler4Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerL5", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler5Lex"].hide();
|
||||
obj["spoiler5Lrt"].show();
|
||||
} else {
|
||||
obj["spoiler5Lrt"].hide();
|
||||
obj["spoiler5Lex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR1", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler1Rex"].hide();
|
||||
obj["spoiler1Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler1Rrt"].hide();
|
||||
obj["spoiler1Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR2", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler2Rex"].hide();
|
||||
obj["spoiler2Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler2Rrt"].hide();
|
||||
obj["spoiler2Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR3", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler3Rex"].hide();
|
||||
obj["spoiler3Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler3Rrt"].hide();
|
||||
obj["spoiler3Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR4", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler4Rex"].hide();
|
||||
obj["spoiler4Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler4Rrt"].hide();
|
||||
obj["spoiler4Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("spoilerR5", 0.5, func(val) {
|
||||
if (val < 1.5) {
|
||||
obj["spoiler5Rex"].hide();
|
||||
obj["spoiler5Rrt"].show();
|
||||
} else {
|
||||
obj["spoiler5Rrt"].hide();
|
||||
obj["spoiler5Rex"].show();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL1Failure","spoilerL1","green"], nil, func(val) {
|
||||
if (val.spoilerL1Failure or val.green < 1500) {
|
||||
obj["spoiler1Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler1Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL1 < 1.5) {
|
||||
obj["spoiler1Lf"].show();
|
||||
} else {
|
||||
obj["spoiler1Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler1Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL2Failure","spoilerL2","yellow"], nil, func(val) {
|
||||
if (val.spoilerL2Failure or val.yellow < 1500) {
|
||||
obj["spoiler2Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler2Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL2 < 1.5) {
|
||||
obj["spoiler2Lf"].show();
|
||||
} else {
|
||||
obj["spoiler2Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler2Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL3Failure","spoilerL3","blue"], nil, func(val) {
|
||||
if (val.spoilerL3Failure or val.blue < 1500) {
|
||||
obj["spoiler3Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler3Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL3 < 1.5) {
|
||||
obj["spoiler3Lf"].show();
|
||||
} else {
|
||||
obj["spoiler3Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler3Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL4Failure","spoilerL4","yellow"], nil, func(val) {
|
||||
if (val.spoilerL4Failure or val.yellow < 1500) {
|
||||
obj["spoiler4Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler4Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL4 < 1.5) {
|
||||
obj["spoiler4Lf"].show();
|
||||
} else {
|
||||
obj["spoiler4Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler4Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerL5Failure","spoilerL5","green"], nil, func(val) {
|
||||
if (val.spoilerL5Failure or val.green < 1500) {
|
||||
obj["spoiler5Lex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler5Lrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerL5 < 1.5) {
|
||||
obj["spoiler5Lf"].show();
|
||||
} else {
|
||||
obj["spoiler5Lf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler5Lex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Lrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Lf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR1Failure","spoilerR1","green"], nil, func(val) {
|
||||
if (val.spoilerR1Failure or val.green < 1500) {
|
||||
obj["spoiler1Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler1Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR1 < 1.5) {
|
||||
obj["spoiler1Rf"].show();
|
||||
} else {
|
||||
obj["spoiler1Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler1Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler1Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR2Failure","spoilerR2","yellow"], nil, func(val) {
|
||||
if (val.spoilerR2Failure or val.yellow < 1500) {
|
||||
obj["spoiler2Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler2Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR2 < 1.5) {
|
||||
obj["spoiler2Rf"].show();
|
||||
} else {
|
||||
obj["spoiler2Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler2Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler2Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR3Failure","spoilerR3","blue"], nil, func(val) {
|
||||
if (val.spoilerR3Failure or val.blue < 1500) {
|
||||
obj["spoiler3Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler3Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR3 < 1.5) {
|
||||
obj["spoiler3Rf"].show();
|
||||
} else {
|
||||
obj["spoiler3Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler3Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler3Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR4Failure","spoilerR4","yellow"], nil, func(val) {
|
||||
if (val.spoilerR4Failure or val.yellow < 1500) {
|
||||
obj["spoiler4Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler4Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR4 < 1.5) {
|
||||
obj["spoiler4Rf"].show();
|
||||
} else {
|
||||
obj["spoiler4Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler4Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler4Rf"].hide();
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashList(["spoilerR5Failure","spoilerR5","green"], nil, func(val) {
|
||||
if (val.spoilerR5Failure or val.green < 1500) {
|
||||
obj["spoiler5Rex"].setColor(0.7333,0.3803,0);
|
||||
obj["spoiler5Rrt"].setColor(0.7333,0.3803,0);
|
||||
if (val.spoilerR5 < 1.5) {
|
||||
obj["spoiler5Rf"].show();
|
||||
} else {
|
||||
obj["spoiler5Rf"].hide();
|
||||
}
|
||||
} else {
|
||||
obj["spoiler5Rex"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Rrt"].setColor(0.0509,0.7529,0.2941);
|
||||
obj["spoiler5Rf"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
|
||||
obj.displayedGForce = 0;
|
||||
obj.updateItemsBottom = [
|
||||
props.UpdateManager.FromHashValue("acconfigUnits", nil, func(val) {
|
||||
obj.units = val;
|
||||
if (val) {
|
||||
obj["GW-weight-unit"].setText("KG");
|
||||
} else {
|
||||
obj["GW-weight-unit"].setText("LBS");
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("hour", nil, func(val) {
|
||||
obj["UTCh"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("minute", nil, func(val) {
|
||||
obj["UTCm"].setText(sprintf("%02d", val));
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForce", 0.05, func(val) {
|
||||
if (obj.displayedGForce) {
|
||||
obj["GLoad"].setText("G.LOAD " ~ sprintf("%3.1f", val));
|
||||
}
|
||||
}),
|
||||
props.UpdateManager.FromHashValue("gForceDisplay", nil, func(val) {
|
||||
if ((val == 1 and !obj.displayedGForce) or (val != 0 and obj.displayedGForce)) {
|
||||
obj.displayedGForce = 1;
|
||||
obj["GLoad"].show();
|
||||
} else {
|
||||
obj.displayedGForce = 0;
|
||||
obj["GLoad"].hide();
|
||||
}
|
||||
}),
|
||||
];
|
||||
return obj;
|
||||
},
|
||||
getKeysBottom: func() {
|
||||
return ["TAT","SAT","GW","UTCh","UTCm","GLoad","GW-weight-unit"];
|
||||
},
|
||||
getKeys: func() {
|
||||
return["lgctltext","NORMbrk","NWStext","leftdoor","rightdoor","nosegeardoorL","nosegeardoorR",
|
||||
"autobrk","autobrkind","NWS","NWSrect","normbrk-rect","altnbrk","normbrkhyd","spoiler1Rex","spoiler1Rrt","spoiler2Rex","spoiler2Rrt","spoiler3Rex",
|
||||
"spoiler3Rrt","spoiler4Rex","spoiler4Rrt","spoiler5Rex","spoiler5Rrt","spoiler1Lex","spoiler1Lrt","spoiler2Lex","spoiler2Lrt",
|
||||
"spoiler3Lex","spoiler3Lrt","spoiler4Lex","spoiler4Lrt","spoiler5Lex","spoiler5Lrt","spoiler1Rf","spoiler2Rf","spoiler3Rf","spoiler4Rf","spoiler5Rf",
|
||||
"spoiler1Lf","spoiler2Lf","spoiler3Lf","spoiler4Lf","spoiler5Lf","ALTNbrk","altnbrkhyd","altnbrk-rect","antiskidtext","brakearrow","accupress_text",
|
||||
"accuonlyarrow","accuonly","braketemp1","normbrkhyd","braketemp2","braketemp3","braketemp4","toparc1","toparc2","toparc3","toparc4","leftuplock",
|
||||
"noseuplock","rightuplock","Triangle-Left1","Triangle-Left2","Triangle-Nose1","Triangle-Nose2","Triangle-Right1","Triangle-Right2","BSCUrect1",
|
||||
"BSCUrect2","BSCU1","BSCU2","tirepress1","tirepress2","tirepress3","tirepress4","tirepress5","tirepress6","releaseL1","releaseL2","releaseR1","releaseR2",
|
||||
"releaseL3","releaseL4","releaseR3","releaseR4"];
|
||||
},
|
||||
updateBottom: func(notification) {
|
||||
foreach(var update_item_bottom; me.updateItemsBottom)
|
||||
{
|
||||
update_item_bottom.update(notification);
|
||||
}
|
||||
|
||||
if (fmgc.FMGCInternal.fuelRequest and fmgc.FMGCInternal.blockConfirmed and !fmgc.FMGCInternal.fuelCalculating and notification.FWCPhase != 1) {
|
||||
if (me.units) {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000 * LBS2KGS, 100)));
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", math.round(fmgc.FMGCInternal.fuelPredGw * 1000, 100)));
|
||||
}
|
||||
me["GW"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["GW"].setText(sprintf("%s", "-----"));
|
||||
me["GW"].setColor(0.0901,0.6039,0.7176);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[4] != nil) {
|
||||
me["SAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[4].getValue()));
|
||||
me["SAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["SAT"].setText(sprintf("%s", "XX"));
|
||||
me["SAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
|
||||
if (dmc.DMController.DMCs[1].outputs[5] != nil) {
|
||||
me["TAT"].setText(sprintf("%+2.0f", dmc.DMController.DMCs[1].outputs[5].getValue()));
|
||||
me["TAT"].setColor(0.0509,0.7529,0.2941);
|
||||
} else {
|
||||
me["TAT"].setText(sprintf("%s", "XX"));
|
||||
me["TAT"].setColor(0.7333,0.3803,0);
|
||||
}
|
||||
},
|
||||
update: func(notification) {
|
||||
me.updatePower();
|
||||
|
||||
if (me.test.getVisible() == 1) {
|
||||
me.updateTest(notification);
|
||||
}
|
||||
|
||||
if (me.group.getVisible() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
foreach(var update_item; me.update_items)
|
||||
{
|
||||
update_item.update(notification);
|
||||
}
|
||||
|
||||
me.updateBottom(notification);
|
||||
},
|
||||
updatePower: func() {
|
||||
if (me.name == ecam.SystemDisplayController.displayedPage.name) {
|
||||
if (du4_lgt.getValue() > 0.01 and systems.ELEC.Bus.ac2.getValue() >= 110) {
|
||||
if (du4_test_time.getValue() + du4_test_amount.getValue() >= pts.Sim.Time.elapsedSec.getValue()) {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(1);
|
||||
} else {
|
||||
me.group.setVisible(1);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
me.test.setVisible(0);
|
||||
}
|
||||
} else {
|
||||
me.group.setVisible(0);
|
||||
# don't hide the test group; just let whichever page is active control it
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
var input = {
|
||||
brakeAutobrkMode: "/controls/autobrake/mode",
|
||||
brakeLeft1: "/gear/gear[1]/L1brake-temp-degc",
|
||||
brakeLeft2: "/gear/gear[1]/L2brake-temp-degc",
|
||||
brakeRight1: "/gear/gear[2]/R3brake-temp-degc",
|
||||
brakeRight2: "/gear/gear[2]/R4brake-temp-degc",
|
||||
wheelLeftDoor: "/ECAM/Lower/door-left",
|
||||
wheelNoseLeftDoor: "/ECAM/Lower/door-nose-left",
|
||||
wheelNoseRightDoor: "/ECAM/Lower/door-nose-right",
|
||||
wheelRightDoor: "/ECAM/Lower/door-right",
|
||||
wheelLeftDoorPos: "/systems/hydraulic/gear/door-left",
|
||||
wheelNoseDoorPos: "/systems/hydraulic/gear/door-nose",
|
||||
wheelRightDoorPos: "/systems/hydraulic/gear/door-right",
|
||||
|
||||
spoilerL1: "/fdm/jsbsim/hydraulics/spoiler-l1/final-deg",
|
||||
spoilerL2: "/fdm/jsbsim/hydraulics/spoiler-l2/final-deg",
|
||||
spoilerL3: "/fdm/jsbsim/hydraulics/spoiler-l3/final-deg",
|
||||
spoilerL4: "/fdm/jsbsim/hydraulics/spoiler-l4/final-deg",
|
||||
spoilerL5: "/fdm/jsbsim/hydraulics/spoiler-l5/final-deg",
|
||||
spoilerR1: "/fdm/jsbsim/hydraulics/spoiler-r1/final-deg",
|
||||
spoilerR2: "/fdm/jsbsim/hydraulics/spoiler-r2/final-deg",
|
||||
spoilerR3: "/fdm/jsbsim/hydraulics/spoiler-r3/final-deg",
|
||||
spoilerR4: "/fdm/jsbsim/hydraulics/spoiler-r4/final-deg",
|
||||
spoilerR5: "/fdm/jsbsim/hydraulics/spoiler-r5/final-deg",
|
||||
spoilerL1Failure: "/systems/failures/spoilers/spoiler-l1",
|
||||
spoilerL2Failure: "/systems/failures/spoilers/spoiler-l2",
|
||||
spoilerL3Failure: "/systems/failures/spoilers/spoiler-l3",
|
||||
spoilerL4Failure: "/systems/failures/spoilers/spoiler-l4",
|
||||
spoilerL5Failure: "/systems/failures/spoilers/spoiler-l5",
|
||||
spoilerR1Failure: "/systems/failures/spoilers/spoiler-r1",
|
||||
spoilerR2Failure: "/systems/failures/spoilers/spoiler-r2",
|
||||
spoilerR3Failure: "/systems/failures/spoilers/spoiler-r3",
|
||||
spoilerR4Failure: "/systems/failures/spoilers/spoiler-r4",
|
||||
spoilerR5Failure: "/systems/failures/spoilers/spoiler-r5",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
emesary.GlobalTransmitter.NotifyAll(notifications.FrameNotificationAddProperty.new("A320 System Display", name, input[name]));
|
||||
}
|
|
@ -42,8 +42,8 @@
|
|||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.76543687"
|
||||
inkscape:cx="663.42185"
|
||||
inkscape:cy="457.30228"
|
||||
inkscape:cx="1295.1967"
|
||||
inkscape:cy="1096.0742"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -569,8 +569,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="APUBleedValveCrossBar"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2" />
|
||||
</g>
|
||||
<g
|
||||
id="APUBleedOnline"
|
||||
|
@ -774,4 +775,17 @@
|
|||
y="803.22437"
|
||||
style="font-size:48px;line-height:1.25;fill:#bb6100;fill-opacity:1;stroke-width:1px"
|
||||
id="tspan953">LEVEL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.99996376px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:-1.59999526px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:4.02421808px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="202.75914"
|
||||
y="240.23238"
|
||||
id="APUGenOff"
|
||||
inkscape:label="#text5149"
|
||||
transform="scale(0.96120251,1.0403635)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4735"
|
||||
x="201.95914"
|
||||
y="240.23238"
|
||||
style="font-size:35.999897px;line-height:0;text-align:center;letter-spacing:-1.59999526px;text-anchor:middle;stroke-width:4.02421808px">OFF</tspan></text>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 40 KiB |
|
@ -42,8 +42,8 @@
|
|||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.73868665"
|
||||
inkscape:cx="272.22904"
|
||||
inkscape:cy="280.96379"
|
||||
inkscape:cx="201.82373"
|
||||
inkscape:cy="930.76571"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -67,8 +67,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-XFEED-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
@ -189,8 +190,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-7"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-ENG-1-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-7" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.35079527;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -231,8 +233,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-Ram-Air-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1.99221587;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -389,8 +392,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3-6-9"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-Pack-1-Flow-Valve-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3-6-9" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.32549167;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -421,8 +425,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3-6-9-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-Pack-2-Flow-Valve-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3-6-9-2" />
|
||||
</g>
|
||||
<g
|
||||
id="BLEED-Pack1"
|
||||
|
@ -867,8 +872,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-7-7"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="BLEED-ENG-2-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-7-7" />
|
||||
</g>
|
||||
<g
|
||||
id="BLEED-HP-Valve-2"
|
||||
|
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
@ -41,9 +41,9 @@
|
|||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="false"
|
||||
inkscape:zoom="163.84"
|
||||
inkscape:cx="931.44175"
|
||||
inkscape:cy="894.81836"
|
||||
inkscape:zoom="0.64"
|
||||
inkscape:cx="695.07573"
|
||||
inkscape:cy="944.3933"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -116,8 +116,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="CONDHotAirValveCross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
@ -12,7 +12,7 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.92.1 r15371"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="crz.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
|
@ -37,16 +37,16 @@
|
|||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1047"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.5"
|
||||
inkscape:cx="703.8872"
|
||||
inkscape:cy="827.31856"
|
||||
inkscape:window-x="3840"
|
||||
inkscape:window-y="33"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="470.5927"
|
||||
inkscape:cy="1012.5262"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2"
|
||||
inkscape:snap-nodes="false"
|
||||
inkscape:snap-global="false"
|
||||
|
@ -298,13 +298,13 @@
|
|||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="555.73187"
|
||||
x="543.46399"
|
||||
y="220.23506"
|
||||
id="FUsed"
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4506"
|
||||
x="555.73187"
|
||||
x="543.46399"
|
||||
y="220.23506"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b">400</tspan></text>
|
||||
<text
|
||||
|
@ -337,14 +337,14 @@
|
|||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:-1.60000002px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:4.02423px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="399.71744"
|
||||
y="631.84998"
|
||||
y="628.96643"
|
||||
id="ELEC-IDG-2-num-label"
|
||||
inkscape:label="#text5149"
|
||||
transform="scale(0.96119963,1.0403666)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3714"
|
||||
x="398.91745"
|
||||
y="631.84998"
|
||||
y="628.96643"
|
||||
style="font-size:36px;line-height:0;text-align:center;letter-spacing:-1.60000002px;text-anchor:middle">P</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
@ -414,7 +414,7 @@
|
|||
d="m 776.33019,117.10687 12.494,-21.584521 12.44575,21.612381 z"
|
||||
inkscape:transform-center-x="0.023774226"
|
||||
inkscape:transform-center-y="-3.0226495"
|
||||
transform="matrix(-0.55570012,0,0,0.85384443,799.83103,554.6097)" />
|
||||
transform="matrix(-0.55570012,0,0,0.85384443,799.83103,551.6097)" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
|
@ -543,7 +543,7 @@
|
|||
d="M 642.63812,444.15624 H 601.42434"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:2.68409395;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
id="text3907-0"
|
||||
id="OilUnit"
|
||||
y="298.28555"
|
||||
x="549.48846"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
@ -572,13 +572,13 @@
|
|||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:-1.60000002px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:4.02423px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="568.92786"
|
||||
y="396.86365"
|
||||
y="398.48981"
|
||||
id="text3891-3-0"
|
||||
inkscape:label="#text5149"
|
||||
transform="scale(0.96119964,1.0403666)"><tspan
|
||||
sodipodi:role="line"
|
||||
x="568.12787"
|
||||
y="396.86365"
|
||||
y="398.48981"
|
||||
style="font-size:36.00000381px;line-height:0;text-align:center;letter-spacing:-1.60000002px;text-anchor:middle;stroke-width:4.02423px"
|
||||
id="tspan4870-6-6">N1</tspan></text>
|
||||
<text
|
||||
|
@ -629,7 +629,7 @@
|
|||
y="416.89258"
|
||||
x="340.44434"
|
||||
id="tspan3905-8-0"
|
||||
sodipodi:role="line">0.0</tspan></text>
|
||||
sodipodi:role="line">0.2</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="VIB2N1"
|
||||
|
@ -641,7 +641,7 @@
|
|||
y="419.89258"
|
||||
x="745.04004"
|
||||
id="tspan3905-8-0-3"
|
||||
sodipodi:role="line">0.0</tspan></text>
|
||||
sodipodi:role="line">0.3</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="VIB1N2"
|
||||
|
@ -653,7 +653,7 @@
|
|||
y="464.89258"
|
||||
x="340.04004"
|
||||
id="tspan3905-8-0-5"
|
||||
sodipodi:role="line">0.0</tspan></text>
|
||||
sodipodi:role="line">0.1</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="VIB2N2"
|
||||
|
@ -665,7 +665,7 @@
|
|||
y="460.39258"
|
||||
x="742.04004"
|
||||
id="tspan3905-8-0-5-2"
|
||||
sodipodi:role="line">0.0</tspan></text>
|
||||
sodipodi:role="line">0.2</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="CABALT"
|
||||
|
@ -707,15 +707,15 @@
|
|||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="848.42493"
|
||||
x="822.92493"
|
||||
y="600.46124"
|
||||
id="LDGELEV"
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3739-2"
|
||||
x="848.42493"
|
||||
x="822.92493"
|
||||
y="600.46124"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;stroke-width:1px">0</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;stroke-width:1px">500</tspan></text>
|
||||
<text
|
||||
transform="scale(0.89169395,1.121461)"
|
||||
inkscape:label="#text4495"
|
||||
|
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
@ -12,7 +12,7 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.91 r13725"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="door.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
|
@ -37,14 +37,14 @@
|
|||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1030"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.7521195"
|
||||
inkscape:cx="944.15154"
|
||||
inkscape:cy="187.23728"
|
||||
inkscape:window-x="1592"
|
||||
inkscape:zoom="0.35355339"
|
||||
inkscape:cx="354.52267"
|
||||
inkscape:cy="1842.4796"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2">
|
||||
|
@ -81,8 +81,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="500.75214"
|
||||
y="977.31793"
|
||||
id="text6232"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6232"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7"
|
||||
x="500.75214"
|
||||
|
@ -93,8 +92,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="254.86758"
|
||||
y="938.9859"
|
||||
id="text6233"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6233"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-3"
|
||||
x="254.86758"
|
||||
|
@ -105,8 +103,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="940.17981"
|
||||
y="939.82428"
|
||||
id="GW-weight-unit"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="GW-weight-unit"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7-7"
|
||||
x="940.17981"
|
||||
|
@ -117,8 +114,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="695.24951"
|
||||
y="939.8045"
|
||||
id="text3912"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text3912"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914"
|
||||
x="695.24951"
|
||||
|
@ -129,8 +125,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="48.73233"
|
||||
y="939.2984"
|
||||
id="text6235"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6235"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9"
|
||||
x="48.73233"
|
||||
|
@ -141,8 +136,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="47.952412"
|
||||
y="975.40332"
|
||||
id="text6236"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6236"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9-4"
|
||||
x="47.952412"
|
||||
|
@ -154,8 +148,7 @@
|
|||
x="212.32626"
|
||||
y="938.96637"
|
||||
id="TAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1"
|
||||
x="212.32626"
|
||||
|
@ -167,8 +160,7 @@
|
|||
x="212.3264"
|
||||
y="975.40363"
|
||||
id="SAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-0"
|
||||
x="212.3264"
|
||||
|
@ -180,15 +172,13 @@
|
|||
x="925.0899"
|
||||
y="939.78522"
|
||||
id="GW"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-9"
|
||||
x="925.0899"
|
||||
y="939.78522"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b">120000</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
id="text4170"
|
||||
y="975.42352"
|
||||
x="254.86758"
|
||||
|
@ -200,7 +190,6 @@
|
|||
id="tspan4172"
|
||||
sodipodi:role="line">°C</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
inkscape:label="#text5149"
|
||||
id="UTCh"
|
||||
y="976.25214"
|
||||
|
@ -218,8 +207,7 @@
|
|||
x="560.88452"
|
||||
y="976.25214"
|
||||
id="UTCm"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4180"
|
||||
x="560.88452"
|
||||
|
@ -236,7 +224,7 @@
|
|||
id="tspan861"
|
||||
x="512.93152"
|
||||
y="940.98541"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:31.99999905px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
@ -343,7 +331,7 @@
|
|||
sodipodi:nodetypes="ccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="436.25317"
|
||||
y="279.40991"
|
||||
id="Cabin1LeftSlide"
|
||||
|
@ -352,7 +340,7 @@
|
|||
id="tspan4301"
|
||||
x="436.25317"
|
||||
y="279.40991"
|
||||
style="font-size:32px;line-height:1.25">SLIDE</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<text
|
||||
transform="scale(1.0058142,0.9942194)"
|
||||
id="AvionicsLbl2"
|
||||
|
@ -403,7 +391,7 @@
|
|||
id="Cabin1RightSlide"
|
||||
y="289.65512"
|
||||
x="665.71307"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
transform="scale(1.0269551,0.9737524)"
|
||||
inkscape:label="#text4396"><tspan
|
||||
|
@ -411,7 +399,7 @@
|
|||
x="665.71307"
|
||||
id="tspan4398"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32.86256409px;line-height:1.25">SLIDE</tspan></text>
|
||||
style="font-size:32.86256409px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<path
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.61183023;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="m 853.91992,336.04297 18.49805,0 z m 25.64844,0 18.49609,0 z m 23.00391,0.1543 18.49804,0 z"
|
||||
|
@ -449,77 +437,77 @@
|
|||
<text
|
||||
transform="scale(1.0269551,0.9737524)"
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="663.55597"
|
||||
y="550.51556"
|
||||
y="522.78827"
|
||||
id="ExitRSlide"
|
||||
inkscape:label="#text4430"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4432"
|
||||
x="663.55597"
|
||||
y="550.51556"
|
||||
style="font-size:32.86256409px;line-height:1.25">SLIDE</tspan></text>
|
||||
y="522.78827"
|
||||
style="font-size:32.86256409px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<text
|
||||
id="ExitLSlide"
|
||||
y="550.51556"
|
||||
y="522.78827"
|
||||
x="427.7142"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
transform="scale(1.0269551,0.9737524)"
|
||||
inkscape:label="#text4434"><tspan
|
||||
y="550.51556"
|
||||
y="522.78827"
|
||||
x="427.7142"
|
||||
id="tspan4436"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32.86256409px;line-height:1.25">SLIDE</tspan></text>
|
||||
style="font-size:32.86256409px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<path
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.61183023;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="M 853.75 652.0918 L 872.24805 652.0918 L 853.75 652.0918 z M 879.39844 652.0918 L 897.89648 652.0918 L 879.39844 652.0918 z M 902.4043 652.24805 L 920.90039 652.24805 L 902.4043 652.24805 z "
|
||||
transform="scale(0.8,0.8)"
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.08946419;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="m 683,497.67344 h 14.79844 z m 20.51875,0 h 14.79843 z m 18.40469,0.125 h 14.79687 z"
|
||||
id="ExitRLine"
|
||||
inkscape:label="#path4438" />
|
||||
inkscape:label="#path4438"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="929.93616"
|
||||
y="447.66263"
|
||||
y="426.74124"
|
||||
id="ExitRLbl"
|
||||
transform="scale(0.87172238,1.1471542)"
|
||||
inkscape:label="#text4444"><tspan
|
||||
sodipodi:role="line"
|
||||
x="929.93616"
|
||||
y="447.66263"
|
||||
y="426.74124"
|
||||
id="tspan4448"
|
||||
style="font-size:27.89511681px;line-height:1.25;fill:#bb6100;fill-opacity:1">EMER</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="929.93616"
|
||||
y="482.53152"
|
||||
y="461.61014"
|
||||
style="font-size:27.89511681px;line-height:1.25;fill:#bb6100;fill-opacity:1"
|
||||
id="tspan4456">EXIT</tspan></text>
|
||||
<text
|
||||
transform="scale(0.87172238,1.1471542)"
|
||||
id="ExitLLbl"
|
||||
y="447.98447"
|
||||
y="427.06308"
|
||||
x="240.60371"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4458"><tspan
|
||||
style="font-size:27.89511681px;line-height:1.25;text-align:start;text-anchor:start;fill:#bb6100;fill-opacity:1"
|
||||
id="tspan4460"
|
||||
y="447.98447"
|
||||
y="427.06308"
|
||||
x="240.60371"
|
||||
sodipodi:role="line">EMER</tspan><tspan
|
||||
id="tspan4462"
|
||||
style="font-size:27.89511681px;line-height:1.25;text-align:start;text-anchor:start;fill:#bb6100;fill-opacity:1"
|
||||
y="482.85336"
|
||||
y="461.93198"
|
||||
x="240.60371"
|
||||
sodipodi:role="line">EXIT</tspan></text>
|
||||
<path
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.61183023;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="M 359.47656 652.55273 L 377.97461 652.55273 L 359.47656 652.55273 z M 385.125 652.55273 L 403.62109 652.55273 L 385.125 652.55273 z M 408.12891 652.70898 L 426.62695 652.70898 L 408.12891 652.70898 z "
|
||||
transform="scale(0.8,0.8)"
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.08946419;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="m 287.58125,498.04218 h 14.79844 z m 20.51875,0 h 14.79687 z m 18.40313,0.125 h 14.79843 z"
|
||||
id="ExitLLine"
|
||||
inkscape:label="#path4464" />
|
||||
inkscape:label="#path4464"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#0dc04b;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 572.97783,450.91184 -10.90875,0.0633 0.0285,29.90121 10.83876,0.0238 z"
|
||||
|
@ -631,14 +619,14 @@
|
|||
id="Cabin4LeftSlide"
|
||||
y="807.39655"
|
||||
x="432.02954"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4276"><tspan
|
||||
y="807.39655"
|
||||
x="432.02954"
|
||||
id="tspan4278"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;line-height:1.25">SLIDE</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<path
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.08946419;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="m 321.88282,794.0375 14.79843,0 z m -37.4,0.14219 14.79843,0 z m 18.40468,0.125 14.79688,0 z"
|
||||
|
@ -662,7 +650,7 @@
|
|||
<text
|
||||
transform="scale(1.0269551,0.9737524)"
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="666.375"
|
||||
y="829.13342"
|
||||
id="Cabin4RightSlide"
|
||||
|
@ -671,7 +659,7 @@
|
|||
id="tspan4304"
|
||||
x="666.375"
|
||||
y="829.13342"
|
||||
style="font-size:32.86256409px;line-height:1.25">SLIDE</tspan></text>
|
||||
style="font-size:32.86256409px;line-height:1.25;fill:#cecdce;fill-opacity:1;">SLIDE</tspan></text>
|
||||
<path
|
||||
style="fill:#bb6100;fill-opacity:1;fill-rule:evenodd;stroke:#bb6100;stroke-width:2.08946419;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.67999983;stroke-opacity:1"
|
||||
d="m 684.49531,794.17031 14.79687,0 z m 20.51719,0 14.79844,0 z m 18.40468,0.125 14.79844,0 z"
|
||||
|
@ -839,80 +827,82 @@
|
|||
sodipodi:nodetypes="ccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:30.04751396px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="752.48254"
|
||||
y="106.23167"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="852.17371"
|
||||
y="64.937149"
|
||||
id="DOOROXY-OxyIndicator"
|
||||
inkscape:label="#text3714"
|
||||
transform="scale(0.90024385,1.1108101)"><tspan
|
||||
transform="scale(0.90024388,1.1108101)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4627"
|
||||
x="752.48254"
|
||||
y="106.23167"
|
||||
style="stroke-width:2.50395942px;fill:#0dc04b;fill-opacity:1;">OXY</tspan></text>
|
||||
x="852.17371"
|
||||
y="64.937149"
|
||||
style="font-size:30.04751396px;line-height:0;fill:#cecdce;fill-opacity:1;stroke-width:2.50395942px;">CKPT OXY</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:30.04800034px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="757.76752"
|
||||
y="141.4857"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="799.85938"
|
||||
y="133.49768"
|
||||
id="DOOROXY-REGUL-LO-PR"
|
||||
inkscape:label="#text3714"
|
||||
transform="scale(0.90024388,1.1108101)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4647"
|
||||
x="757.76752"
|
||||
y="141.4857">REGUL LO PR</tspan></text>
|
||||
x="799.85938"
|
||||
y="133.49768"
|
||||
style="font-size:30.04800034px;line-height:0">REGUL LO PR</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:45.96218491px;line-height:1.25;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.14905465;"
|
||||
x="820.46686"
|
||||
y="106.9913"
|
||||
style="font-style:normal;font-weight:normal;font-size:32px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.14905465;"
|
||||
x="918.81921"
|
||||
y="103.75028"
|
||||
id="DOOROXY-PR"
|
||||
transform="scale(0.91130679,1.0973253)"
|
||||
inkscape:label="#text4651"><tspan
|
||||
sodipodi:role="line"
|
||||
x="820.46686"
|
||||
y="106.9913"
|
||||
style="stroke-width:1.14905465;fill:#0dc04b;fill-opacity:1;"
|
||||
x="918.81921"
|
||||
y="103.75028"
|
||||
style="font-size:36px;line-height:1.25;text-align:end;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke-width:1.14905465;"
|
||||
id="tspan4653">1300</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:30.04800034px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="974.64819"
|
||||
y="105.6836"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:2.50395942px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="953.60229"
|
||||
y="100.29736"
|
||||
id="DOOROXY-text-psi"
|
||||
inkscape:label="#text3714"
|
||||
transform="scale(0.90024388,1.1108101)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4675"
|
||||
x="974.64819"
|
||||
y="105.6836">PSI</tspan></text>
|
||||
x="953.60229"
|
||||
y="100.29736"
|
||||
style="font-size:30px;line-height:0">PSI</tspan></text>
|
||||
<g
|
||||
id="DOOR-VS-Container"
|
||||
inkscape:label="#g4751"
|
||||
transform="translate(3.9697981,11.253005)">
|
||||
transform="translate(12.944435,6.250187)">
|
||||
<text
|
||||
id="text4619"
|
||||
y="182.46194"
|
||||
y="180.12952"
|
||||
x="679.00989"
|
||||
style="font-style:normal;font-weight:normal;font-size:30px;line-height:1.25;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan4621"
|
||||
style="fill:#cecdce;fill-opacity:1;stroke-width:0.75"
|
||||
y="182.46194"
|
||||
style="font-size:30px;line-height:1.25;fill:#cecdce;fill-opacity:1;stroke-width:0.75"
|
||||
y="180.12952"
|
||||
x="679.00989"
|
||||
sodipodi:role="line">V/S</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text4619-2"
|
||||
transform="scale(1.0181905,0.98213449)"
|
||||
id="DOOR-VS"
|
||||
y="183.64415"
|
||||
x="769.71179"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:23.16251373px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.57906288"
|
||||
y="183.35246"
|
||||
x="737.38855"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.57906288"
|
||||
xml:space="preserve"><tspan
|
||||
style="stroke-width:0.57906288"
|
||||
y="183.64415"
|
||||
x="769.71179"
|
||||
style="font-size:36px;line-height:1.25;stroke-width:0.57906288"
|
||||
y="183.35246"
|
||||
x="737.38855"
|
||||
id="tspan4643"
|
||||
sodipodi:role="line">1650</tspan></text>
|
||||
<text
|
||||
|
@ -920,44 +910,18 @@
|
|||
id="text4619-2-6"
|
||||
y="177.27403"
|
||||
x="869.73895"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:22.38916969px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.55971754"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.55971754"
|
||||
xml:space="preserve"><tspan
|
||||
style="stroke-width:0.55971754"
|
||||
style="font-size:29.99999809px;line-height:1.25;stroke-width:0.55971754"
|
||||
y="177.27403"
|
||||
x="869.73895"
|
||||
id="tspan4663"
|
||||
sodipodi:role="line">FT/MIN</tspan></text>
|
||||
<g
|
||||
id="DOOR-VS-Arrow-DN">
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#0dc04b;stroke-width:1.44767237;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 731.03018,172.74699 39.64077,0.003"
|
||||
id="path4257-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:#0dc04b;stroke-width:0.75px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 770.62688,172.50761 3.32903,4.16556 6.04407,-1.41023 3.492,26.73705 -16.992,-21.75 5.77627,-3 -2.82034,-3.99238 z"
|
||||
id="path-1"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:label="#path4712" />
|
||||
</g>
|
||||
id="DOOR-VS-Arrow-DN" />
|
||||
<g
|
||||
inkscape:label="#DOOR-VS-Arrow-DN-3"
|
||||
transform="matrix(1,0,0,-1,0.04406707,358.0076)"
|
||||
id="DOOR-VS-Arrow-UP">
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#0dc04b;stroke-width:1.44767237;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 731.03018,172.74699 39.64077,0.003"
|
||||
id="path4257-2-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:#0dc04b;stroke-width:0.75px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 770.62688,172.50761 3.32903,4.16556 6.04407,-1.41023 3.492,26.73705 -16.992,-21.75 5.77627,-3 -2.82034,-3.99238 z"
|
||||
id="path-1-0"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:label="#path4712" />
|
||||
</g>
|
||||
id="DOOR-VS-Arrow-UP" />
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 51 KiB |
|
@ -12,8 +12,8 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="eng-eis2.svg">
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="eng.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
<rdf:RDF>
|
||||
|
@ -37,14 +37,14 @@
|
|||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1030"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.5"
|
||||
inkscape:cx="988.67552"
|
||||
inkscape:cy="398.82462"
|
||||
inkscape:window-x="1592"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="593.89152"
|
||||
inkscape:cy="650.40507"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2">
|
||||
|
@ -81,8 +81,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="500.75214"
|
||||
y="977.31793"
|
||||
id="text6232"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6232"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7"
|
||||
x="500.75214"
|
||||
|
@ -93,8 +92,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="254.86758"
|
||||
y="938.9859"
|
||||
id="text6233"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6233"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-3"
|
||||
x="254.86758"
|
||||
|
@ -105,8 +103,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="940.17981"
|
||||
y="939.82428"
|
||||
id="GW-weight-unit"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="GW-weight-unit"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7-7"
|
||||
x="940.17981"
|
||||
|
@ -117,8 +114,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="695.24951"
|
||||
y="939.8045"
|
||||
id="text3912"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text3912"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914"
|
||||
x="695.24951"
|
||||
|
@ -129,8 +125,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="48.73233"
|
||||
y="939.2984"
|
||||
id="text6235"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6235"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9"
|
||||
x="48.73233"
|
||||
|
@ -141,8 +136,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="47.952412"
|
||||
y="975.40332"
|
||||
id="text6236"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6236"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9-4"
|
||||
x="47.952412"
|
||||
|
@ -154,8 +148,7 @@
|
|||
x="212.32626"
|
||||
y="938.96637"
|
||||
id="TAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1"
|
||||
x="212.32626"
|
||||
|
@ -167,8 +160,7 @@
|
|||
x="212.3264"
|
||||
y="975.40363"
|
||||
id="SAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-0"
|
||||
x="212.3264"
|
||||
|
@ -180,15 +172,13 @@
|
|||
x="925.0899"
|
||||
y="939.78522"
|
||||
id="GW"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-9"
|
||||
x="925.0899"
|
||||
y="939.78522"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b">120000</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
id="text4170"
|
||||
y="975.42352"
|
||||
x="254.86758"
|
||||
|
@ -200,7 +190,6 @@
|
|||
id="tspan4172"
|
||||
sodipodi:role="line">°C</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
inkscape:label="#text5149"
|
||||
id="UTCh"
|
||||
y="976.25214"
|
||||
|
@ -218,8 +207,7 @@
|
|||
x="560.88452"
|
||||
y="976.25214"
|
||||
id="UTCm"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4180"
|
||||
x="560.88452"
|
||||
|
@ -236,7 +224,7 @@
|
|||
id="tspan861"
|
||||
x="512.93152"
|
||||
y="940.98541"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:31.99999905px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
@ -328,7 +316,8 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="482.23218"
|
||||
y="296.8558"
|
||||
id="text4949"><tspan
|
||||
id="Fused-oil-unit"
|
||||
inkscape:label="#text4949"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-3-5-9-4"
|
||||
x="482.23218"
|
||||
|
@ -342,7 +331,7 @@
|
|||
id="text4476"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4478"
|
||||
x="505.625"
|
||||
x="504.4375"
|
||||
y="284"
|
||||
style="font-size:32px;line-height:1.25"> </tspan></text>
|
||||
<text
|
||||
|
@ -668,19 +657,20 @@
|
|||
inkscape:transform-center-x="70.6625" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
x="264.69138"
|
||||
y="181.87299"
|
||||
style="font-style:normal;font-weight:normal;font-size:12.00003052px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75000191"
|
||||
x="264.69104"
|
||||
y="181.87344"
|
||||
id="FUEL-used-1"
|
||||
inkscape:label="#text5832"><tspan
|
||||
inkscape:label="#text5832"
|
||||
transform="scale(1.0000025,0.99999749)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5830-5-2"
|
||||
x="264.69138"
|
||||
y="181.87299"
|
||||
style="font-size:30.00000191px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75">0000</tspan></text>
|
||||
x="264.69104"
|
||||
y="181.87344"
|
||||
style="font-size:30.0000782px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75000191">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
x="682.74243"
|
||||
y="181.74864"
|
||||
id="FUEL-used-2"
|
||||
|
@ -690,4 +680,128 @@
|
|||
x="682.74243"
|
||||
y="181.74864"
|
||||
style="font-size:30.00000191px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:11.99998569px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.74999911"
|
||||
x="679.57947"
|
||||
y="209.71054"
|
||||
id="FUEL-clog-2"
|
||||
inkscape:label="#text5832"
|
||||
transform="scale(0.9999988,1.0000012)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5830-2"
|
||||
x="679.57947"
|
||||
y="209.71054"
|
||||
style="font-size:29.99996567px;line-height:1.25;fill:#bb6100;fill-opacity:1;stroke-width:0.74999911">CLOG</tspan></text>
|
||||
<text
|
||||
transform="scale(0.9999988,1.0000012)"
|
||||
inkscape:label="#text5832"
|
||||
id="FUEL-clog-1"
|
||||
y="209.71054"
|
||||
x="261.52823"
|
||||
style="font-style:normal;font-weight:normal;font-size:11.99998569px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.74999911"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-size:29.99996567px;line-height:1.25;fill:#bb6100;fill-opacity:1;stroke-width:0.74999911"
|
||||
y="209.71054"
|
||||
x="261.52823"
|
||||
id="tspan933"
|
||||
sodipodi:role="line">CLOG</tspan></text>
|
||||
<text
|
||||
transform="scale(0.9999988,1.0000012)"
|
||||
inkscape:label="#text5832"
|
||||
id="OIL-clog-2"
|
||||
y="476.71021"
|
||||
x="679.57947"
|
||||
style="font-style:normal;font-weight:normal;font-size:11.99998569px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.74999911"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-size:29.99996567px;line-height:1.25;fill:#bb6100;fill-opacity:1;stroke-width:0.74999911"
|
||||
y="476.71021"
|
||||
x="679.57947"
|
||||
id="tspan937"
|
||||
sodipodi:role="line">CLOG</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:11.99998569px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.74999911"
|
||||
x="261.52823"
|
||||
y="476.71021"
|
||||
id="OIL-clog-1"
|
||||
inkscape:label="#text5832"
|
||||
transform="scale(0.9999988,1.0000012)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan941"
|
||||
x="261.52823"
|
||||
y="476.71021"
|
||||
style="font-size:29.99996567px;line-height:1.25;fill:#bb6100;fill-opacity:1;stroke-width:0.74999911">CLOG</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="327.60934"
|
||||
y="538.25732"
|
||||
id="OilTemp1"
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-8-1"
|
||||
x="327.60934"
|
||||
y="538.25732"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px">22</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="VIB-N1-1"
|
||||
y="623.00732"
|
||||
x="327.60934"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px"
|
||||
y="623.00732"
|
||||
x="327.60934"
|
||||
id="tspan981"
|
||||
sodipodi:role="line">0.6</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="327.60934"
|
||||
y="683.75732"
|
||||
id="VIB-N2-1"
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan985"
|
||||
x="327.60934"
|
||||
y="683.75732"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px">0.1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="757.85675"
|
||||
y="623.00732"
|
||||
id="VIB-N1-2"
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan989"
|
||||
x="757.85675"
|
||||
y="623.00732"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px">0.6</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="VIB-N2-2"
|
||||
y="683.75732"
|
||||
x="757.85675"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px"
|
||||
y="683.75732"
|
||||
x="757.85675"
|
||||
id="tspan993"
|
||||
sodipodi:role="line">0.1</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text5149"
|
||||
id="OilTemp2"
|
||||
y="538.25732"
|
||||
x="745.15948"
|
||||
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b;stroke-width:1px"
|
||||
y="538.25732"
|
||||
x="745.15948"
|
||||
id="tspan997"
|
||||
sodipodi:role="line">22</tspan></text>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 44 KiB |
|
@ -12,7 +12,7 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.91 r13725"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="fctl.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
|
@ -37,14 +37,14 @@
|
|||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1030"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="683.58709"
|
||||
inkscape:cy="286.7536"
|
||||
inkscape:window-x="1592"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.28"
|
||||
inkscape:cx="608.14718"
|
||||
inkscape:cy="323.45523"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2">
|
||||
|
@ -81,8 +81,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="500.75214"
|
||||
y="977.31793"
|
||||
id="text6232"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6232"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7"
|
||||
x="500.75214"
|
||||
|
@ -93,8 +92,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="254.86758"
|
||||
y="938.9859"
|
||||
id="text6233"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6233"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-3"
|
||||
x="254.86758"
|
||||
|
@ -105,8 +103,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="940.17981"
|
||||
y="939.82428"
|
||||
id="GW-weight-unit"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="GW-weight-unit"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3726-1-4-5-7-7"
|
||||
x="940.17981"
|
||||
|
@ -117,8 +114,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="695.24951"
|
||||
y="939.8045"
|
||||
id="text3912"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text3912"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914"
|
||||
x="695.24951"
|
||||
|
@ -129,8 +125,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="48.73233"
|
||||
y="939.2984"
|
||||
id="text6235"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6235"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9"
|
||||
x="48.73233"
|
||||
|
@ -141,8 +136,7 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="47.952412"
|
||||
y="975.40332"
|
||||
id="text6236"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
id="text6236"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3914-9-4"
|
||||
x="47.952412"
|
||||
|
@ -154,8 +148,7 @@
|
|||
x="212.32626"
|
||||
y="938.96637"
|
||||
id="TAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1"
|
||||
x="212.32626"
|
||||
|
@ -167,8 +160,7 @@
|
|||
x="212.3264"
|
||||
y="975.40363"
|
||||
id="SAT"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-0"
|
||||
x="212.3264"
|
||||
|
@ -180,15 +172,13 @@
|
|||
x="925.0899"
|
||||
y="939.78522"
|
||||
id="GW"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5151-5-7-1-9"
|
||||
x="925.0899"
|
||||
y="939.78522"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#0dc04b">120000</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
id="text4170"
|
||||
y="975.42352"
|
||||
x="254.86758"
|
||||
|
@ -200,7 +190,6 @@
|
|||
id="tspan4172"
|
||||
sodipodi:role="line">°C</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="0%"
|
||||
inkscape:label="#text5149"
|
||||
id="UTCh"
|
||||
y="976.25214"
|
||||
|
@ -218,8 +207,7 @@
|
|||
x="560.88452"
|
||||
y="976.25214"
|
||||
id="UTCm"
|
||||
inkscape:label="#text5149"
|
||||
sodipodi:linespacing="0%"><tspan
|
||||
inkscape:label="#text5149"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4180"
|
||||
x="560.88452"
|
||||
|
@ -236,7 +224,7 @@
|
|||
id="tspan861"
|
||||
x="512.93152"
|
||||
y="940.98541"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:31.99999905px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#bb6100;fill-opacity:1">G.LOAD 0.6</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
@ -265,7 +253,7 @@
|
|||
id="text4476"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4478"
|
||||
x="505.625"
|
||||
x="504.4375"
|
||||
y="284"
|
||||
style="font-size:32px;line-height:1.25"> </tspan></text>
|
||||
<path
|
||||
|
@ -417,11 +405,6 @@
|
|||
id="path4423-0-9"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#969696;stroke-width:2.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 504.8,808 0,11.65 17.35,0 0,-11.7"
|
||||
id="path4455"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#969696;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 592.74899,784.57483 7.16728,9.18436 13.67801,-10.67402 -7.19805,-9.22378"
|
||||
|
@ -501,8 +484,9 @@
|
|||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="371.59274"
|
||||
y="519.38177"
|
||||
id="text4343"
|
||||
transform="scale(0.96916814,1.0318127)"><tspan
|
||||
id="pitchTrimStatus"
|
||||
transform="scale(0.96916814,1.0318127)"
|
||||
inkscape:label="#text4343"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4345"
|
||||
x="371.59274"
|
||||
|
@ -563,7 +547,7 @@
|
|||
style="font-size:32.03270721px;line-height:1.25">DN</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="515.71716"
|
||||
y="567.75739"
|
||||
id="PTcc"
|
||||
|
@ -572,7 +556,7 @@
|
|||
id="tspan4391"
|
||||
x="515.71716"
|
||||
y="567.75739"
|
||||
style="font-size:32px;line-height:1.25">°</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#179ab7;fill-opacity:1;">°</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="rect4370-2-7-0"
|
||||
|
@ -629,59 +613,59 @@
|
|||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="73.084137"
|
||||
y="275.63892"
|
||||
y="341.38232"
|
||||
id="text4455"
|
||||
transform="scale(0.99611221,1.003903)"><tspan
|
||||
transform="scale(0.99611218,1.003903)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4457"
|
||||
x="73.084137"
|
||||
y="275.63892"
|
||||
y="341.38232"
|
||||
style="font-size:38.63742447px;line-height:1.25;fill:#cecdce;fill-opacity:1"> </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="73.084137"
|
||||
y="323.9357"
|
||||
y="389.67911"
|
||||
id="tspan4459"
|
||||
style="font-size:38.63742447px;line-height:1.25;fill:#cecdce;fill-opacity:1">AIL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="100.07736"
|
||||
y="267.37128"
|
||||
y="328.55365"
|
||||
id="text4461"
|
||||
transform="scale(0.92700693,1.0787406)"><tspan
|
||||
transform="scale(0.92700692,1.0787406)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4463"
|
||||
x="100.07736"
|
||||
y="267.37128"
|
||||
y="328.55365"
|
||||
style="font-size:34.5196991px;line-height:1.25">L</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="896.62933"
|
||||
y="275.65222"
|
||||
y="341.39563"
|
||||
id="text4455-9"
|
||||
transform="scale(0.99611227,1.0039029)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4457-3"
|
||||
x="896.62933"
|
||||
y="275.65222"
|
||||
y="341.39563"
|
||||
style="font-size:38.63742447px;line-height:1.25;fill:#cecdce;fill-opacity:1"> </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="896.62933"
|
||||
y="323.94901"
|
||||
y="389.69241"
|
||||
id="tspan4459-6"
|
||||
style="font-size:38.63742447px;line-height:1.25;fill:#cecdce;fill-opacity:1">AIL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="985.13922"
|
||||
y="267.21289"
|
||||
y="328.40674"
|
||||
id="text4486"
|
||||
transform="scale(0.9271786,1.0785409)"><tspan
|
||||
transform="scale(0.92717857,1.0785409)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4488"
|
||||
x="985.13922"
|
||||
y="267.21289"
|
||||
y="328.40674"
|
||||
style="font-size:34.51330566px;line-height:1.25">R</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -709,51 +693,39 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="106.94858"
|
||||
y="327.59415" />
|
||||
y="408.59415" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="118.64819"
|
||||
y="335.1636"
|
||||
y="410.806"
|
||||
id="ailLgreen"
|
||||
transform="scale(0.93385575,1.0708292)"
|
||||
inkscape:label="#text4347-2-2-1"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4349-9-6-8"
|
||||
x="118.64819"
|
||||
y="335.1636"
|
||||
y="410.806"
|
||||
style="font-size:34.2665329px;line-height:1.25">G</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="78.4776"
|
||||
y="329.96588"
|
||||
id="text4351-1-7"
|
||||
transform="scale(0.91900969,1.0881278)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4353-2-9"
|
||||
x="78.4776"
|
||||
y="329.96588"
|
||||
style="font-size:34.82009125px;line-height:1.25">B</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="rect4370-3-0-6"
|
||||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="927.58649"
|
||||
y="327.1442" />
|
||||
y="408.1442" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1015.4791"
|
||||
y="329.75821"
|
||||
y="404.19797"
|
||||
id="ailRblue"
|
||||
transform="scale(0.91900969,1.0881278)"
|
||||
inkscape:label="#text4351-1-7-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4353-2-9-0"
|
||||
x="1015.4791"
|
||||
y="329.75821"
|
||||
y="404.19797"
|
||||
style="font-size:34.82009125px;line-height:1.25">B</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -761,43 +733,43 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="887.91785"
|
||||
y="327.1442" />
|
||||
y="408.1442" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="955.30261"
|
||||
y="335.05096"
|
||||
y="410.69336"
|
||||
id="ailRgreen"
|
||||
transform="scale(0.93385575,1.0708292)"
|
||||
inkscape:label="#text4347-2-2-1-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4349-9-6-8-3"
|
||||
x="955.30261"
|
||||
y="335.05096"
|
||||
y="410.69336"
|
||||
style="font-size:34.2665329px;line-height:1.25">G</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="203.8161"
|
||||
y="548.85791"
|
||||
y="562.763"
|
||||
id="text4461-7"
|
||||
transform="scale(0.92700692,1.0787406)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4463-5"
|
||||
x="203.8161"
|
||||
y="548.85791"
|
||||
y="562.763"
|
||||
style="font-size:34.5196991px;line-height:1.25">L</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="881.46405"
|
||||
y="548.97394"
|
||||
y="562.88373"
|
||||
id="text4486-9"
|
||||
transform="scale(0.92732086,1.0783754)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4488-2"
|
||||
x="881.46405"
|
||||
y="548.97394"
|
||||
y="562.88373"
|
||||
style="font-size:34.50801086px;line-height:1.25">R</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -805,19 +777,19 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="66.348572"
|
||||
y="327.69415" />
|
||||
y="408.69415" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="78.4776"
|
||||
y="329.96588"
|
||||
y="404.40564"
|
||||
id="ailLblue"
|
||||
transform="scale(0.91900969,1.0881278)"
|
||||
inkscape:label="#text4351-1-7-28"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4353-2-9-9"
|
||||
x="78.4776"
|
||||
y="329.96588"
|
||||
y="404.40564"
|
||||
style="font-size:34.82009125px;line-height:1.25">B</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -825,19 +797,19 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="162.06201"
|
||||
y="672.36768" />
|
||||
y="664.86768" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="183.42683"
|
||||
y="647.10468"
|
||||
y="640.21198"
|
||||
id="elevLblue"
|
||||
transform="scale(0.91900969,1.0881278)"
|
||||
inkscape:label="#text4351-1-7-7"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4353-2-9-3"
|
||||
x="183.42683"
|
||||
y="647.10468"
|
||||
y="640.21198"
|
||||
style="font-size:34.82009125px;line-height:1.25">B</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -845,19 +817,19 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="204.47299"
|
||||
y="672.36139" />
|
||||
y="664.86139" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="222.85838"
|
||||
y="657.31158"
|
||||
y="650.3078"
|
||||
id="elevLgreen"
|
||||
transform="scale(0.93385575,1.0708292)"
|
||||
inkscape:label="#text4347-2-2-1-6"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4349-9-6-8-1"
|
||||
x="222.85838"
|
||||
y="657.31158"
|
||||
y="650.3078"
|
||||
style="font-size:34.2665329px;line-height:1.25">G</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -865,19 +837,19 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="831.81787"
|
||||
y="671.34418" />
|
||||
y="663.84418" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="911.57098"
|
||||
y="646.80011"
|
||||
y="639.90741"
|
||||
id="elevRblue"
|
||||
transform="scale(0.91900969,1.0881278)"
|
||||
inkscape:label="#text4351-1-7-7-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4353-2-9-3-9"
|
||||
x="911.57098"
|
||||
y="646.80011"
|
||||
y="639.90741"
|
||||
style="font-size:34.82009125px;line-height:1.25">B</tspan></text>
|
||||
<rect
|
||||
style="fill:#898989;fill-opacity:1;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -885,43 +857,43 @@
|
|||
width="32.775558"
|
||||
height="36.044067"
|
||||
x="791.61786"
|
||||
y="671.34418" />
|
||||
y="663.84418" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="860.73682"
|
||||
y="651.89752"
|
||||
y="644.94257"
|
||||
id="elevRyellow"
|
||||
transform="scale(0.92732085,1.0783754)"
|
||||
inkscape:label="#text4355-3"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4357-1"
|
||||
x="860.73682"
|
||||
y="651.89752"
|
||||
y="644.94257"
|
||||
style="font-size:34.50801086px;line-height:1.25">Y</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="172.05634"
|
||||
y="575.58044"
|
||||
y="589.32837"
|
||||
id="text4714"
|
||||
transform="scale(0.91652932,1.0910726)"><tspan
|
||||
transform="scale(0.91652931,1.0910726)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4716"
|
||||
x="172.05634"
|
||||
y="575.58044"
|
||||
y="589.32837"
|
||||
style="font-size:36.08533478px;line-height:1.25">ELEV</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="858.55914"
|
||||
y="575.03058"
|
||||
y="588.7785"
|
||||
id="text4714-9"
|
||||
transform="scale(0.91652937,1.0910725)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4716-4"
|
||||
x="858.55914"
|
||||
y="575.03058"
|
||||
y="588.7785"
|
||||
style="font-size:36.08533478px;line-height:1.25">ELEV</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#0dc04b;stroke-width:2.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
|
@ -1292,4 +1264,11 @@
|
|||
x="792.54504"
|
||||
y="233.62128"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:43.1136055px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans'">5</tspan></text>
|
||||
<path
|
||||
style="fill:#179ab7;fill-opacity:1;stroke:#179ab7;stroke-width:1.67705202;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 513.74999,810.24995 v 18.75003"
|
||||
id="rudderTrimInd"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:transform-center-y="142.38281"
|
||||
inkscape:label="#path1012" />
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 62 KiB |
|
@ -50,8 +50,8 @@
|
|||
id="namedview371"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.68"
|
||||
inkscape:cx="817.73616"
|
||||
inkscape:cy="1022.6281"
|
||||
inkscape:cx="434.43172"
|
||||
inkscape:cy="1022.8371"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -148,8 +148,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="FUEL-XFEED-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:6.70764637;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -231,7 +232,7 @@
|
|||
y="405.25" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="315.9696"
|
||||
y="468.43625"
|
||||
id="FUEL-Left-Inner-quantity"
|
||||
|
@ -239,26 +240,26 @@
|
|||
transform="scale(0.9562547,1.0457465)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4819"
|
||||
x="315.9696"
|
||||
x="279.51846"
|
||||
y="468.43625"
|
||||
style="font-size:30.1989994px;line-height:0">0000</tspan></text>
|
||||
style="font-size:30.1989994px;line-height:0;text-align:end;text-anchor:end;">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="827.31793"
|
||||
y="468.59464"
|
||||
id="FUEL-Right-Inner-quantity"
|
||||
inkscape:label="#text5149"
|
||||
transform="scale(0.9562547,1.0457465)"><tspan
|
||||
style="font-size:30.19900131px;line-height:0;stroke-width:2.5165925px"
|
||||
style="font-size:30.19900131px;line-height:0;text-align:end;text-anchor:end;stroke-width:2.5165925px;"
|
||||
y="468.59464"
|
||||
x="827.31793"
|
||||
x="790.86682"
|
||||
sodipodi:role="line"
|
||||
id="tspan4819-8">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1008.5436"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="981.7066"
|
||||
y="468.28946"
|
||||
id="FUEL-Right-Outer-quantity"
|
||||
inkscape:label="#text5149"
|
||||
|
@ -267,10 +268,10 @@
|
|||
id="tspan4857"
|
||||
x="1008.5436"
|
||||
y="468.28946"
|
||||
style="font-size:30.1989994px;line-height:0">000</tspan></text>
|
||||
style="font-size:30.1989994px;line-height:0;text-anchor:middle;text-align:center;">000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.5165925px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="106.37531"
|
||||
y="468.35995"
|
||||
id="FUEL-Left-Outer-quantity"
|
||||
|
@ -278,9 +279,9 @@
|
|||
transform="scale(0.9562547,1.0457465)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4877"
|
||||
x="106.37531"
|
||||
x="79.538307"
|
||||
y="468.35995"
|
||||
style="font-size:30.1989994px;line-height:0">000</tspan></text>
|
||||
style="font-size:30.1989994px;line-height:0;text-align:end;text-anchor:end;">000</tspan></text>
|
||||
<rect
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:3.17700815;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-3"
|
||||
|
@ -374,8 +375,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3-4"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="FUEL-ENG-Master-1-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3-4" />
|
||||
</g>
|
||||
<g
|
||||
id="FUEL-ENG-Master-2"
|
||||
|
@ -392,8 +394,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3-4-3"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="FUEL-ENG-Master-2-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3-4-3" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
@ -652,20 +655,6 @@
|
|||
id="FUEL-Pump-Right-1"
|
||||
inkscape:label="#g5620"
|
||||
transform="translate(0,-6.6012608e-5)">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="654.60443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
|
@ -674,22 +663,40 @@
|
|||
id="FUEL-Pump-Right-1-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<g
|
||||
id="FUEL-Pump-Right-1-Square"
|
||||
inkscape:label="#g1037">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="403.6044"
|
||||
height="56.249981"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="710.85443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="654.60443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="345.25"
|
||||
height="57.895527"
|
||||
width="5.3955846"
|
||||
height="56.249981"
|
||||
x="403.6044"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="5.3955846"
|
||||
height="57.895527"
|
||||
x="345.25"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
</g>
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -704,20 +711,6 @@
|
|||
transform="translate(65.854409,-1.0289252e-5)"
|
||||
id="FUEL-Pump-Right-2"
|
||||
inkscape:label="#g5620">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="654.60443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
|
@ -726,22 +719,40 @@
|
|||
id="FUEL-Pump-Right-2-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<g
|
||||
id="FUEL-Pump-Right-2-Square"
|
||||
inkscape:label="#g1043">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="403.6044"
|
||||
height="56.249981"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-2"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="710.85443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-8"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="654.60443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-99"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="345.25"
|
||||
height="57.895527"
|
||||
width="5.3955846"
|
||||
height="56.249981"
|
||||
x="403.6044"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="5.3955846"
|
||||
height="57.895527"
|
||||
x="345.25"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
</g>
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -756,20 +767,6 @@
|
|||
transform="matrix(1,0,0,1.0022839,-420.75001,-0.78852587)"
|
||||
id="FUEL-Pump-Left-1"
|
||||
inkscape:label="#g5620">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="654.60443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
|
@ -778,22 +775,39 @@
|
|||
id="FUEL-Pump-Left-1-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<g
|
||||
id="FUEL-Pump-Left-1-Square">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="403.6044"
|
||||
height="56.249981"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="710.85443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="654.60443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="345.25"
|
||||
height="57.895527"
|
||||
width="5.3955846"
|
||||
height="56.249981"
|
||||
x="403.6044"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="5.3955846"
|
||||
height="57.895527"
|
||||
x="345.25"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
</g>
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -808,6 +822,8 @@
|
|||
transform="translate(-355.50001,-4.5998985e-6)"
|
||||
id="FUEL-Pump-Left-2"
|
||||
inkscape:label="#g5620">
|
||||
<g
|
||||
id="FUEL-Pump-Left-2-Square">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
|
@ -822,14 +838,6 @@
|
|||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-8-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="FUEL-Pump-Left-2-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
|
@ -846,6 +854,15 @@
|
|||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-6-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="FUEL-Pump-Left-2-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -861,20 +878,6 @@
|
|||
id="FUEL-Pump-Center-1"
|
||||
inkscape:label="#g5620"
|
||||
style="stroke:none;stroke-opacity:1">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76-5"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="654.60443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
|
@ -883,22 +886,40 @@
|
|||
id="FUEL-Pump-Center-1-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<g
|
||||
id="FUEL-Pump-Center-1-Square"
|
||||
inkscape:label="#g1025">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="403.6044"
|
||||
height="56.249981"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76-5"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="710.85443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1-8"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="654.60443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-2-0"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="345.25"
|
||||
height="57.895527"
|
||||
width="5.3955846"
|
||||
height="56.249981"
|
||||
x="403.6044"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-1-4"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="5.3955846"
|
||||
height="57.895527"
|
||||
x="345.25"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
</g>
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -913,20 +934,6 @@
|
|||
transform="translate(-131.39559,-15.00001)"
|
||||
id="FUEL-Pump-Center-2"
|
||||
inkscape:label="#g5620">
|
||||
<rect
|
||||
y="345.25"
|
||||
x="710.85443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76-5-4"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="654.60443"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1-8-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="345.25"
|
||||
x="682.5"
|
||||
|
@ -935,22 +942,39 @@
|
|||
id="FUEL-Pump-Center-2-Open"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<g
|
||||
id="FUEL-Pump-Center-2-Square">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="403.6044"
|
||||
height="56.249981"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76-5-4"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="710.85443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.7053628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1-8-2"
|
||||
width="5.3955846"
|
||||
height="63.750004"
|
||||
x="654.60443"
|
||||
y="345.25" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-2-0-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.60190916;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-712.5"
|
||||
x="345.25"
|
||||
height="57.895527"
|
||||
width="5.3955846"
|
||||
height="56.249981"
|
||||
x="403.6044"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-1-4-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.62517166;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="5.3955846"
|
||||
height="57.895527"
|
||||
x="345.25"
|
||||
y="-712.5"
|
||||
transform="rotate(90)" />
|
||||
</g>
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-708.75"
|
||||
|
@ -978,40 +1002,40 @@
|
|||
style="fill:none;stroke:#0dc04b;stroke-width:2.77499986;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.80000019;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
x="714.24243"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75;"
|
||||
x="786.66431"
|
||||
y="105.24868"
|
||||
id="FUEL-used-2"
|
||||
inkscape:label="#text5832"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5830"
|
||||
x="714.24243"
|
||||
x="750.45337"
|
||||
y="105.24868"
|
||||
style="font-size:30px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75">0000</tspan></text>
|
||||
style="font-size:30px;line-height:1.25;text-align:end;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke-width:0.75;">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
x="470.07513"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75;"
|
||||
x="542.49701"
|
||||
y="106.80015"
|
||||
id="FUEL-used-both"
|
||||
inkscape:label="#text5832"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5830-5"
|
||||
x="470.07513"
|
||||
x="506.28607"
|
||||
y="106.80015"
|
||||
style="font-size:30.00000191px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75">0000</tspan></text>
|
||||
style="font-size:30.00000191px;line-height:1.25;text-align:end;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke-width:0.75;">0000</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
|
||||
x="228.69138"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75;"
|
||||
x="301.11325"
|
||||
y="105.37296"
|
||||
id="FUEL-used-1"
|
||||
inkscape:label="#text5832"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5830-5-2"
|
||||
x="228.69138"
|
||||
x="264.90231"
|
||||
y="105.37296"
|
||||
style="font-size:30.00000191px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.75">0000</tspan></text>
|
||||
style="font-size:30.00000191px;line-height:1.25;text-align:end;text-anchor:end;fill:#0dc04b;fill-opacity:1;stroke-width:0.75;">0000</tspan></text>
|
||||
<rect
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.82722223;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="FUEL-ENG-1-pipe"
|
||||
|
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 71 KiB |
|
@ -12,7 +12,7 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="hyd.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
|
@ -55,10 +55,10 @@
|
|||
inkscape:window-width="1366"
|
||||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="4.0298682"
|
||||
inkscape:cx="632.99286"
|
||||
inkscape:cy="609.55322"
|
||||
showgrid="false"
|
||||
inkscape:zoom="5.6568542"
|
||||
inkscape:cx="1081.6807"
|
||||
inkscape:cy="259.15874"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -84,8 +84,9 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Fire-Valve-Green-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
@ -117,7 +118,7 @@
|
|||
transform="translate(-504.6045,133.35439)"
|
||||
id="Pump-Green"
|
||||
inkscape:label="#g5620"
|
||||
style="stroke:none;stroke-opacity:1;fill:#0dc04b;fill-opacity:1;stroke-width:0.99974997;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-722.10449"
|
||||
|
@ -125,7 +126,7 @@
|
|||
height="69.75222"
|
||||
width="5.3955846"
|
||||
id="Pump-Green-off"
|
||||
style="fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
style="fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-8" />
|
||||
<rect
|
||||
y="344.7912"
|
||||
|
@ -133,21 +134,21 @@
|
|||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-76"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="344.7912"
|
||||
x="650.70892"
|
||||
height="63.750004"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="346.8956"
|
||||
x="686.70892"
|
||||
height="60"
|
||||
width="5.3955846"
|
||||
id="Pump-Green-on"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
|
@ -156,7 +157,7 @@
|
|||
height="66"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-2"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
transform="rotate(90)"
|
||||
y="-718.6366"
|
||||
|
@ -164,7 +165,7 @@
|
|||
height="67.927612"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-6-6-6-4-6-7-5-6-9-1"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.99974996;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
|
@ -384,60 +385,67 @@
|
|||
x="817.61298"
|
||||
height="5.1203089"
|
||||
width="53.195583"
|
||||
id="rect5105-2-5-3-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Fire-Valve-Yellow-Cross"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-2-5-3-8" />
|
||||
</g>
|
||||
<g
|
||||
id="Green-Line"
|
||||
inkscape:label="#g5511"
|
||||
transform="matrix(1,0,0,0.91447869,0,20.867199)">
|
||||
<rect
|
||||
y="666.37177"
|
||||
x="181.49602"
|
||||
height="50.02853"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.5107255;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="567.01062"
|
||||
x="182.10442"
|
||||
height="37.850697"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.31405532;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Green-Line-Middle"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.31405532;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6" />
|
||||
<rect
|
||||
y="666.37177"
|
||||
x="181.49602"
|
||||
height="50.02853"
|
||||
width="5.3955846"
|
||||
id="Green-Line-Bottom"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.5107255;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8" />
|
||||
<rect
|
||||
y="239.89929"
|
||||
x="182.10442"
|
||||
height="260.70981"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.44869995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Green-Line-Top"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.44869995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6-8" />
|
||||
</g>
|
||||
<g
|
||||
id="Yellow-Line"
|
||||
inkscape:label="#g5520"
|
||||
transform="matrix(1,0,0,0.91744285,0,20.152178)">
|
||||
<rect
|
||||
y="669.08563"
|
||||
x="812.10443"
|
||||
height="47.414429"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-8"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.47072661;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
y="571.64478"
|
||||
x="811.70526"
|
||||
height="33.75"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6-4"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.24083376;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Yellow-Line-Middle"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.24083376;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6-4" />
|
||||
<rect
|
||||
y="666.48438"
|
||||
x="812.10443"
|
||||
height="50.015663"
|
||||
width="5.3955846"
|
||||
id="Yellow-Line-Bottom"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1.51053119;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-8" />
|
||||
<rect
|
||||
y="235.81612"
|
||||
x="812.71283"
|
||||
height="269.77158"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6-8-3"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.50812292;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Yellow-Line-Top"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.50812292;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6-8-3" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.77499986;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.80000019;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -858,15 +866,17 @@
|
|||
x="497.1044"
|
||||
height="322.44897"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6-8-9"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.83536959;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Blue-Line-Top"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:3.83536959;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6-8-9" />
|
||||
<rect
|
||||
y="624.25513"
|
||||
x="497.1044"
|
||||
height="92.244881"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-6-8-9-6"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.05138826;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
id="Blue-Line-Bottom"
|
||||
style="fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.05138826;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#rect5105-6-0-7-8-6-8-8-7-3-8-6-8-9-6" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:3.89999986;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
|
@ -875,6 +885,16 @@
|
|||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
inkscape:label="#path5530" />
|
||||
<rect
|
||||
style="opacity:0.8;fill:#cecdce;fill-opacity:1;stroke:#179ab7;stroke-width:1.6348666;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="HYD-Quantity-Group-Yellow_clip"
|
||||
width="33.343235"
|
||||
height="180.96817"
|
||||
x="793.64117"
|
||||
y="677.14093"
|
||||
inkscape:label="#rect1048"
|
||||
inkscape:transform-center-x="22.540598"
|
||||
inkscape:transform-center-y="-79.48293" />
|
||||
<g
|
||||
id="HYD-Quantity-Group-Yellow"
|
||||
inkscape:label="#g5619">
|
||||
|
@ -882,7 +902,7 @@
|
|||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5561"
|
||||
d="m 812.24998,856.74997 h -17.25"
|
||||
d="m 812.24998,856.74997 h -17.0677"
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
|
@ -893,15 +913,15 @@
|
|||
<rect
|
||||
y="677.5"
|
||||
x="812.10443"
|
||||
height="123.75005"
|
||||
height="144.83067"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-8-1"
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.3760159;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.57043672;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5559"
|
||||
d="m 813.38785,802.38785 h 11.25 v 54.39495 h -11.25 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
d="m 813.15523,823.32891 h 11.71524 v 33.68651 h -11.71524 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:2.10803151;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="Quantity-Indicator-Yellow"
|
||||
|
@ -909,15 +929,23 @@
|
|||
style="fill:none;stroke:#0dc04b;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#path5563" />
|
||||
</g>
|
||||
<rect
|
||||
style="opacity:0.8;fill:#cecdce;fill-opacity:1;stroke:#179ab7;stroke-width:1.63897061;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="HYD-Quantity-Group-Blue_clip"
|
||||
width="33.344971"
|
||||
height="181.86841"
|
||||
x="478.64029"
|
||||
y="674.69995"
|
||||
inkscape:label="#rect1048" />
|
||||
<g
|
||||
transform="translate(-314.99999)"
|
||||
transform="translate(-314.99999,-1.6423255)"
|
||||
id="HYD-Quantity-Group-Blue"
|
||||
inkscape:label="#g5619">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5561-4"
|
||||
d="m 812.24998,856.74997 h -17.25"
|
||||
d="m 812.24998,856.74997 h -17.0677"
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
|
@ -928,15 +956,15 @@
|
|||
<rect
|
||||
y="677.5"
|
||||
x="812.10443"
|
||||
height="123.75005"
|
||||
height="135.94765"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-8-1-6"
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.3760159;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.49036217;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5559-3"
|
||||
d="m 813.38785,802.38785 h 11.25 v 54.39495 h -11.25 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
d="m 813.26886,814.62253 h 11.48798 v 42.27926 h -11.48798 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:2.33861709;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="Quantity-Indicator-Blue"
|
||||
|
@ -944,6 +972,14 @@
|
|||
style="fill:none;stroke:#0dc04b;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:label="#path5563" />
|
||||
</g>
|
||||
<rect
|
||||
style="opacity:0.8;fill:#cecdce;fill-opacity:1;stroke:#179ab7;stroke-width:1.63411391;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:markers stroke fill"
|
||||
id="HYD-Quantity-Group-Green_clip"
|
||||
width="33.336826"
|
||||
height="180.83632"
|
||||
x="163.64438"
|
||||
y="675.72797"
|
||||
inkscape:label="#rect1048" />
|
||||
<g
|
||||
transform="translate(-630.6084,-1.5000219)"
|
||||
id="HYD-Quantity-Group-Green"
|
||||
|
@ -952,7 +988,7 @@
|
|||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5561-5"
|
||||
d="m 812.24998,856.74997 h -17.25"
|
||||
d="M 812.24998,856.74997 H 795.17576"
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
|
@ -963,15 +999,15 @@
|
|||
<rect
|
||||
y="677.5"
|
||||
x="812.10443"
|
||||
height="123.75005"
|
||||
height="152.12271"
|
||||
width="5.3955846"
|
||||
id="rect5105-6-0-7-8-6-8-8-7-3-8-8-1-62"
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.3760159;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.63435125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5559-1"
|
||||
d="m 813.38785,802.38785 h 11.25 v 54.39495 h -11.25 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:2.625;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
d="m 812.88109,830.65833 h 12.26352 v 26.63123 h -12.26352 z"
|
||||
style="fill:none;stroke:#bb6100;stroke-width:1.91768491;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="Quantity-Indicator-Green"
|
||||
|
@ -1172,4 +1208,17 @@
|
|||
x="560.88452"
|
||||
y="976.25214"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#0dc04b">00</tspan></text>
|
||||
<text
|
||||
transform="scale(0.87383883,1.1443758)"
|
||||
inkscape:label="#text5149"
|
||||
id="Pump-LOPR-Blue"
|
||||
y="507.94836"
|
||||
x="542.45435"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:3.77088857px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4816-7"
|
||||
x="542.45435"
|
||||
y="507.94836"
|
||||
style="font-size:45.25px;line-height:0;stroke-width:3.77088857px">LO</tspan></text>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 65 KiB |
|
@ -12,7 +12,7 @@
|
|||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
|
||||
sodipodi:docname="press.svg">
|
||||
<metadata
|
||||
id="metadata375">
|
||||
|
@ -41,9 +41,9 @@
|
|||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.88"
|
||||
inkscape:cx="397.64824"
|
||||
inkscape:cy="880.3857"
|
||||
inkscape:zoom="0.64"
|
||||
inkscape:cx="770.48025"
|
||||
inkscape:cy="620.45739"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -467,7 +467,7 @@
|
|||
style="font-size:32.18700027px;line-height:0">SYS2</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;opacity:0.98999999;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:2.68228626px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;opacity:0.98999999;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:2.68228626px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="632.71191"
|
||||
y="608.12244"
|
||||
id="PRESS-Man"
|
||||
|
@ -477,10 +477,10 @@
|
|||
id="tspan5036"
|
||||
x="632.71191"
|
||||
y="608.12244"
|
||||
style="font-size:32.18700027px;line-height:0">MAN</tspan></text>
|
||||
style="font-size:32.18700027px;line-height:0;fill:#0dc04b;fill-opacity:1;">MAN</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.87310684"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:0.87310684;"
|
||||
x="156.08197"
|
||||
y="788.50562"
|
||||
id="PRESS-Pack-1"
|
||||
|
@ -490,10 +490,10 @@
|
|||
id="tspan5038"
|
||||
x="156.08197"
|
||||
y="788.50562"
|
||||
style="font-size:34.92427444px;line-height:1.25;fill:#0dc04b;fill-opacity:1;stroke-width:0.87310684">PACK 1</tspan></text>
|
||||
style="font-size:34.92427444px;line-height:1.25;fill:#cecdce;fill-opacity:1;stroke-width:0.87310684;">PACK 1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.87310684"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:0.87310684;"
|
||||
x="802.58295"
|
||||
y="788.27905"
|
||||
id="PRESS-Pack-2"
|
||||
|
@ -503,35 +503,24 @@
|
|||
id="tspan5060"
|
||||
x="802.58295"
|
||||
y="788.27905"
|
||||
style="font-size:34.92399979px;line-height:1.25">PACK 2</tspan></text>
|
||||
style="font-size:34.92399979px;line-height:1.25;fill:#cecdce;fill-opacity:1;">PACK 2</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#cecdce;stroke-width:2.47499993;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.47499993;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 191.99999,797.49995 h 20.25 v 0 l -9.75,-25.5 v 0 z"
|
||||
id="path5062"
|
||||
inkscape:connector-curvature="0" />
|
||||
id="PRESS-Pack-1-Triangle"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="#path5062" />
|
||||
<path
|
||||
style="fill:none;stroke:#cecdce;stroke-width:2.4749999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
style="fill:none;stroke:#0dc04b;stroke-width:2.4749999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 805.14493,798.24998 h 20.25 v 0 l -9.75,-25.5 v 0 z"
|
||||
id="path5062-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
id="PRESS-Pack-2-Triangle"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="#path5062-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#cecdce;stroke-width:2.4749999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 203.99999,195.24999 h 20.25 v 0 l -9.75,-25.5 v 0 z"
|
||||
id="path5062-3-0"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dbe4a;fill-opacity:1;stroke:none;stroke-width:1.43711448"
|
||||
x="506.89874"
|
||||
y="334.31491"
|
||||
id="PRESS-Cab-VS-neg"
|
||||
transform="scale(0.98802114,1.0121241)"
|
||||
inkscape:label="#text5100"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5098"
|
||||
x="506.89874"
|
||||
y="334.31491"
|
||||
style="font-size:57.48457718px;line-height:1.25;fill:#0dbe4a;fill-opacity:1;stroke-width:1.43711448">-</tspan></text>
|
||||
<rect
|
||||
style="fill:#0dbe4a;fill-opacity:1;stroke:none;stroke-width:1.60198247;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="PRESS-Alt-needle"
|
||||
|
@ -771,32 +760,6 @@
|
|||
x="185.16533"
|
||||
y="366.22198"
|
||||
style="font-size:27.24699974px;line-height:0">0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dbe4a;fill-opacity:1;stroke:none;stroke-width:4.99181652px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="169.68008"
|
||||
y="538.0921"
|
||||
id="PRESS-deltaP-period"
|
||||
inkscape:label="#text3720"
|
||||
transform="scale(1.3534057,0.73887673)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5559"
|
||||
x="169.68008"
|
||||
y="538.0921"
|
||||
style="font-size:59.90160751px;line-height:0;fill:#0dbe4a;fill-opacity:1;stroke-width:4.99181652px">.</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dbe4a;fill-opacity:1;stroke:none;stroke-width:2.27059054px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="278.09778"
|
||||
y="360.78436"
|
||||
id="PRESS-deltaP-Decimal"
|
||||
inkscape:label="#text3720"
|
||||
transform="scale(0.9147857,1.0931522)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5595"
|
||||
x="278.09778"
|
||||
y="360.78436"
|
||||
style="font-size:27.24699974px;line-height:0">1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0dbe4a;fill-opacity:1;stroke:none;stroke-width:2.27059054px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 55 KiB |
|
@ -41,9 +41,9 @@
|
|||
inkscape:window-height="705"
|
||||
id="namedview371"
|
||||
showgrid="true"
|
||||
inkscape:zoom="2.3145515"
|
||||
inkscape:cx="701.70396"
|
||||
inkscape:cy="947.29764"
|
||||
inkscape:zoom="0.64"
|
||||
inkscape:cx="1071.5554"
|
||||
inkscape:cy="763.4389"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
|
@ -370,14 +370,14 @@
|
|||
id="NORMbrk"
|
||||
y="616.38831"
|
||||
x="426.55933"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4285"><tspan
|
||||
y="616.38831"
|
||||
x="426.55933"
|
||||
id="tspan4287"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;line-height:1.25;fill:#0dc04b;fill-opacity:1">NORM BRK</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#bb6100;fill-opacity:1;">NORM BRK</tspan></text>
|
||||
<text
|
||||
id="accupress_text"
|
||||
y="707.69037"
|
||||
|
@ -484,7 +484,7 @@
|
|||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans'">999</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="926.31042"
|
||||
y="555.97632"
|
||||
id="releaseR3"
|
||||
|
@ -494,33 +494,33 @@
|
|||
id="tspan4329"
|
||||
x="926.31042"
|
||||
y="555.97632"
|
||||
style="font-size:21.63888741px;line-height:1.25">|||</tspan></text>
|
||||
style="font-size:21.63888741px;line-height:1.25;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
transform="scale(0.83828115,1.1929172)"
|
||||
id="releaseL3"
|
||||
y="555.97632"
|
||||
x="852.14044"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4331"><tspan
|
||||
y="555.97632"
|
||||
x="852.14044"
|
||||
id="tspan4333"
|
||||
sodipodi:role="line"
|
||||
style="font-size:21.63888741px;line-height:1.25">|||</tspan></text>
|
||||
style="font-size:21.63888741px;line-height:1.25;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
transform="scale(0.83828115,1.1929172)"
|
||||
id="releaseL4"
|
||||
y="556.23566"
|
||||
x="1048.9662"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4335"><tspan
|
||||
y="556.23566"
|
||||
x="1048.9662"
|
||||
id="tspan4337"
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.63888741px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans'">|||</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.63888741px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
@ -547,7 +547,7 @@
|
|||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans'">REL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="80.142349"
|
||||
y="607.25616"
|
||||
id="releaseL1"
|
||||
|
@ -557,23 +557,23 @@
|
|||
id="tspan4353"
|
||||
x="80.142349"
|
||||
y="607.25616"
|
||||
style="font-size:23.3301487px;line-height:1.25">|||</tspan></text>
|
||||
style="font-size:23.3301487px;line-height:1.25;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
transform="scale(0.91562312,1.0921524)"
|
||||
id="releaseR1"
|
||||
y="606.97186"
|
||||
x="147.61992"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4355"><tspan
|
||||
y="606.97186"
|
||||
x="147.61992"
|
||||
id="tspan4357"
|
||||
sodipodi:role="line"
|
||||
style="font-size:23.3301487px;line-height:1.25">|||</tspan></text>
|
||||
style="font-size:23.3301487px;line-height:1.25;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="254.77022"
|
||||
y="607.25616"
|
||||
id="releaseL2"
|
||||
|
@ -583,20 +583,20 @@
|
|||
id="tspan4361"
|
||||
x="254.77022"
|
||||
y="607.25616"
|
||||
style="font-size:23.3301487px;line-height:1.25">|||</tspan></text>
|
||||
style="font-size:23.3301487px;line-height:1.25;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
transform="scale(0.91562313,1.0921524)"
|
||||
id="releaseR2"
|
||||
y="606.97186"
|
||||
x="321.23053"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"
|
||||
inkscape:label="#text4363"><tspan
|
||||
y="606.97186"
|
||||
x="321.23053"
|
||||
id="tspan4365"
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:23.3301487px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans'">|||</tspan></text>
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:23.3301487px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<path
|
||||
style="fill:#cecdce;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.80000001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 62.082323,383.88565 50.858397,0 0,2.80598 -50.861852,-0.0503 z"
|
||||
|
@ -1062,7 +1062,7 @@
|
|||
inkscape:label="#rect4336" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="636.59528"
|
||||
y="554.79926"
|
||||
id="BSCU2"
|
||||
|
@ -1071,10 +1071,10 @@
|
|||
id="tspan192"
|
||||
x="636.59528"
|
||||
y="554.79926"
|
||||
style="font-size:32px;line-height:1.25;fill:#bb6100;fill-opacity:1">2</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#0dc04b;fill-opacity:1;">2</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="602.89856"
|
||||
y="554.79913"
|
||||
id="BSCU1"
|
||||
|
@ -1083,7 +1083,7 @@
|
|||
id="tspan195"
|
||||
x="602.89856"
|
||||
y="554.79913"
|
||||
style="font-size:32px;line-height:1.25;fill:#bb6100;fill-opacity:1">1</tspan></text>
|
||||
style="font-size:32px;line-height:1.25;fill:#0dc04b;fill-opacity:1;">1</tspan></text>
|
||||
<rect
|
||||
y="336.88196"
|
||||
x="364.16824"
|
||||
|
@ -1114,17 +1114,17 @@
|
|||
inkscape:label="#path4358" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#cecdce;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#bb6100;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="1123.6205"
|
||||
y="555.97632"
|
||||
id="releaseR3-7"
|
||||
id="releaseR4"
|
||||
transform="scale(0.83828114,1.1929172)"
|
||||
inkscape:label="#text4327"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4329-4"
|
||||
x="1123.6205"
|
||||
y="555.97632"
|
||||
style="font-size:21.63888741px;line-height:1.25;stroke-width:1px">|||</tspan></text>
|
||||
style="font-size:21.63888741px;line-height:1.25;stroke-width:1px;fill:#bb6100;fill-opacity:1;">|||</tspan></text>
|
||||
<text
|
||||
inkscape:label="#text4355-7"
|
||||
transform="scale(0.92732085,1.0783754)"
|
||||
|
@ -1190,14 +1190,14 @@
|
|||
inkscape:label="#text4289"
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';letter-spacing:0px;word-spacing:0px;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="455.59897"
|
||||
y="707.69037"
|
||||
x="441.43594"
|
||||
y="707.69073"
|
||||
id="accuonly"><tspan
|
||||
style="font-size:32px;line-height:1.25"
|
||||
sodipodi:role="line"
|
||||
id="tspan4312"
|
||||
x="455.59897"
|
||||
y="707.69037">ACCU ONLY</tspan></text>
|
||||
x="441.43594"
|
||||
y="707.69073">ACCU ONLY</tspan></text>
|
||||
<path
|
||||
inkscape:label="#path4358"
|
||||
sodipodi:nodetypes="cccccccccc"
|
||||
|
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 69 KiB |
|
@ -1068,9 +1068,8 @@ var UpperECAMRecipient =
|
|||
var A320EWD = UpperECAMRecipient.new("A320 E/WD");
|
||||
emesary.GlobalTransmitter.Register(A320EWD);
|
||||
|
||||
input = {
|
||||
var input = {
|
||||
fuelTotalLbs: "/consumables/fuel/total-fuel-lbs",
|
||||
acconfigUnits: "/systems/acconfig/options/weight-kgs",
|
||||
slatLocked: "/fdm/jsbsim/fcs/slat-locked",
|
||||
|
||||
# N1 parameters
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
# props.nas:
|
||||
|
||||
var dualFailNode = props.globals.initNode("/ECAM/dual-failure-enabled", 0, "BOOL");
|
||||
var phaseNode = props.globals.getNode("/ECAM/warning-phase", 1);
|
||||
var apWarn = props.globals.getNode("/it-autoflight/output/ap-warning", 1);
|
||||
var athrWarn = props.globals.getNode("/it-autoflight/output/athr-warning", 1);
|
||||
var emerGen = props.globals.getNode("/controls/electrical/switches/emer-gen", 1);
|
||||
|
@ -46,7 +45,7 @@ var _SATval = nil;
|
|||
var ecamConfigTest = props.globals.initNode("/ECAM/to-config-test", 0, "BOOL");
|
||||
|
||||
var messages_priority_3 = func {
|
||||
phaseVar3 = phaseNode.getValue();
|
||||
phaseVar3 = pts.ECAM.fwcWarningPhase.getValue();
|
||||
|
||||
# Stall
|
||||
# todo - altn law and emer cancel flipflops page 2440
|
||||
|
@ -1161,7 +1160,7 @@ var messages_priority_3 = func {
|
|||
}
|
||||
|
||||
var messages_priority_2 = func {
|
||||
phaseVar2 = phaseNode.getValue();
|
||||
phaseVar2 = pts.ECAM.fwcWarningPhase.getValue();
|
||||
|
||||
if ((phaseVar2 == 2 or phaseVar2 == 3 or phaseVar2 == 9) and warningNodes.Logic.thrLeversNotSet.getValue() and engThrustLvrNotSet.clearFlag == 0) {
|
||||
engThrustLvrNotSet.active = 1;
|
||||
|
@ -3130,7 +3129,7 @@ var messages_priority_0 = func {
|
|||
}
|
||||
|
||||
var messages_config_memo = func {
|
||||
phaseVarMemo = phaseNode.getValue();
|
||||
phaseVarMemo = pts.ECAM.fwcWarningPhase.getValue();
|
||||
if (pts.Controls.Flight.flapsInput.getValue() == 0 or pts.Controls.Flight.flapsInput.getValue() == 4 or pts.Controls.Flight.speedbrake.getValue() != 0 or getprop("/fdm/jsbsim/hydraulics/stabilizer/final-deg") > 1.75 or getprop("/fdm/jsbsim/hydraulics/stabilizer/final-deg") < -3.65 or getprop("/fdm/jsbsim/hydraulics/rudder/trim-cmd-deg") < -3.55 or getprop("/fdm/jsbsim/hydraulics/rudder/trim-cmd-deg") > 3.55) {
|
||||
setprop("/ECAM/to-config-normal", 0);
|
||||
} else {
|
||||
|
@ -3296,7 +3295,7 @@ var messages_config_memo = func {
|
|||
}
|
||||
|
||||
var messages_memo = func {
|
||||
phaseVarMemo2 = phaseNode.getValue();
|
||||
phaseVarMemo2 = pts.ECAM.fwcWarningPhase.getValue();
|
||||
if (getprop("/services/fuel-truck/enable") == 1 and toMemoLine1.active != 1 and ldgMemoLine1.active != 1) {
|
||||
refuelg.active = 1;
|
||||
} else {
|
||||
|
@ -3399,7 +3398,7 @@ var messages_memo = func {
|
|||
}
|
||||
|
||||
var messages_right_memo = func {
|
||||
phaseVarMemo3 = phaseNode.getValue();
|
||||
phaseVarMemo3 = pts.ECAM.fwcWarningPhase.getValue();
|
||||
if (FWC.Timer.toInhibitOutput.getValue() == 1) {
|
||||
to_inhibit.active = 1;
|
||||
} else {
|
||||
|
|
|
@ -28,7 +28,7 @@ var SystemDisplayController = {
|
|||
displayedPage: nil,
|
||||
lastDisplayedPage: nil,
|
||||
lastMode: nil,
|
||||
mode: 0, # 0 = man, 1 = warning, 2 = advisory (not used yet), 3 = auto
|
||||
mode: 3, # 0 = man, 1 = warning, 2 = advisory (not used yet), 3 = auto
|
||||
tempFWCPhase: nil,
|
||||
tempElapsedTime: nil,
|
||||
tempEngineModeSel: nil,
|
||||
|
@ -37,6 +37,7 @@ var SystemDisplayController = {
|
|||
ECAMTimer.start();
|
||||
},
|
||||
autoCallLoop: func() {
|
||||
if (me.mode != 3) { return; }
|
||||
me.tempFWCPhase = pts.ECAM.fwcWarningPhase.getValue();
|
||||
|
||||
if (me.Display.APU) {
|
||||
|
|
|
@ -67,8 +67,8 @@ var FBW = {
|
|||
rtlu1: props.globals.getNode("/systems/failures/fctl/rtlu-1"),
|
||||
rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"),
|
||||
rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"),
|
||||
ths: props.globals.getNode("/systems/failures/fctl/ths-jam"),
|
||||
spoilerl1: props.globals.getNode("/systems/failures/spoilers/spoiler-l1"),
|
||||
ths: props.globals.getNode(""),
|
||||
spoilerl1: props.globals.getNode(""),
|
||||
spoilerl2: props.globals.getNode("/systems/failures/spoilers/spoiler-l2"),
|
||||
spoilerl3: props.globals.getNode("/systems/failures/spoilers/spoiler-l3"),
|
||||
spoilerl4: props.globals.getNode("/systems/failures/spoilers/spoiler-l4"),
|
||||
|
|
|
@ -391,6 +391,10 @@ var input = {
|
|||
"seatbelt": "/controls/switches/seatbelt-sign",
|
||||
"noSmoking": "/controls/switches/no-smoking-sign",
|
||||
"gearPosNorm": "/gear/gear[0]/position-norm",
|
||||
"gearPosNorm1": "/gear/gear[1]/position-norm",
|
||||
"gearPosNorm2": "/gear/gear[2]/position-norm",
|
||||
"engine1Running": "/engines/engine[0]/running",
|
||||
"engine2Running": "/engines/engine[1]/running",
|
||||
};
|
||||
|
||||
foreach (var name; keys(input)) {
|
||||
|
|
|
@ -83,6 +83,7 @@ var Engines = {
|
|||
n1Actual: [props.globals.getNode("/engines/engine[0]/n1-actual"), props.globals.getNode("/engines/engine[1]/n1-actual")],
|
||||
n2Actual: [props.globals.getNode("/engines/engine[0]/n2-actual"), props.globals.getNode("/engines/engine[1]/n2-actual")],
|
||||
oilPsi: [props.globals.getNode("/engines/engine[0]/oil-psi-actual"), props.globals.getNode("/engines/engine[1]/oil-psi-actual")],
|
||||
oilQt: [props.globals.getNode("/engines/engine[0]/oil-qt-actual"), props.globals.getNode("/engines/engine[1]/oil-qt-actual")],
|
||||
thrust: [props.globals.getNode("/engines/engine[0]/thrust-lb"), props.globals.getNode("/engines/engine[1]/thrust-lb")],
|
||||
reverser: [props.globals.getNode("/engines/engine[0]/reverser-pos-norm"), props.globals.getNode("/engines/engine[1]/reverser-pos-norm")],
|
||||
state: [props.globals.getNode("/engines/engine[0]/state"), props.globals.getNode("/engines/engine[1]/state")],
|
||||
|
|
|
@ -64,9 +64,9 @@ var HYD = {
|
|||
},
|
||||
init: func() {
|
||||
me.resetFail();
|
||||
me.Qty.blueInput.setValue(math.round((rand() * 4) + 8 , 0.1)); # Random between 8 and 12
|
||||
me.Qty.greenInput.setValue(math.round((rand() * 4) + 8 , 0.1)); # Random between 8 and 12
|
||||
me.Qty.yellowInput.setValue(math.round((rand() * 4) + 8 , 0.1)); # Random between 8 and 12
|
||||
me.Qty.blueInput.setValue(math.round((rand() * 2) + 6 , 0.1)); # Random between 6 and 8
|
||||
me.Qty.greenInput.setValue(math.round((rand() * 4) + 14 , 0.1)); # Random between 14 and 18
|
||||
me.Qty.yellowInput.setValue(math.round((rand() * 4) + 10 , 0.1)); # Random between 10 and 14
|
||||
me.Switch.blueElec.setValue(1);
|
||||
me.Switch.blueElecOvrd.setValue(0);
|
||||
me.Switch.greenEDP.setValue(1);
|
||||
|
|
|
@ -42,6 +42,7 @@ input = {
|
|||
frame_rate: "/sim/frame-rate",
|
||||
elapsedTime: "/sim/time/elapsed-sec",
|
||||
FWCPhase: "/ECAM/warning-phase",
|
||||
acconfigUnits: "/systems/acconfig/options/weight-kgs",
|
||||
|
||||
# Just about everything uses these properties at some stage, lets add them here!
|
||||
gear0Wow: "/gear/gear[0]/wow",
|
||||
|
|
|
@ -29,13 +29,25 @@
|
|||
</actuator>
|
||||
|
||||
<!-- Green -->
|
||||
<switch name="/systems/hydraulic/green-qty-cmd">
|
||||
<switch name="/systems/hydraulic/green-qty-cmd-cmd">
|
||||
<default value="/systems/hydraulic/green-qty-input"/>
|
||||
<test value="0">
|
||||
/systems/failures/hydraulic/green-leak eq 1
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="/systems/hydraulic/green-qty-cmd">
|
||||
<function>
|
||||
<sum>
|
||||
<property>/systems/hydraulic/green-qty-cmd-cmd</property>
|
||||
<product>
|
||||
<value>2.1</value>
|
||||
<property>/gear/gear[0]/position-norm</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<switch name="/systems/hydraulic/green-qty-decr-rate">
|
||||
<default value="100"/> <!-- Instant -->
|
||||
<test value="0.25">
|
||||
|
|