1
0
Fork 0

Merge 3D into 3D-canvas

Signed-off-by: fly <merspieler@airmail.cc>
This commit is contained in:
fly 2021-08-12 19:12:13 +02:00
commit d405776b40
51 changed files with 1736 additions and 1550 deletions

View file

@ -13,18 +13,18 @@
<metrics file="Systems/a320-metrics"/> <metrics file="Systems/a320-metrics"/>
<mass_balance> <mass_balance>
<ixx unit="SLUG*FT2">611903</ixx> <ixx unit="SLUG*FT2">414659</ixx>
<iyy unit="SLUG*FT2">1735389</iyy> <iyy unit="SLUG*FT2">895647</iyy>
<izz unit="SLUG*FT2">1401293</izz> <izz unit="SLUG*FT2">678957</izz>
<ixy unit="SLUG*FT2">0</ixy> <ixy unit="SLUG*FT2">0</ixy>
<ixz unit="SLUG*FT2">0</ixz> <ixz unit="SLUG*FT2">0</ixz>
<iyz unit="SLUG*FT2">0</iyz> <iyz unit="SLUG*FT2">0</iyz>
<emptywt unit="LBS">95721.5</emptywt> <emptywt unit="LBS">95409.5</emptywt>
<location name="CG" unit="M"> <location name="CG" unit="M">
<x>-2.4335</x> <!-- 28.5% MAC --> <x>-2.4335</x> <!-- 28.5% MAC -->
<y>0</y> <y>0</y>
<z>-0.75</z> <z>-0.934</z>
</location> </location>
<pointmass name="Crew"> <pointmass name="Crew">
@ -32,34 +32,32 @@
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-15.44</x> <x>-15.44</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Forward Cabin"> <pointmass name="Forward Cabin">
<weight unit="LBS">3722</weight> <weight unit="LBS">5896</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-10.8</x> <x>-10.8</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Center Cabin"> <pointmass name="Center Cabin">
<weight unit="LBS">11361</weight> <weight unit="LBS">7256</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-4.3</x> <x>-3.3</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cabin"> <pointmass name="Aft Cabin">
<weight unit="LBS">8422</weight> <weight unit="LBS">6651</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-5.3</x> <x>4.9</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
@ -71,20 +69,18 @@
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cargo"> <pointmass name="Aft Cargo">
<weight unit="LBS">3000</weight> <weight unit="LBS">3000</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-3.1</x> <x>4.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Bulk Cargo"> <pointmass name="Aft Bulk Cargo">
<weight unit="LBS">0</weight> <weight unit="LBS">0</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-8.1</x> <x>8.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>

View file

@ -13,9 +13,9 @@
<metrics file="Systems/a320-metrics"/> <metrics file="Systems/a320-metrics"/>
<mass_balance> <mass_balance>
<ixx unit="SLUG*FT2">611903</ixx> <ixx unit="SLUG*FT2">414659</ixx>
<iyy unit="SLUG*FT2">1735389</iyy> <iyy unit="SLUG*FT2">895647</iyy>
<izz unit="SLUG*FT2">1401293</izz> <izz unit="SLUG*FT2">678957</izz>
<ixy unit="SLUG*FT2">0</ixy> <ixy unit="SLUG*FT2">0</ixy>
<ixz unit="SLUG*FT2">0</ixz> <ixz unit="SLUG*FT2">0</ixz>
<iyz unit="SLUG*FT2">0</iyz> <iyz unit="SLUG*FT2">0</iyz>
@ -24,7 +24,7 @@
<location name="CG" unit="M"> <location name="CG" unit="M">
<x>-2.4335</x> <!-- 28.5% MAC --> <x>-2.4335</x> <!-- 28.5% MAC -->
<y>0</y> <y>0</y>
<z>-0.75</z> <z>-0.934</z>
</location> </location>
<pointmass name="Crew"> <pointmass name="Crew">
@ -32,34 +32,32 @@
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-15.44</x> <x>-15.44</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Forward Cabin"> <pointmass name="Forward Cabin">
<weight unit="LBS">3722</weight> <weight unit="LBS">5896</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-10.8</x> <x>-10.8</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Center Cabin"> <pointmass name="Center Cabin">
<weight unit="LBS">11361</weight> <weight unit="LBS">7256</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-4.3</x> <x>-3.3</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cabin"> <pointmass name="Aft Cabin">
<weight unit="LBS">8422</weight> <weight unit="LBS">6651</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-5.3</x> <x>4.9</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
@ -71,20 +69,18 @@
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cargo"> <pointmass name="Aft Cargo">
<weight unit="LBS">3000</weight> <weight unit="LBS">3000</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-3.1</x> <x>4.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Bulk Cargo"> <pointmass name="Aft Bulk Cargo">
<weight unit="LBS">0</weight> <weight unit="LBS">0</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-8.1</x> <x>8.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>

View file

@ -1378,8 +1378,6 @@
<ac-ess-bus type="bool">0</ac-ess-bus> <ac-ess-bus type="bool">0</ac-ess-bus>
<ac-1-bus type="bool">0</ac-1-bus> <ac-1-bus type="bool">0</ac-1-bus>
<ac-2-bus type="bool">0</ac-2-bus> <ac-2-bus type="bool">0</ac-2-bus>
<bat-1 type="bool">0</bat-1>
<bat-2 type="bool">0</bat-2>
<dc-bat-bus type="bool">0</dc-bat-bus> <dc-bat-bus type="bool">0</dc-bat-bus>
<dc-ess-bus type="bool">0</dc-ess-bus> <dc-ess-bus type="bool">0</dc-ess-bus>
<dc-1-bus type="bool">0</dc-1-bus> <dc-1-bus type="bool">0</dc-1-bus>
@ -4401,9 +4399,7 @@
<desc>Simple Engage/Disengage reversers</desc> <desc>Simple Engage/Disengage reversers</desc>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script> <script>systems.toggleFastRevThrust();</script>
systems.toggleFastRevThrust();
</script>
</binding> </binding>
</key> </key>
<key n="257"> <key n="257">
@ -4411,9 +4407,7 @@
<desc>Disengage/Decrease reversers</desc> <desc>Disengage/Decrease reversers</desc>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script> <script>systems.unRevThrust();</script>
systems.unRevThrust();
</script>
</binding> </binding>
</key> </key>
<key n="258"> <key n="258">
@ -4421,65 +4415,15 @@
<desc>Engage/Increase reversers</desc> <desc>Engage/Increase reversers</desc>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script> <script>systems.doRevThrust();</script>
systems.doRevThrust();
</script>
</binding> </binding>
</key> </key>
<key n="2"> <key n="2">
<name>Ctrl-b</name> <name>Ctrl-b</name>
<desc>Cycle speedbrake setting</desc> <desc>Cycle speedbrake setting</desc>
<binding> <binding>
<condition> <command>nasal</command>
<and> <script>libraries.speedbrakeKey();</script>
<not-equals>
<property>/controls/flight/speedbrake-arm</property>
<value>1</value>
</not-equals>
<or>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
</or>
</and>
</condition>
<command>property-cycle</command>
<property>/controls/flight/speedbrake</property>
<value>0.0</value>
<value>1.0</value>
</binding>
<binding>
<condition>
<and>
<not-equals>
<property>/controls/flight/speedbrake-arm</property>
<value>1</value>
</not-equals>
<equals>
<property>/gear/gear[1]/wow</property>
<value>0</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>0</value>
</equals>
</and>
</condition>
<command>property-cycle</command>
<property>/controls/flight/speedbrake</property>
<value>0.0</value>
<value>0.5</value>
<value>1.0</value>
</binding>
<binding>
<command>property-assign</command>
<property>/controls/flight/speedbrake-arm</property>
<value>0</value>
</binding> </binding>
</key> </key>
<key n="356"> <key n="356">
@ -4796,7 +4740,6 @@
<file>Aircraft/A320-family/Nasal/MCDU/PERFTO.nas</file> <file>Aircraft/A320-family/Nasal/MCDU/PERFTO.nas</file>
<file>Aircraft/A320-family/Nasal/MCDU/RADNAV.nas</file> <file>Aircraft/A320-family/Nasal/MCDU/RADNAV.nas</file>
<file>Aircraft/A320-family/Nasal/MCDU/DATA.nas</file> <file>Aircraft/A320-family/Nasal/MCDU/DATA.nas</file>
<file>Aircraft/A320-family/Nasal/MCDU/DATA2.nas</file>
<file>Aircraft/A320-family/Nasal/MCDU/STATUS.nas</file> <file>Aircraft/A320-family/Nasal/MCDU/STATUS.nas</file>
</mcdu> </mcdu>
<!-- Traffic layer from E-jet --> <!-- Traffic layer from E-jet -->
@ -4837,6 +4780,7 @@
<file>Aircraft/A320-family/Models/Instruments/DCDU/DCDU.nas</file> <file>Aircraft/A320-family/Models/Instruments/DCDU/DCDU.nas</file>
</canvas_dcdu> </canvas_dcdu>
<canvas_mcdu> <canvas_mcdu>
<file>Aircraft/A320-family/Models/Instruments/MCDU/MCDU-funcs.nas</file>
<file>Aircraft/A320-family/Models/Instruments/MCDU/MCDU.nas</file> <file>Aircraft/A320-family/Models/Instruments/MCDU/MCDU.nas</file>
</canvas_mcdu> </canvas_mcdu>
<canvas_qnh> <canvas_qnh>

View file

@ -13,18 +13,18 @@
<metrics file="Systems/a320-metrics"/> <metrics file="Systems/a320-metrics"/>
<mass_balance> <mass_balance>
<ixx unit="SLUG*FT2">611903</ixx> <ixx unit="SLUG*FT2">414659</ixx>
<iyy unit="SLUG*FT2">1735389</iyy> <iyy unit="SLUG*FT2">895647</iyy>
<izz unit="SLUG*FT2">1401293</izz> <izz unit="SLUG*FT2">678957</izz>
<ixy unit="SLUG*FT2">0</ixy> <ixy unit="SLUG*FT2">0</ixy>
<ixz unit="SLUG*FT2">0</ixz> <ixz unit="SLUG*FT2">0</ixz>
<iyz unit="SLUG*FT2">0</iyz> <iyz unit="SLUG*FT2">0</iyz>
<emptywt unit="LBS">98160.71</emptywt> <emptywt unit="LBS">95409.5</emptywt>
<location name="CG" unit="M"> <location name="CG" unit="M">
<x>-2.4335</x> <!-- 28.5% MAC --> <x>-2.4335</x> <!-- 28.5% MAC -->
<y>0</y> <y>0</y>
<z>-0.75</z> <z>-0.934</z>
</location> </location>
<pointmass name="Crew"> <pointmass name="Crew">
@ -32,34 +32,32 @@
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-15.44</x> <x>-15.44</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Forward Cabin"> <pointmass name="Forward Cabin">
<weight unit="LBS">3722</weight> <weight unit="LBS">5896</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-10.8</x> <x>-10.8</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Center Cabin"> <pointmass name="Center Cabin">
<weight unit="LBS">11361</weight> <weight unit="LBS">7256</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-4.3</x> <x>-3.3</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cabin"> <pointmass name="Aft Cabin">
<weight unit="LBS">8422</weight> <weight unit="LBS">6651</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-5.3</x> <x>4.9</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
@ -71,20 +69,18 @@
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cargo"> <pointmass name="Aft Cargo">
<weight unit="LBS">3000</weight> <weight unit="LBS">3000</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-3.1</x> <x>4.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Bulk Cargo"> <pointmass name="Aft Bulk Cargo">
<weight unit="LBS">0</weight> <weight unit="LBS">0</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-8.1</x> <x>8.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>

View file

@ -13,18 +13,18 @@
<metrics file="Systems/a320-metrics"/> <metrics file="Systems/a320-metrics"/>
<mass_balance> <mass_balance>
<ixx unit="SLUG*FT2">611903</ixx> <ixx unit="SLUG*FT2">414659</ixx>
<iyy unit="SLUG*FT2">1735389</iyy> <iyy unit="SLUG*FT2">895647</iyy>
<izz unit="SLUG*FT2">1401293</izz> <izz unit="SLUG*FT2">678957</izz>
<ixy unit="SLUG*FT2">0</ixy> <ixy unit="SLUG*FT2">0</ixy>
<ixz unit="SLUG*FT2">0</ixz> <ixz unit="SLUG*FT2">0</ixz>
<iyz unit="SLUG*FT2">0</iyz> <iyz unit="SLUG*FT2">0</iyz>
<emptywt unit="LBS">97497.7</emptywt> <emptywt unit="LBS">95409.5</emptywt>
<location name="CG" unit="M"> <location name="CG" unit="M">
<x>-2.4335</x> <!-- 28.5% MAC --> <x>-2.4335</x> <!-- 28.5% MAC -->
<y>0</y> <y>0</y>
<z>-0.75</z> <z>-0.934</z>
</location> </location>
<pointmass name="Crew"> <pointmass name="Crew">
@ -32,34 +32,32 @@
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-15.44</x> <x>-15.44</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Forward Cabin"> <pointmass name="Forward Cabin">
<weight unit="LBS">3722</weight> <weight unit="LBS">5896</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-10.8</x> <x>-10.8</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Center Cabin"> <pointmass name="Center Cabin">
<weight unit="LBS">11361</weight> <weight unit="LBS">7256</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-4.3</x> <x>-3.3</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cabin"> <pointmass name="Aft Cabin">
<weight unit="LBS">8422</weight> <weight unit="LBS">6651</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-5.3</x> <x>4.9</x>
<y>0</y> <y>0</y>
<z>0.3</z> <z>0.39</z>
</location> </location>
</pointmass> </pointmass>
@ -71,20 +69,18 @@
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Cargo"> <pointmass name="Aft Cargo">
<weight unit="LBS">3000</weight> <weight unit="LBS">3000</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-3.1</x> <x>4.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>
</pointmass> </pointmass>
<pointmass name="Aft Bulk Cargo"> <pointmass name="Aft Bulk Cargo">
<weight unit="LBS">0</weight> <weight unit="LBS">0</weight>
<location name="POINTMASS" unit="M"> <location name="POINTMASS" unit="M">
<x>-8.1</x> <x>8.2</x>
<y>0</y> <y>0</y>
<z>-1</z> <z>-1</z>
</location> </location>

View file

@ -412,26 +412,6 @@
<live>true</live> <live>true</live>
</checkbox> </checkbox>
<checkbox>
<label>BATTERY 1</label>
<halign>left</halign>
<property>/systems/failures/electrical/bat-1</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>BATTERY 2</label>
<halign>left</halign>
<property>/systems/failures/electrical/bat-2</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox> <checkbox>
<label>DC ESS BUS</label> <label>DC ESS BUS</label>
<halign>left</halign> <halign>left</halign>

View file

@ -5602,6 +5602,22 @@
</condition> </condition>
</animation> </animation>
<animation>
<type>pick</type>
<object-name>metric_alt</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>nasal</command>
<script>
fcu.FCUController.MetricAlt();
setprop("sim/sounde/btn1", 1);
</script>
</binding>
</action>
</animation>
<!-- Sidestick Priority Lights --> <!-- Sidestick Priority Lights -->
<animation> <animation>
<type>select</type> <type>select</type>
@ -6976,48 +6992,20 @@
<value>1</value> <value>1</value>
</binding> </binding>
</action> </action>
<action>
<button>4</button>
<repeatable>false</repeatable>
<binding>
<command>nasal</command>
<script>
var spdBrk = getprop("controls/flight/speedbrake" );
if(spdBrk == 0){
setprop("controls/flight/speedbrake-arm", 0);
setprop("controls/flight/speedbrake", 0.5);
}
elsif(spdBrk == 0.5){
setprop("controls/flight/speedbrake-arm", 0);
setprop("controls/flight/speedbrake", 1);
}
elsif(spdBrk == 1){
setprop("controls/flight/speedbrake-arm", 0);
# Do nothing because spoilers are fully up.
}
</script>
</binding>
</action>
<action> <action>
<button>3</button> <button>3</button>
<repeatable>false</repeatable> <repeatable>false</repeatable>
<binding> <binding>
<command>nasal</command> <command>nasal</command>
<script> <script>libraries.retractSpeedbrake();</script>
var spdBrk = getprop("controls/flight/speedbrake"); </binding>
if(spdBrk == 0){ </action>
setprop("controls/flight/speedbrake-arm", 0); <action>
# Do nothing because spoilers are fully down. <button>4</button>
} <repeatable>false</repeatable>
elsif(spdBrk == 0.5){ <binding>
setprop("controls/flight/speedbrake-arm", 0); <command>nasal</command>
setprop("controls/flight/speedbrake", 0); <script>libraries.deploySpeedbrake();</script>
}
elsif(spdBrk == 1){
setprop("controls/flight/speedbrake-arm", 0);
setprop("controls/flight/speedbrake", 0.5);
}
</script>
</binding> </binding>
</action> </action>
</animation> </animation>
@ -7701,19 +7689,15 @@
<object-name>vs.ind</object-name> <object-name>vs.ind</object-name>
<object-name>fpa.ind</object-name> <object-name>fpa.ind</object-name>
<object-name>fpa.ind.001</object-name> <object-name>fpa.ind.001</object-name>
<object-name>atc-code</object-name>
<object-name>atc-test</object-name>
<object-name>fpa-text</object-name> <object-name>fpa-text</object-name>
<object-name>qnh-inhg</object-name> <object-name>qnh-inhg</object-name>
<object-name>qnh-hpa</object-name> <object-name>qnh-hpa</object-name>
<object-name>qnh-std</object-name> <object-name>qnh-std</object-name>
<object-name>qnh-test</object-name> <object-name>qnh-test</object-name>
<object-name>rudder-trim</object-name>
<object-name>rudder-trim-letter</object-name>
<diffuse> <diffuse>
<red>0.75</red> <red>1.00</red>
<green>0.30</green> <green>0.515</green>
<blue>0.0</blue> <blue>0.00</blue>
<factor-prop>controls/lighting/fcu-digit-norm</factor-prop> <factor-prop>controls/lighting/fcu-digit-norm</factor-prop>
</diffuse> </diffuse>
<ambient> <ambient>
@ -7727,9 +7711,9 @@
<blue>0</blue> <blue>0</blue>
</specular> </specular>
<emission> <emission>
<red>0.75</red> <red>1.00</red>
<green>0.30</green> <green>0.515</green>
<blue>0.0</blue> <blue>0.00</blue>
<factor-prop>controls/lighting/fcu-digit-norm</factor-prop> <factor-prop>controls/lighting/fcu-digit-norm</factor-prop>
</emission> </emission>
</animation> </animation>
@ -7738,10 +7722,12 @@
<type>material</type> <type>material</type>
<object-name>rudder-trim</object-name> <object-name>rudder-trim</object-name>
<object-name>rudder-trim-letter</object-name> <object-name>rudder-trim-letter</object-name>
<object-name>atc-code</object-name>
<object-name>atc-test</object-name>
<diffuse> <diffuse>
<red>0.75</red> <red>1.00</red>
<green>0.30</green> <green>0.355</green>
<blue>0.0</blue> <blue>0.00</blue>
</diffuse> </diffuse>
<ambient> <ambient>
<red>0</red> <red>0</red>
@ -7754,9 +7740,9 @@
<blue>0</blue> <blue>0</blue>
</specular> </specular>
<emission> <emission>
<red>0.75</red> <red>1.00</red>
<green>0.30</green> <green>0.355</green>
<blue>0.0</blue> <blue>0.00</blue>
</emission> </emission>
</animation> </animation>
@ -9180,9 +9166,9 @@
<object-name>dme1</object-name> <object-name>dme1</object-name>
<!-- <object-name>dme1_20</object-name>--> <!-- <object-name>dme1_20</object-name>-->
<diffuse> <diffuse>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</diffuse> </diffuse>
<ambient> <ambient>
<red>0</red> <red>0</red>
@ -9195,9 +9181,9 @@
<blue>0</blue> <blue>0</blue>
</specular> </specular>
<emission> <emission>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</emission> </emission>
</animation> </animation>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

View file

@ -3,7 +3,7 @@ MATERIAL "engine-LEAP" rgb 0.720 0.720 0.720 amb 1.000 1.000 1.000 emis 0.000
MATERIAL "engine-LEAP-Inner" rgb 0.800 0.800 0.800 amb 1.000 1.000 1.000 emis 0.000 0.000 0.000 spec 0.500 0.500 0.500 shi 5 trans 0.000 MATERIAL "engine-LEAP-Inner" rgb 0.800 0.800 0.800 amb 1.000 1.000 1.000 emis 0.000 0.000 0.000 spec 0.500 0.500 0.500 shi 5 trans 0.000
OBJECT world OBJECT world
name "Blender_exporter_v2.26__CFMLEAP1A.ac" name "Blender_exporter_v2.26__CFMLEAP1A.ac"
kids 21 kids 20
OBJECT poly OBJECT poly
name "EngineLEAPL" name "EngineLEAPL"
data 10 data 10
@ -11,7 +11,7 @@ Circle.070
crease 40.0 crease 40.0
texture "engine-leap1a.png" texture "engine-leap1a.png"
texrep 1 1 texrep 1 1
numvert 915 numvert 971
-5.99603 -1.40518 4.72154 -5.99603 -1.40518 4.72154
-5.99603 -3.21746 4.72154 -5.99603 -3.21746 4.72154
-5.99603 -2.08404 4.36962 -5.99603 -2.08404 4.36962
@ -927,7 +927,63 @@ numvert 915
-6.59341 -1.42205 5.35885 -6.59341 -1.42205 5.35885
-6.59533 -1.41164 5.35153 -6.59533 -1.41164 5.35153
-6.59535 -1.41048 5.35534 -6.59535 -1.41048 5.35534
numsurf 763 -5.36544 -1.38745 6.48767
-5.58537 -1.40004 6.51961
-5.89058 -1.42088 6.54841
-5.3821 -1.34082 6.43333
-5.60021 -1.35352 6.46475
-5.90234 -1.37166 6.49624
-5.36522 -1.38064 6.49365
-5.89036 -1.41406 6.55439
-5.58514 -1.39322 6.52558
-5.38187 -1.334 6.43931
-5.90211 -1.36484 6.50222
-5.59998 -1.3467 6.47073
-5.28901 -1.37521 6.46328
-5.29742 -1.38317 6.47371
-6.05451 -1.43226 6.55571
-6.0674 -1.42517 6.54833
-6.07481 -1.39031 6.51341
-6.06527 -1.38175 6.50493
-6.06718 -1.41835 6.5543
-6.05428 -1.42545 6.56169
-6.06504 -1.37493 6.51091
-6.07458 -1.3835 6.51939
-5.31444 -1.33587 6.42032
-5.3008 -1.34233 6.42636
-5.29719 -1.37636 6.47969
-5.28878 -1.36839 6.46926
-5.30058 -1.33551 6.43234
-5.31421 -1.32905 6.42629
-5.36544 -1.38745 4.7736
-5.58537 -1.40004 4.74166
-5.89058 -1.42088 4.71285
-5.3821 -1.34082 4.82793
-5.60021 -1.35352 4.79651
-5.90234 -1.37166 4.76502
-5.36522 -1.38064 4.76762
-5.89036 -1.41406 4.70687
-5.58514 -1.39322 4.73568
-5.38187 -1.334 4.82195
-5.90211 -1.36484 4.75904
-5.59998 -1.3467 4.79054
-5.28901 -1.37521 4.79798
-5.29742 -1.38317 4.78756
-6.05451 -1.43226 4.70555
-6.0674 -1.42517 4.71294
-6.07481 -1.39031 4.74785
-6.06527 -1.38175 4.75633
-6.06718 -1.41835 4.70696
-6.05428 -1.42545 4.69958
-6.06504 -1.37493 4.75035
-6.07458 -1.3835 4.74187
-5.31444 -1.33587 4.84095
-5.3008 -1.34233 4.8349
-5.29719 -1.37636 4.78158
-5.28878 -1.36839 4.79201
-5.30058 -1.33551 4.82892
-5.31421 -1.32905 4.83497
numsurf 799
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
@ -6238,332 +6294,266 @@ refs 4
911 0.294766 0.901495 911 0.294766 0.901495
912 0.29524 0.901496 912 0.29524 0.901496
910 0.29524 0.903886 910 0.29524 0.903886
kids 0
OBJECT poly
name "EngineLEAPL.007"
data 10
Circle.043
crease 40.0
texture "engine-leap1a.png"
texrep 1 1
numvert 56
-5.36544 -1.38745 6.48767
-5.58537 -1.40004 6.51961
-5.89058 -1.42088 6.54841
-5.3821 -1.34082 6.43333
-5.60021 -1.35352 6.46475
-5.90234 -1.37166 6.49624
-5.36522 -1.38064 6.49365
-5.89036 -1.41406 6.55439
-5.58514 -1.39322 6.52558
-5.38187 -1.334 6.43931
-5.90211 -1.36484 6.50222
-5.59998 -1.3467 6.47073
-5.28901 -1.37521 6.46328
-5.29742 -1.38317 6.47371
-6.05451 -1.43226 6.55571
-6.0674 -1.42517 6.54833
-6.07481 -1.39031 6.51341
-6.06527 -1.38175 6.50493
-6.06718 -1.41835 6.5543
-6.05428 -1.42545 6.56169
-6.06504 -1.37493 6.51091
-6.07458 -1.3835 6.51939
-5.31444 -1.33587 6.42032
-5.3008 -1.34233 6.42636
-5.29719 -1.37636 6.47969
-5.28878 -1.36839 6.46926
-5.30058 -1.33551 6.43234
-5.31421 -1.32905 6.42629
-5.36544 -1.38745 4.7736
-5.58537 -1.40004 4.74166
-5.89058 -1.42088 4.71285
-5.3821 -1.34082 4.82793
-5.60021 -1.35352 4.79651
-5.90234 -1.37166 4.76502
-5.36522 -1.38064 4.76762
-5.89036 -1.41406 4.70687
-5.58514 -1.39322 4.73568
-5.38187 -1.334 4.82195
-5.90211 -1.36484 4.75904
-5.59998 -1.3467 4.79054
-5.28901 -1.37521 4.79798
-5.29742 -1.38317 4.78756
-6.05451 -1.43226 4.70555
-6.0674 -1.42517 4.71294
-6.07481 -1.39031 4.74785
-6.06527 -1.38175 4.75633
-6.06718 -1.41835 4.70696
-6.05428 -1.42545 4.69958
-6.06504 -1.37493 4.75035
-6.07458 -1.3835 4.74187
-5.31444 -1.33587 4.84095
-5.3008 -1.34233 4.8349
-5.29719 -1.37636 4.78158
-5.28878 -1.36839 4.79201
-5.30058 -1.33551 4.82892
-5.31421 -1.32905 4.83497
numsurf 36
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
2 0.156482 0.623991 917 0.156482 0.623991
1 0.123384 0.624027 916 0.123384 0.624027
8 0.123514 0.623013 923 0.123514 0.623013
7 0.155977 0.622984 922 0.155977 0.622984
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
3 0.100318 0.613748 918 0.100318 0.613748
4 0.12407 0.614572 919 0.12407 0.614572
11 0.124187 0.615286 926 0.124187 0.615286
9 0.10089 0.614613 924 0.10089 0.614613
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
4 0.12407 0.614572 919 0.12407 0.614572
5 0.156848 0.614608 920 0.156848 0.614608
10 0.156335 0.615316 925 0.156335 0.615316
11 0.124187 0.615286 926 0.124187 0.615286
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
1 0.123384 0.624027 916 0.123384 0.624027
0 0.099433 0.62319 915 0.099433 0.62319
6 0.100023 0.622329 921 0.100023 0.622329
8 0.123514 0.623013 923 0.123514 0.623013
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
21 0.174735 0.61585 936 0.174735 0.61585
16 0.175608 0.615261 931 0.175608 0.615261
15 0.175425 0.621697 930 0.175425 0.621697
18 0.174557 0.621109 933 0.174557 0.621109
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
12 0.090914 0.620953 927 0.090914 0.620953
23 0.091558 0.614428 938 0.091558 0.614428
26 0.092298 0.615169 941 0.092298 0.615169
25 0.091667 0.620501 940 0.091667 0.620501
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
22 0.092907 0.613091 937 0.092907 0.613091
3 0.100318 0.613748 918 0.100318 0.613748
9 0.10089 0.614613 924 0.10089 0.614613
27 0.093622 0.614076 942 0.093622 0.614076
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
5 0.156848 0.614608 920 0.156848 0.614608
17 0.174438 0.61386 932 0.174438 0.61386
20 0.173588 0.614704 935 0.173588 0.614704
10 0.156335 0.615316 925 0.156335 0.615316
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 6 refs 6
7 0.155977 0.622984 922 0.155977 0.622984
10 0.156335 0.615316 925 0.156335 0.615316
20 0.173588 0.614704 935 0.173588 0.614704
21 0.174735 0.61585 936 0.174735 0.61585
18 0.174557 0.621109 933 0.174557 0.621109
19 0.173329 0.622341 934 0.173329 0.622341
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 6 refs 6
24 0.092711 0.621771 939 0.092711 0.621771
25 0.091667 0.620501 940 0.091667 0.620501
26 0.092298 0.615169 941 0.092298 0.615169
27 0.093622 0.614076 942 0.093622 0.614076
9 0.10089 0.614613 924 0.10089 0.614613
6 0.100023 0.622329 921 0.100023 0.622329
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
14 0.174174 0.623205 929 0.174174 0.623205
2 0.156482 0.623991 917 0.156482 0.623991
7 0.155977 0.622984 922 0.155977 0.622984
19 0.173329 0.622341 934 0.173329 0.622341
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
11 0.124187 0.615286 926 0.124187 0.615286
10 0.156335 0.615316 925 0.156335 0.615316
7 0.155977 0.622984 922 0.155977 0.622984
8 0.123514 0.623013 923 0.123514 0.623013
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
9 0.10089 0.614613 924 0.10089 0.614613
11 0.124187 0.615286 926 0.124187 0.615286
8 0.123514 0.623013 923 0.123514 0.623013
6 0.100023 0.622329 921 0.100023 0.622329
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
14 0.174174 0.623205 929 0.174174 0.623205
19 0.173329 0.622341 934 0.173329 0.622341
18 0.174557 0.621109 933 0.174557 0.621109
15 0.175425 0.621697 930 0.175425 0.621697
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
16 0.175608 0.615261 931 0.175608 0.615261
21 0.174735 0.61585 936 0.174735 0.61585
20 0.173588 0.614704 935 0.173588 0.614704
17 0.174438 0.61386 932 0.174438 0.61386
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
22 0.092907 0.613091 937 0.092907 0.613091
27 0.093622 0.614076 942 0.093622 0.614076
26 0.092298 0.615169 941 0.092298 0.615169
23 0.091558 0.614428 938 0.091558 0.614428
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
12 0.090914 0.620953 927 0.090914 0.620953
25 0.091667 0.620501 940 0.091667 0.620501
24 0.092711 0.621771 939 0.092711 0.621771
13 0.091978 0.622507 928 0.091978 0.622507
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
0 0.099433 0.62319 915 0.099433 0.62319
13 0.091978 0.622507 928 0.091978 0.622507
24 0.092711 0.621771 939 0.092711 0.621771
6 0.100023 0.622329 921 0.100023 0.622329
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
30 0.068591 0.623991 945 0.068591 0.623991
35 0.068086 0.622984 950 0.068086 0.622984
36 0.035623 0.623013 951 0.035623 0.623013
29 0.035493 0.624027 944 0.035493 0.624027
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
31 0.012427 0.613748 946 0.012427 0.613748
37 0.012999 0.614613 952 0.012999 0.614613
39 0.036296 0.615286 954 0.036296 0.615286
32 0.036179 0.614572 947 0.036179 0.614572
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
32 0.036179 0.614572 947 0.036179 0.614572
39 0.036296 0.615286 954 0.036296 0.615286
38 0.068444 0.615316 953 0.068444 0.615316
33 0.068957 0.614608 948 0.068957 0.614608
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
29 0.035493 0.624027 944 0.035493 0.624027
36 0.035623 0.623013 951 0.035623 0.623013
34 0.012132 0.622329 949 0.012132 0.622329
28 0.011542 0.62319 943 0.011542 0.62319
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
49 0.086844 0.61585 964 0.086844 0.61585
46 0.086665 0.621109 961 0.086665 0.621109
43 0.087534 0.621697 958 0.087534 0.621697
44 0.087717 0.615262 959 0.087717 0.615262
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
40 0.003023 0.620953 955 0.003023 0.620953
53 0.003776 0.620501 968 0.003776 0.620501
54 0.004407 0.615169 969 0.004407 0.615169
51 0.003667 0.614428 966 0.003667 0.614428
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
50 0.005016 0.613091 965 0.005016 0.613091
55 0.005731 0.614076 970 0.005731 0.614076
37 0.012999 0.614613 952 0.012999 0.614613
31 0.012427 0.613748 946 0.012427 0.613748
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
33 0.068957 0.614608 948 0.068957 0.614608
38 0.068444 0.615316 953 0.068444 0.615316
48 0.085697 0.614704 963 0.085697 0.614704
45 0.086547 0.61386 960 0.086547 0.61386
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 6 refs 6
35 0.068086 0.622984 950 0.068086 0.622984
47 0.085438 0.622341 962 0.085438 0.622341
46 0.086665 0.621109 961 0.086665 0.621109
49 0.086844 0.61585 964 0.086844 0.61585
48 0.085697 0.614704 963 0.085697 0.614704
38 0.068444 0.615316 953 0.068444 0.615316
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 6 refs 6
52 0.00482 0.621771 967 0.00482 0.621771
34 0.012132 0.622329 949 0.012132 0.622329
37 0.012999 0.614613 952 0.012999 0.614613
55 0.005731 0.614076 970 0.005731 0.614076
54 0.004407 0.615169 969 0.004407 0.615169
53 0.003776 0.620501 968 0.003776 0.620501
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
42 0.086283 0.623205 957 0.086283 0.623205
47 0.085438 0.622341 962 0.085438 0.622341
35 0.068086 0.622984 950 0.068086 0.622984
30 0.068591 0.623991 945 0.068591 0.623991
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
39 0.036296 0.615286 954 0.036296 0.615286
36 0.035623 0.623013 951 0.035623 0.623013
35 0.068086 0.622984 950 0.068086 0.622984
38 0.068444 0.615316 953 0.068444 0.615316
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
37 0.012999 0.614613 952 0.012999 0.614613
34 0.012132 0.622329 949 0.012132 0.622329
36 0.035623 0.623013 951 0.035623 0.623013
39 0.036296 0.615286 954 0.036296 0.615286
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
42 0.086283 0.623205 957 0.086283 0.623205
43 0.087534 0.621697 958 0.087534 0.621697
46 0.086665 0.621109 961 0.086665 0.621109
47 0.085438 0.622341 962 0.085438 0.622341
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
44 0.087717 0.615262 959 0.087717 0.615262
45 0.086547 0.61386 960 0.086547 0.61386
48 0.085697 0.614704 963 0.085697 0.614704
49 0.086844 0.61585 964 0.086844 0.61585
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
50 0.005016 0.613091 965 0.005016 0.613091
51 0.003667 0.614428 966 0.003667 0.614428
54 0.004407 0.615169 969 0.004407 0.615169
55 0.005731 0.614076 970 0.005731 0.614076
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
40 0.003023 0.620953 955 0.003023 0.620953
41 0.004087 0.622507 956 0.004087 0.622507
52 0.00482 0.621771 967 0.00482 0.621771
53 0.003776 0.620501 968 0.003776 0.620501
SURF 0X10 SURF 0X10
mat 0 mat 0
refs 4 refs 4
28 0.011542 0.62319 943 0.011542 0.62319
34 0.012132 0.622329 949 0.012132 0.622329
52 0.00482 0.621771 967 0.00482 0.621771
41 0.004087 0.622507 956 0.004087 0.622507
kids 0 kids 0
OBJECT poly OBJECT poly
name "EngineLEAPL.Inner" name "EngineLEAPL.Inner"

View file

@ -12658,143 +12658,143 @@ numsurf 20
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
1 0.831933 0.473945 1 0.831933 0.783971
0 0.831933 0.411533 0 0.831933 0.721559
5 0.898381 0.411533 5 0.898381 0.721559
2 0.898381 0.473945 2 0.898381 0.783971
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
0 0.831933 0.411533 0 0.831933 0.721559
40 0.831933 0.38219 40 0.831933 0.692216
37 0.898381 0.389125 37 0.898381 0.699151
5 0.898381 0.411533 5 0.898381 0.721559
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
7 0.831933 0.72174 7 0.831933 0.411714
6 0.831933 0.784152 6 0.831933 0.474126
3 0.898381 0.784152 3 0.898381 0.474126
4 0.898381 0.72174 4 0.898381 0.411714
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
6 0.831933 0.784152 6 0.831933 0.474126
22 0.831933 0.79733 22 0.831933 0.487304
16 0.898381 0.799399 16 0.898381 0.489373
3 0.898381 0.784152 3 0.898381 0.474126
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
2 0.898381 0.473945 2 0.898381 0.783971
5 0.898381 0.411533 5 0.898381 0.721559
28 0.961802 0.411533 28 0.961802 0.721559
29 0.961802 0.473945 29 0.961802 0.783971
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
4 0.898381 0.72174 4 0.898381 0.411714
3 0.898381 0.784152 3 0.898381 0.474126
33 0.961798 0.784152 33 0.961798 0.474126
24 0.961798 0.72174 24 0.961798 0.411714
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
3 0.898381 0.784152 3 0.898381 0.474126
16 0.898381 0.799399 16 0.898381 0.489373
32 0.961798 0.79932 32 0.961798 0.489294
33 0.961798 0.784152 33 0.961798 0.474126
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
9 0.831933 0.474028 9 0.831933 0.784054
8 0.831933 0.411615 8 0.831933 0.721641
13 0.898381 0.411615 13 0.898381 0.721641
10 0.898381 0.474028 10 0.898381 0.784054
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
8 0.831933 0.411615 8 0.831933 0.721641
42 0.831933 0.382274 42 0.831933 0.6923
38 0.898381 0.389209 38 0.898381 0.699234
13 0.898381 0.411615 13 0.898381 0.721641
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
15 0.831933 0.721657 15 0.831933 0.411631
14 0.831933 0.784069 14 0.831933 0.474043
11 0.898381 0.784069 11 0.898381 0.474043
12 0.898381 0.721657 12 0.898381 0.411631
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
14 0.831933 0.784069 14 0.831933 0.474043
21 0.831933 0.797244 21 0.831933 0.487218
23 0.898381 0.799313 23 0.898381 0.489287
11 0.898381 0.784069 11 0.898381 0.474043
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
10 0.898381 0.474028 10 0.898381 0.784054
13 0.898381 0.411615 13 0.898381 0.721641
26 0.961802 0.411615 26 0.961802 0.721641
27 0.961802 0.474028 27 0.961802 0.784054
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
12 0.898381 0.721657 12 0.898381 0.411631
11 0.898381 0.784069 11 0.898381 0.474043
31 0.961798 0.784069 31 0.961798 0.474043
35 0.961798 0.721657 35 0.961798 0.411631
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
11 0.898381 0.784069 11 0.898381 0.474043
23 0.898381 0.799313 23 0.898381 0.489287
30 0.961798 0.799234 30 0.961798 0.489208
31 0.961798 0.784069 31 0.961798 0.474043
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
18 0.898381 0.489191 18 0.898381 0.799217
20 0.831933 0.487231 20 0.831933 0.797257
1 0.831933 0.473945 1 0.831933 0.783971
2 0.898381 0.473945 2 0.898381 0.783971
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
17 0.898381 0.489274 17 0.898381 0.7993
19 0.831933 0.487314 19 0.831933 0.79734
9 0.831933 0.474028 9 0.831933 0.784054
10 0.898381 0.474028 10 0.898381 0.784054
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
29 0.961802 0.473945 29 0.961802 0.783971
25 0.961802 0.489112 25 0.961802 0.799138
18 0.898381 0.489191 18 0.898381 0.799217
2 0.898381 0.473945 2 0.898381 0.783971
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
27 0.961802 0.474028 27 0.961802 0.784054
34 0.961802 0.489195 34 0.961802 0.799221
17 0.898381 0.489274 17 0.898381 0.7993
10 0.898381 0.474028 10 0.898381 0.784054
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
43 0.898381 0.699247 43 0.898381 0.389221
36 0.831933 0.692311 36 0.831933 0.382285
15 0.831933 0.721657 15 0.831933 0.411631
12 0.898381 0.721657 12 0.898381 0.411631
SURF 0X10 SURF 0X10
mat 3 mat 3
refs 4 refs 4
39 0.898381 0.699333 39 0.898381 0.389307
41 0.831933 0.692398 41 0.831933 0.382372
7 0.831933 0.72174 7 0.831933 0.411714
4 0.898381 0.72174 4 0.898381 0.411714
kids 0 kids 0
OBJECT poly OBJECT poly
name "EngineIAEV2500R" name "EngineIAEV2500R"

View file

@ -0,0 +1,359 @@
var showLeft = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_L1"].show();
} else {
obj["Simple_L1"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_L2"].show();
} else {
obj["Simple_L2"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_L3"].show();
} else {
obj["Simple_L3"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_L4"].show();
} else {
obj["Simple_L4"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_L5"].show();
} else {
obj["Simple_L5"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_L6"].show();
} else {
obj["Simple_L6"].hide();
}
}
};
var showLeftS = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_L1S"].show();
} else {
obj["Simple_L1S"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_L2S"].show();
} else {
obj["Simple_L2S"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_L3S"].show();
} else {
obj["Simple_L3S"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_L4S"].show();
} else {
obj["Simple_L4S"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_L5S"].show();
} else {
obj["Simple_L5S"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_L6S"].show();
} else {
obj["Simple_L6S"].hide();
}
}
};
var showCenter = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_C1"].show();
} else {
obj["Simple_C1"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_C2"].show();
} else {
obj["Simple_C2"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_C3"].show();
} else {
obj["Simple_C3"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_C4"].show();
} else {
obj["Simple_C4"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_C5"].show();
} else {
obj["Simple_C5"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_C6"].show();
} else {
obj["Simple_C6"].hide();
}
}
};
var showCenterS = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_C1S"].show();
} else {
obj["Simple_C1S"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_C2S"].show();
} else {
obj["Simple_C2S"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_C3S"].show();
} else {
obj["Simple_C3S"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_C4S"].show();
} else {
obj["Simple_C4S"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_C5S"].show();
} else {
obj["Simple_C5S"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_C6S"].show();
} else {
obj["Simple_C6S"].hide();
}
}
};
var showRight = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_R1"].show();
} else {
obj["Simple_R1"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_R2"].show();
} else {
obj["Simple_R2"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_R3"].show();
} else {
obj["Simple_R3"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_R4"].show();
} else {
obj["Simple_R4"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_R5"].show();
} else {
obj["Simple_R5"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_R6"].show();
} else {
obj["Simple_R6"].hide();
}
}
};
var showRightS = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_R1S"].show();
} else {
obj["Simple_R1S"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_R2S"].show();
} else {
obj["Simple_R2S"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_R3S"].show();
} else {
obj["Simple_R3S"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_R4S"].show();
} else {
obj["Simple_R4S"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_R5S"].show();
} else {
obj["Simple_R5S"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_R6S"].show();
} else {
obj["Simple_R6S"].hide();
}
}
};
var showLeftArrow = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_L1_Arrow"].show();
} else {
obj["Simple_L1_Arrow"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_L2_Arrow"].show();
} else {
obj["Simple_L2_Arrow"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_L3_Arrow"].show();
} else {
obj["Simple_L3_Arrow"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_L4_Arrow"].show();
} else {
obj["Simple_L4_Arrow"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_L5_Arrow"].show();
} else {
obj["Simple_L5_Arrow"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_L6_Arrow"].show();
} else {
obj["Simple_L6_Arrow"].hide();
}
}
};
var showRightArrow = func (obj, a, b, c, d, e, f) {
if (a != 0) {
if (a >= 1) {
obj["Simple_R1_Arrow"].show();
} else {
obj["Simple_R1_Arrow"].hide();
}
}
if (b != 0) {
if (b >= 1) {
obj["Simple_R2_Arrow"].show();
} else {
obj["Simple_R2_Arrow"].hide();
}
}
if (c != 0) {
if (c >= 1) {
obj["Simple_R3_Arrow"].show();
} else {
obj["Simple_R3_Arrow"].hide();
}
}
if (d != 0) {
if (d >= 1) {
obj["Simple_R4_Arrow"].show();
} else {
obj["Simple_R4_Arrow"].hide();
}
}
if (e != 0) {
if (e >= 1) {
obj["Simple_R5_Arrow"].show();
} else {
obj["Simple_R5_Arrow"].hide();
}
}
if (f != 0) {
if (f >= 1) {
obj["Simple_R6_Arrow"].show();
} else {
obj["Simple_R6_Arrow"].hide();
}
}
};

File diff suppressed because it is too large Load diff

View file

@ -225,7 +225,7 @@ canvas.NavDisplay.newMFD = func(canvas_group, parent=nil, nd_options=nil, update
# anything that needs updatecenter called, should be added to the vector here # anything that needs updatecenter called, should be added to the vector here
# #
foreach(var element; ["staFromL2","staToL2","staFromR2","staToR2", foreach(var element; ["staFromL2","staToL2","staFromR2","staToR2",
"hdgTrk","trkInd","hdgBug","HdgBugCRT","TrkBugLCD","HdgBugLCD","curHdgPtr", "hdgTrk","hdgBug","HdgBugCRT","TrkBugLCD","HdgBugLCD","curHdgPtr",
"HdgBugCRT2","TrkBugLCD2","HdgBugLCD2","hdgBug2","selHdgLine","selHdgLine2","curHdgPtr2", "HdgBugCRT2","TrkBugLCD2","HdgBugLCD2","hdgBug2","selHdgLine","selHdgLine2","curHdgPtr2",
"staToL","staFromL","staToR","staFromR"] ) "staToL","staFromL","staToR","staFromR"] )
me.symbols[element] = me.nd.getElementById(element).updateCenter(); me.symbols[element] = me.nd.getElementById(element).updateCenter();
@ -613,13 +613,11 @@ canvas.NavDisplay.update = func() # FIXME: This stuff is still too aircraft spec
if((me.in_mode("toggle_display_mode", ["MAP"]) and me.get_switch("toggle_display_type") == "CRT") if((me.in_mode("toggle_display_mode", ["MAP"]) and me.get_switch("toggle_display_type") == "CRT")
or (me.get_switch("toggle_track_heading") and me.get_switch("toggle_display_type") == "LCD")) or (me.get_switch("toggle_track_heading") and me.get_switch("toggle_display_type") == "LCD"))
{ {
me.symbols.trkInd.setRotation(0);
me.symbols.curHdgPtr.setRotation((userHdg-userTrk)*D2R); me.symbols.curHdgPtr.setRotation((userHdg-userTrk)*D2R);
me.symbols.curHdgPtr2.setRotation((userHdg-userTrk)*D2R); me.symbols.curHdgPtr2.setRotation((userHdg-userTrk)*D2R);
} }
else else
{ {
me.symbols.trkInd.setRotation((userTrk-userHdg)*D2R);
me.symbols.curHdgPtr.setRotation(0); me.symbols.curHdgPtr.setRotation(0);
me.symbols.curHdgPtr2.setRotation(0); me.symbols.curHdgPtr2.setRotation(0);
} }
@ -656,10 +654,6 @@ canvas.NavDisplay.update = func() # FIXME: This stuff is still too aircraft spec
var adf0hdg = getprop("/instrumentation/adf/indicated-bearing-deg"); var adf0hdg = getprop("/instrumentation/adf/indicated-bearing-deg");
var adf1hdg = getprop("/instrumentation/adf[1]/indicated-bearing-deg"); var adf1hdg = getprop("/instrumentation/adf[1]/indicated-bearing-deg");
if(!me.get_switch("toggle_centered")) { if(!me.get_switch("toggle_centered")) {
if(me.in_mode("toggle_display_mode", ["PLAN"]) or (me.adirs_property.getValue() != 1 or (me.change_phase == 1) and (adirs_3.getValue() != 1 or att_switch.getValue() != me.attitude_heading_setting)))
me.symbols.trkInd.hide();
else
me.symbols.trkInd.show();
if((getprop("/instrumentation/nav[2]/in-range") and me.get_switch("toggle_lh_vor_adf") == 1)) { if((getprop("/instrumentation/nav[2]/in-range") and me.get_switch("toggle_lh_vor_adf") == 1)) {
me.symbols.staToL.setColor(0.195,0.96,0.097); me.symbols.staToL.setColor(0.195,0.96,0.097);
me.symbols.staFromL.setColor(0.195,0.96,0.097); me.symbols.staFromL.setColor(0.195,0.96,0.097);
@ -713,7 +707,6 @@ canvas.NavDisplay.update = func() # FIXME: This stuff is still too aircraft spec
} }
me.symbols.selHdgLine.setVisible(staPtrVis and hdg_bug_active); me.symbols.selHdgLine.setVisible(staPtrVis and hdg_bug_active);
} else { } else {
me.symbols.trkInd.hide();
if((getprop("/instrumentation/nav[2]/in-range") and me.get_switch("toggle_lh_vor_adf") == 1)) { if((getprop("/instrumentation/nav[2]/in-range") and me.get_switch("toggle_lh_vor_adf") == 1)) {
me.symbols.staFromL2.setColor(0.195,0.96,0.097); me.symbols.staFromL2.setColor(0.195,0.96,0.097);
me.symbols.staToL2.setColor(0.195,0.96,0.097); me.symbols.staToL2.setColor(0.195,0.96,0.097);

View file

@ -23,8 +23,7 @@ var init = func {
var draw = func{ var draw = func{
if(me.decel_grp != nil){ if(me.decel_grp != nil){
var spd_ctrl = getprop(me.options.spd_ctrl); var spd_ctrl = getprop(me.options.spd_ctrl);
var spd_managed = (spd_ctrl == me.options.managed_val); if(spd_ctrl)
if(spd_managed)
me.decel_grp.setColor(me.style.managed_color); me.decel_grp.setColor(me.style.managed_color);
else else
me.decel_grp.setColor(me.style.selected_color); me.decel_grp.setColor(me.style.selected_color);

View file

@ -82,7 +82,7 @@ var draw = func{
var wp_group = me.element; var wp_group = me.element;
var alt = me.model.alt; var alt = me.model.alt;
var i = me.model.idx; var i = me.model.idx;
var vnav_actv = getprop(me.options.ver_ctrl) == me.options.managed_val; var vnav_actv = getprop(me.options.spd_ctrl) == 1;
var curwp = getprop(me.options.current_wp); var curwp = getprop(me.options.current_wp);
if(alt > 0){ if(alt > 0){
var wp_d = me.model.wp.distance_along_route; var wp_d = me.model.wp.distance_along_route;

View file

@ -1183,43 +1183,29 @@
x="198.86594" x="198.86594"
y="648.10144">99</tspan></text> y="648.10144">99</tspan></text>
<g <path
id="trkInd" style="display:inline;fill:none;stroke:#0dc04b;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:label="#g3107" d="M 494.187,150.9257 512.25,179.3894 530.312,150.9257 512.25,122.462 Z"
inkscape:transform-center-y="-318.607" id="curTrkPtr"
inkscape:transform-center-x="-0.165"><path inkscape:connector-curvature="0"
inkscape:transform-center-y="-715.775" sodipodi:nodetypes="cccc"
inkscape:label="#path3882" inkscape:label="#path3882"
sodipodi:nodetypes="cccc" inkscape:transform-center-y="-673.07581"
inkscape:connector-curvature="0" inkscape:transform-center-x="-0.25" /><path
id="curTrkPtr" sodipodi:nodetypes="cc"
d="M 494.187,150.9257 512.25,179.3894 530.312,150.9257 512.25,122.462 Z" inkscape:connector-curvature="0"
style="display:inline;fill:none;stroke:#0dc04b;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /><path id="trkline"
inkscape:label="#path6714" d="M 512,179.04645 V 777.94594"
inkscape:transform-center-y="-436.38973" style="fill:none;stroke:#66b266;stroke-width:5.12175989;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#66b266;stroke-width:5.12176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" inkscape:transform-center-y="-345.50518"
d="M 512,179.04645 V 777.94594" inkscape:label="#path6714"
id="trkline" inkscape:transform-center-x="-0.001953124" /><path
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" /><path
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 497.671,651.001 h 27.578"
id="path3823"
inkscape:connector-curvature="0" /><path
inkscape:connector-curvature="0"
id="path3825"
d="m 497.671,478.113 h 27.578"
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /><path
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 498.171,306.64 h 27.578"
id="path3827"
inkscape:connector-curvature="0" /><path
sodipodi:nodetypes="cscc" sodipodi:nodetypes="cscc"
inkscape:connector-curvature="0" inkscape:connector-curvature="0"
id="altArc" id="altArc"
d="m 351.124,888.591 c 0,0 72.1,-39.455 161.041,-39.455 88.941,0 161.041,39.455 161.041,39.455 v 0" d="m 351.124,888.591 c 0,0 72.1,-39.455 161.041,-39.455 88.941,0 161.041,39.455 161.041,39.455 v 0"
style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0" style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0"
inkscape:label="#path3888-1" /></g> inkscape:label="#path3888-1" />
<g <g
inkscape:transform-center-x="-0.198874" inkscape:transform-center-x="-0.198874"
inkscape:transform-center-y="4.4952743" inkscape:transform-center-y="4.4952743"
@ -1614,22 +1600,24 @@
inkscape:connector-curvature="0" inkscape:connector-curvature="0"
id="path4921" id="path4921"
d="m 97.36195,-183.49186 34.40958,0.79658 v 0" d="m 97.36195,-183.49186 34.40958,0.79658 v 0"
style="fill:none;stroke:#ff00ff;stroke-width:6.72142;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /></g><g style="fill:none;stroke:#ff00ff;stroke-width:6.72142;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /></g>
id="trkInd2" <path
inkscape:transform-center-y="-221.51123"><path id="curTrkPtr2"
id="curTrkPtr2" d="M 494.187,114.9257 512.25,143.3894 530.312,114.9257 512.25,86.462 Z"
d="M 494.187,114.9257 512.25,143.3894 530.312,114.9257 512.25,86.462 Z" style="display:inline;fill:none;stroke:#0dc04b;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="display:inline;fill:none;stroke:#0dc04b;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" inkscape:connector-curvature="0"
inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccc"
sodipodi:nodetypes="cccccccc" inkscape:label="#path3998"
inkscape:label="#path3998" /><path inkscape:transform-center-x="-0.28439381"
sodipodi:nodetypes="cc" inkscape:transform-center-y="-400.24318" /><path
inkscape:connector-curvature="0" inkscape:label="#path6714"
id="trkline2" inkscape:transform-center-y="-195.62267"
d="M 512,143.84995 V 525.93899" style="fill:none;stroke:#66b266;stroke-width:4.09095001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;stroke:#66b266;stroke-width:4.09095;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 512,143.84995 V 525.93899"
inkscape:transform-center-y="-278.41021" id="trkline2"
inkscape:label="#path6714" /></g><path inkscape:connector-curvature="0"
sodipodi:nodetypes="cc"
inkscape:transform-center-x="-0.16436971" /><path
id="aplSymVor" id="aplSymVor"
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 523.994,501.789 v 58 h 51.042 m -51.042,0 v 57 h 18.782 m -43.653,-115 v 58 h -50.158 m 50.158,0 v 57 h -19.136" d="m 523.994,501.789 v 58 h 51.042 m -51.042,0 v 57 h 18.782 m -43.653,-115 v 58 h -50.158 m 50.158,0 v 57 h -19.136"

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 149 KiB

View file

@ -529,7 +529,7 @@ canvas.NDStyles["Airbus"] = {
var lat_ctrl = getprop(me.options.lat_ctrl); var lat_ctrl = getprop(me.options.lat_ctrl);
var is_managed = (lat_ctrl == me.options.managed_val); var is_managed = (lat_ctrl == me.options.managed_val);
var is_active = getprop(me.options.fplan_active); var is_active = getprop(me.options.fplan_active);
(is_managed and is_active ? [] : [32, 16]); (is_managed and is_active ? [] : [12, 12]);
}, },
line_dash_alternate_active: [32,16], line_dash_alternate_active: [32,16],
line_dash_temporary: [32,16], line_dash_temporary: [32,16],
@ -561,6 +561,7 @@ canvas.NDStyles["Airbus"] = {
"fplan_active", "fplan_active",
"lat_ctrl", "lat_ctrl",
"ver_ctrl", "ver_ctrl",
"spd_ctrl",
"current_wp", "current_wp",
"wp_count", "wp_count",
"dep_rwy", "dep_rwy",
@ -758,21 +759,14 @@ canvas.NDStyles["Airbus"] = {
id: "tas", id: "tas",
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
predicate: func(nd) nd.aircraft_source.get_spd() > 100, predicate: func(nd) getprop("/instrumentation/airspeed-indicator/true-speed-kt") >= 60,
is_true: func(nd) { is_true: func(nd) {
nd.symbols.tas.setText(sprintf("%3.0f",getprop("/velocities/TAS") )); nd.symbols.tas.setText(sprintf("%3.0f",getprop("/instrumentation/airspeed-indicator/true-speed-kt")));
nd.symbols.tas.show(); nd.symbols.tas.show();
}, },
is_false: func(nd) nd.symbols.tas.hide(), is_false: func(nd){
}, nd.symbols.tas.setText("---");
}, }
{
id: "tasLbl",
impl: {
init: func(nd,symbol),
predicate: func(nd) nd.aircraft_source.get_spd() > 100,
is_true: func(nd) nd.symbols.tasLbl.show(),
is_false: func(nd) nd.symbols.tasLbl.hide(),
}, },
}, },
{ {
@ -1006,12 +1000,6 @@ canvas.NDStyles["Airbus"] = {
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
common: func(nd) nd.symbols.gs.setText(sprintf("%3.0f",nd.aircraft_source.get_gnd_spd() )), common: func(nd) nd.symbols.gs.setText(sprintf("%3.0f",nd.aircraft_source.get_gnd_spd() )),
predicate: func(nd) nd.aircraft_source.get_gnd_spd() >= 30,
is_true: func(nd) {
#nd.symbols.gs.show();
nd.symbols.gs.setFontSize(36);
},
is_false: func(nd) {},#nd.symbols.gs.hide(),
}, },
}, },
{ {
@ -1333,36 +1321,47 @@ canvas.NDStyles["Airbus"] = {
is_false: func(nd) nd.symbols.dme.hide(), is_false: func(nd) nd.symbols.dme.hide(),
}, },
}, },
{
id:"curTrkPtr",
impl: {
init: func(nd,symbol),
predicate: func(nd) (nd.in_mode("toggle_display_mode", ["APP","VOR","MAP"]) and !nd.get_switch("toggle_centered")
and (nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))
and abs(nd.aircraft_source.get_trk_mag() - nd.aircraft_source.get_hdg_mag()) <= 42),
is_true: func(nd) {
nd.symbols.curTrkPtr.setRotation((nd.aircraft_source.get_trk_mag()-nd.aircraft_source.get_hdg_mag())*D2R);
nd.symbols.curTrkPtr.show();
},
is_false: func(nd) nd.symbols.curTrkPtr.hide(),
},
},
{ {
id:"trkline", id:"trkline",
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
predicate: func(nd){ predicate: func(nd) (nd.get_switch("toggle_display_mode") == "MAP" and
nd.get_switch("toggle_display_mode") == "MAP" and !nd.get_switch("toggle_centered") !nd.get_switch("toggle_centered") and (nd.change_phase != 1) and
and (nd.change_phase != 1) getprop(nd.options.defaults.lat_ctrl) == 0 and abs(nd.aircraft_source.get_trk_mag() - nd.aircraft_source.get_hdg_mag()) <= 42 and
and ( (nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))),
getprop(nd.options.defaults.lat_ctrl) != nd.options.defaults.managed_val or
nd.get_switch("toggle_trk_line")
)
},
is_true: func(nd) { is_true: func(nd) {
nd.symbols.trkline.setRotation((nd.aircraft_source.get_trk_mag()-nd.aircraft_source.get_hdg_mag())*D2R);
nd.symbols.trkline.show(); nd.symbols.trkline.show();
}, },
is_false: func(nd) nd.symbols.trkline.hide(), is_false: func(nd) nd.symbols.trkline.hide(),
}, },
}, },
{ {
id:"trkInd2", id:"curTrkPtr2",
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
predicate: func(nd) (nd.in_mode("toggle_display_mode", ["APP","VOR","MAP"]) and nd.get_switch("toggle_centered") predicate: func(nd) (nd.in_mode("toggle_display_mode", ["APP","VOR","MAP"]) and nd.get_switch("toggle_centered")
and (nd.change_phase != 1) and (nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))
and (nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))), and abs(nd.aircraft_source.get_trk_mag() - nd.aircraft_source.get_hdg_mag()) <= 42),
is_true: func(nd) { is_true: func(nd) {
nd.symbols.trkInd2.show(); nd.symbols.curTrkPtr2.setRotation((nd.aircraft_source.get_trk_mag()-nd.aircraft_source.get_hdg_mag())*D2R);
nd.symbols.trkInd2.setRotation((nd.aircraft_source.get_trk_mag()-nd.aircraft_source.get_hdg_mag())*D2R); nd.symbols.curTrkPtr2.show();
}, },
is_false: func(nd) nd.symbols.trkInd2.hide(), is_false: func(nd) nd.symbols.curTrkPtr2.hide(),
}, },
}, },
{ {
@ -1371,9 +1370,10 @@ canvas.NDStyles["Airbus"] = {
init: func(nd,symbol), init: func(nd,symbol),
predicate: func(nd) (nd.get_switch("toggle_display_mode") == "MAP" and predicate: func(nd) (nd.get_switch("toggle_display_mode") == "MAP" and
nd.get_switch("toggle_centered") and (nd.change_phase != 1) and nd.get_switch("toggle_centered") and (nd.change_phase != 1) and
getprop(nd.options.defaults.lat_ctrl) != nd.options.defaults.managed_val and getprop(nd.options.defaults.lat_ctrl) == 0 and abs(nd.aircraft_source.get_trk_mag() - nd.aircraft_source.get_hdg_mag()) <= 42 and
(nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))), (nd.adirs_property.getValue() == 1 or (adirs_3.getValue() == 1 and att_switch.getValue() == nd.attitude_heading_setting))),
is_true: func(nd) { is_true: func(nd) {
nd.symbols.trkline2.setRotation((nd.aircraft_source.get_trk_mag()-nd.aircraft_source.get_hdg_mag())*D2R);
nd.symbols.trkline2.show(); nd.symbols.trkline2.show();
}, },
is_false: func(nd) nd.symbols.trkline2.hide(), is_false: func(nd) nd.symbols.trkline2.hide(),
@ -1530,35 +1530,24 @@ canvas.NDStyles["Airbus"] = {
id:"wind", id:"wind",
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
predicate: ALWAYS, predicate: func(nd) (getprop("/instrumentation/airspeed-indicator/true-speed-kt") >= 100),
is_true: func(nd) { is_true: func(nd) {
var windDir = getprop("environment/wind-from-heading-deg"); var windDir = pts.Instrumentation.PFD.windDirection.getValue() or 0;
if(!nd.get_switch("toggle_true_north")) nd.symbols.wind.setText(sprintf("%03.0f / %02.0f",windDir,pts.Instrumentation.PFD.windSpeed.getValue() or 0));
windDir = windDir + getprop("environment/magnetic-variation-deg");
nd.symbols.wind.setText(sprintf("%03.0f / %02.0f",windDir,getprop("environment/wind-speed-kt")));
}, },
is_false: NOTHING, is_false: func(nd) {
nd.symbols.wind.setText("---/--");
}
}, },
}, },
{ {
id:"windArrow", id:"windArrow",
impl: { impl: {
init: func(nd,symbol), init: func(nd,symbol),
predicate: func(nd) (!(nd.in_mode("toggle_display_mode", ["PLAN"]) and (nd.get_switch("toggle_display_type") == "LCD"))), predicate: func(nd) (!(nd.in_mode("toggle_display_mode", ["PLAN"]) and (nd.get_switch("toggle_display_type") == "LCD")) and (pts.Instrumentation.PFD.windSpeed.getValue() or 0) >= 2 and getprop("/instrumentation/airspeed-indicator/true-speed-kt") >= 100),
is_true: func(nd) { is_true: func(nd) {
nd.symbols.windArrow.show(); nd.symbols.windArrow.show();
var windArrowRot = getprop("environment/wind-from-heading-deg"); var windArrowRot = (pts.Instrumentation.PFD.windDirection.getValue() or 0) - nd.aircraft_source.get_hdg_tru();
if(nd.in_mode("toggle_display_mode", ["MAP","PLAN"])) {
if(nd.get_switch("toggle_true_north"))
windArrowRot = windArrowRot - nd.aircraft_source.get_trk_tru();
else
windArrowRot = windArrowRot - nd.aircraft_source.get_trk_mag();
} else {
if(nd.get_switch("toggle_true_north"))
windArrowRot = windArrowRot - nd.aircraft_source.get_hdg_tru();
else
windArrowRot = windArrowRot - nd.aircraft_source.get_hdg_mag();
}
nd.symbols.windArrow.setRotation(windArrowRot*D2R); nd.symbols.windArrow.setRotation(windArrowRot*D2R);
}, },
is_false: func(nd) nd.symbols.windArrow.hide(), is_false: func(nd) nd.symbols.windArrow.hide(),

View file

@ -216,9 +216,9 @@ var canvas_PFD_base = {
"FMA_athr_box","FMA_Middle1","FMA_Middle2","ALPHA_MAX","ALPHA_PROT","ALPHA_SW","ALPHA_bars","VLS_min","ASI_max","ASI_scale","ASI_target","ASI_mach","ASI_mach_decimal","ASI_trend_up","ASI_trend_down","ASI_digit_UP","ASI_digit_DN","ASI_decimal_UP", "FMA_athr_box","FMA_Middle1","FMA_Middle2","ALPHA_MAX","ALPHA_PROT","ALPHA_SW","ALPHA_bars","VLS_min","ASI_max","ASI_scale","ASI_target","ASI_mach","ASI_mach_decimal","ASI_trend_up","ASI_trend_down","ASI_digit_UP","ASI_digit_DN","ASI_decimal_UP",
"ASI_decimal_DN","ASI_index","ASI_error","ASI_group","ASI_frame","AI_center","AI_bank","AI_bank_lim","AI_bank_lim_X","AI_pitch_lim","AI_pitch_lim_X","AI_slipskid","AI_horizon","AI_horizon_ground","AI_horizon_sky","AI_stick","AI_stick_pos","AI_heading", "ASI_decimal_DN","ASI_index","ASI_error","ASI_group","ASI_frame","AI_center","AI_bank","AI_bank_lim","AI_bank_lim_X","AI_pitch_lim","AI_pitch_lim_X","AI_slipskid","AI_horizon","AI_horizon_ground","AI_horizon_sky","AI_stick","AI_stick_pos","AI_heading",
"AI_agl_g","AI_agl","AI_error","AI_group","FD_roll","FD_pitch","ALT_box_flash","ALT_box","ALT_box_amber","ALT_scale","ALT_target","ALT_target_digit","ALT_one","ALT_two","ALT_three","ALT_four","ALT_five","ALT_digits","ALT_tens","ALT_digit_UP", "AI_agl_g","AI_agl","AI_error","AI_group","FD_roll","FD_pitch","ALT_box_flash","ALT_box","ALT_box_amber","ALT_scale","ALT_target","ALT_target_digit","ALT_one","ALT_two","ALT_three","ALT_four","ALT_five","ALT_digits","ALT_tens","ALT_digit_UP",
"ALT_digit_DN","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer","HDG_target","HDG_scale", "ALT_digit_DN","ALT_digit_UP_metric","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer","HDG_target","HDG_scale",
"HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame","TRK_pointer","machError","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend","ILS_HDG_R","ILS_HDG_L", "HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame","TRK_pointer","machError","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend","ILS_HDG_R","ILS_HDG_L",
"ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate"]; "ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate","tailstrikeInd","Metric_box","Metric_letter","Metric_cur_alt"];
}, },
off: 0, off: 0,
on: 0, on: 0,
@ -349,6 +349,7 @@ var canvas_PFD_base = {
PFD_2_mismatch.page.show(); PFD_2_mismatch.page.show();
} }
}, },
showMetricAlt: 0,
updateCommon: func () { updateCommon: func () {
# FMA MAN TOGA MCT FLX THR # FMA MAN TOGA MCT FLX THR
# Set properties used a lot to a variable to avoid calling getValue() multiple times # Set properties used a lot to a variable to avoid calling getValue() multiple times
@ -396,6 +397,12 @@ var canvas_PFD_base = {
me["AI_agl"].setText(sprintf("%s", math.round(math.clamp(gear_agl_cur, 0, 2500)))); me["AI_agl"].setText(sprintf("%s", math.round(math.clamp(gear_agl_cur, 0, 2500))));
if (gear_agl_cur < 400 and pts.Velocities.groundspeedKt.getValue() > 50 and pts.Fdm.JSBsim.Fadec.detent[0].getValue() <= 3 and pts.Fdm.JSBsim.Fadec.detent[1].getValue() <= 3) {
me["tailstrikeInd"].show();
} else {
me["tailstrikeInd"].hide();
}
if (fmgc.FMGCInternal.phase < 3 or fmgc.flightPlanController.arrivalDist >= 250) { if (fmgc.FMGCInternal.phase < 3 or fmgc.flightPlanController.arrivalDist >= 250) {
me["FMA_dh_box"].hide(); me["FMA_dh_box"].hide();
me["FMA_dh"].hide(); me["FMA_dh"].hide();
@ -1025,7 +1032,6 @@ var canvas_PFD_base = {
me["QNH_std"].hide(); me["QNH_std"].hide();
me["QNH_box"].hide(); me["QNH_box"].hide();
} }
}, },
# Get Angle of Attack from ADR1 or, depending on Switching panel, ADR3 # Get Angle of Attack from ADR1 or, depending on Switching panel, ADR3
@ -1688,6 +1694,18 @@ var canvas_PFD_1 = {
me["ALT_scale"].show(); me["ALT_scale"].show();
me.altitude = dmc.DMController.DMCs[0].outputs[1].getValue(); me.altitude = dmc.DMController.DMCs[0].outputs[1].getValue();
if (me.showMetricAlt) {
me["Metric_box"].show();
me["Metric_letter"].show();
me["Metric_cur_alt"].show();
me["Metric_cur_alt"].setText(sprintf("%5.0f", me.altitude * 0.3048));
} else {
me["Metric_box"].hide();
me["Metric_letter"].hide();
me["Metric_cur_alt"].hide();
}
me.altOffset = me.altitude / 500 - int(me.altitude / 500); me.altOffset = me.altitude / 500 - int(me.altitude / 500);
me.middleAltText = roundaboutAlt(me.altitude / 100); me.middleAltText = roundaboutAlt(me.altitude / 100);
me.middleAltOffset = nil; me.middleAltOffset = nil;
@ -1715,6 +1733,14 @@ var canvas_PFD_1 = {
me["ALT_tens"].setTranslation(0, altTens * 1.392); me["ALT_tens"].setTranslation(0, altTens * 1.392);
ap_alt_cur = ap_alt.getValue(); ap_alt_cur = ap_alt.getValue();
if (me.showMetricAlt) {
me["ALT_digit_UP_metric"].show();
me["ALT_digit_UP_metric"].setText(sprintf("%5.0fM", ap_alt_cur * 0.3048));
} else {
me["ALT_digit_UP_metric"].hide();
}
alt_diff_cur = dmc.DMController.DMCs[0].outputs[7].getValue(); alt_diff_cur = dmc.DMController.DMCs[0].outputs[7].getValue();
if (alt_diff_cur >= -565 and alt_diff_cur <= 565) { if (alt_diff_cur >= -565 and alt_diff_cur <= 565) {
me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856); me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856);
@ -1824,6 +1850,10 @@ var canvas_PFD_1 = {
me["ALT_box_flash"].hide(); me["ALT_box_flash"].hide();
me["ALT_box_amber"].hide(); me["ALT_box_amber"].hide();
me["ALT_box"].hide(); me["ALT_box"].hide();
me["Metric_box"].hide();
me["Metric_letter"].hide();
me["Metric_cur_alt"].hide();
me["ALT_digit_UP_metric"].hide();
} }
me.updateCommon(); me.updateCommon();
@ -2459,6 +2489,18 @@ var canvas_PFD_2 = {
me["ALT_scale"].show(); me["ALT_scale"].show();
me.altitude = dmc.DMController.DMCs[1].outputs[1].getValue(); me.altitude = dmc.DMController.DMCs[1].outputs[1].getValue();
if (me.showMetricAlt) {
me["Metric_box"].show();
me["Metric_letter"].show();
me["Metric_cur_alt"].show();
me["Metric_cur_alt"].setText(sprintf("%5.0f", me.altitude * 0.3048));
} else {
me["Metric_box"].hide();
me["Metric_letter"].hide();
me["Metric_cur_alt"].hide();
}
me.altOffset = me.altitude / 500 - int(me.altitude / 500); me.altOffset = me.altitude / 500 - int(me.altitude / 500);
me.middleAltText = roundaboutAlt(me.altitude / 100); me.middleAltText = roundaboutAlt(me.altitude / 100);
me.middleAltOffset = nil; me.middleAltOffset = nil;
@ -2486,6 +2528,14 @@ var canvas_PFD_2 = {
me["ALT_tens"].setTranslation(0, altTens * 1.392); me["ALT_tens"].setTranslation(0, altTens * 1.392);
ap_alt_cur = ap_alt.getValue(); ap_alt_cur = ap_alt.getValue();
if (me.showMetricAlt) {
me["ALT_digit_UP_metric"].show();
me["ALT_digit_UP_metric"].setText(sprintf("%5.0fM", ap_alt_cur * 0.3048));
} else {
me["ALT_digit_UP_metric"].hide();
}
alt_diff_cur = dmc.DMController.DMCs[1].outputs[7].getValue(); alt_diff_cur = dmc.DMController.DMCs[1].outputs[7].getValue();
if (alt_diff_cur >= -565 and alt_diff_cur <= 565) { if (alt_diff_cur >= -565 and alt_diff_cur <= 565) {
me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856); me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856);
@ -2595,6 +2645,10 @@ var canvas_PFD_2 = {
me["ALT_box_flash"].hide(); me["ALT_box_flash"].hide();
me["ALT_box_amber"].hide(); me["ALT_box_amber"].hide();
me["ALT_box"].hide(); me["ALT_box"].hide();
me["Metric_box"].hide();
me["Metric_letter"].hide();
me["Metric_cur_alt"].hide();
me["ALT_digit_UP_metric"].hide();
} }
me.updateCommon(); me.updateCommon();

View file

@ -41,9 +41,9 @@
inkscape:window-maximized="1" inkscape:window-maximized="1"
inkscape:window-y="-8" inkscape:window-y="-8"
inkscape:window-x="-8" inkscape:window-x="-8"
inkscape:cy="683.12157" inkscape:cy="1074.3176"
inkscape:cx="1026.1197" inkscape:cx="955.3885"
inkscape:zoom="1.8101934" inkscape:zoom="2"
showgrid="true" showgrid="true"
id="namedview371" id="namedview371"
inkscape:window-height="705" inkscape:window-height="705"
@ -580,6 +580,13 @@
id="path886" id="path886"
d="m 448.25473,1194.8172 66.90422,59.142 h -59.49742 v -14.7583 h 11.11022 l -18.51702,-19.615 -18.51702,19.615 h 11.11022 v 14.7583 h -59.49741 z" d="m 448.25473,1194.8172 66.90422,59.142 h -59.49742 v -14.7583 h 11.11022 l -18.51702,-19.615 -18.51702,19.615 h 11.11022 v 14.7583 h -59.49741 z"
style="fill:none;stroke:#ff0000;stroke-width:7.42499971;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> style="fill:none;stroke:#ff0000;stroke-width:7.42499971;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="ccccccc"
inkscape:connector-curvature="0"
id="tailstrikeInd"
d="m 408.59584,403.53091 h 13.2497 l 26.49939,39.11651 26.49939,-39.11651 h 13.2497 l -39.74909,57.25812 z"
style="fill:none;stroke:#ff0000;stroke-width:4.19999981;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:label="#tailstrikeInd" />
</g> </g>
<g <g
transform="translate(0,97.082371)" transform="translate(0,97.082371)"
@ -2262,11 +2269,11 @@
id="QNH_setting" id="QNH_setting"
y="885.26117" y="885.26117"
x="907.61713" x="907.61713"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;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;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75;stroke-opacity:1;"
xml:space="preserve" xml:space="preserve"
transform="scale(1.0000144,0.9999856)" transform="scale(1.0000144,0.9999856)"
inkscape:label="#text979"><tspan inkscape:label="#text979"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.3994px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke-width:0.75" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.3994px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke-width:0.75;stroke:none;stroke-opacity:1;"
y="885.26117" y="885.26117"
x="907.61713" x="907.61713"
id="tspan977" id="tspan977"
@ -6256,7 +6263,7 @@
x="823.7511" x="823.7511"
sodipodi:role="line" sodipodi:role="line"
id="tspan1797">G</tspan></text> id="tspan1797">G</tspan></text>
<text <text
inkscape:label="#text983" inkscape:label="#text983"
xml:space="preserve" xml:space="preserve"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.65757698" style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.65757698"
@ -6269,4 +6276,50 @@
x="417.56354" x="417.56354"
y="34.634907" y="34.634907"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.99950027px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke-width:0.65757698">-800</tspan></text> style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.99950027px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke-width:0.65757698">-800</tspan></text>
<rect
inkscape:label="#rect4290"
y="896.48456"
x="788.52734"
height="36.03083"
width="153.94527"
id="Metric_box"
style="fill:none;fill-opacity:1;stroke:#c9d121;stroke-width:3.20831394;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke" />
<text
id="Metric_cur_alt"
y="928.04248"
x="847.62854"
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75"
xml:space="preserve"
transform="scale(1.0000144,0.9999856)"
inkscape:label="#text979"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.3993988px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke-width:0.75"
y="928.04248"
x="852.95343"
id="tspan977-3"
sodipodi:role="line">11070 </tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.3993988px;line-height:1.25;font-family:'Bitstream Vera Sans';-inkscape-font-specification:'Bitstream Vera Sans';letter-spacing:0px;word-spacing:0px;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.75"
x="909.43152"
y="928.62128"
id="Metric_letter"
inkscape:label="#text1815"><tspan
sodipodi:role="line"
id="tspan1813"
x="909.43152"
y="928.62128"
style="font-size:38.3993988px;fill:#179ab7;fill-opacity:1;stroke-width:0.75">M</tspan></text>
<text
inkscape:label="#text975"
transform="scale(0.95382559,1.0484097)"
id="ALT_digit_UP_metric"
y="218.16887"
x="604.67737"
style="font-style:normal;font-weight:normal;font-size:12px;line-height:0%;font-family:sans-serif;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:0.75"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:42px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#179ab7;fill-opacity:1;stroke-width:0.75"
y="218.16887"
x="604.67737"
id="tspan5116-2"
sodipodi:role="line">10000M</tspan></text>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 341 KiB

After

Width:  |  Height:  |  Size: 344 KiB

View file

@ -2176,9 +2176,9 @@
<object-name>rmp-standby</object-name> <object-name>rmp-standby</object-name>
<object-name>rmp-standby-test</object-name> <object-name>rmp-standby-test</object-name>
<diffuse> <diffuse>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</diffuse> </diffuse>
<ambient> <ambient>
<red>0</red> <red>0</red>
@ -2191,9 +2191,9 @@
<blue>0</blue> <blue>0</blue>
</specular> </specular>
<emission> <emission>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</emission> </emission>
</animation> </animation>

View file

@ -2176,9 +2176,9 @@
<object-name>rmp-standby</object-name> <object-name>rmp-standby</object-name>
<object-name>rmp-standby-test</object-name> <object-name>rmp-standby-test</object-name>
<diffuse> <diffuse>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</diffuse> </diffuse>
<ambient> <ambient>
<red>0</red> <red>0</red>
@ -2191,9 +2191,9 @@
<blue>0</blue> <blue>0</blue>
</specular> </specular>
<emission> <emission>
<red>0.89</red> <red>1.00</red>
<green>0.37</green> <green>0.355</green>
<blue>0.08</blue> <blue>0.00</blue>
</emission> </emission>
</animation> </animation>

View file

@ -30,6 +30,9 @@ var ECAM_line5rc = props.globals.getNode("/ECAM/rightmsg/linec5", 1);
var ECAM_line6rc = props.globals.getNode("/ECAM/rightmsg/linec6", 1); var ECAM_line6rc = props.globals.getNode("/ECAM/rightmsg/linec6", 1);
var ECAM_line7rc = props.globals.getNode("/ECAM/rightmsg/linec7", 1); var ECAM_line7rc = props.globals.getNode("/ECAM/rightmsg/linec7", 1);
var ECAM_line8rc = props.globals.getNode("/ECAM/rightmsg/linec8", 1); var ECAM_line8rc = props.globals.getNode("/ECAM/rightmsg/linec8", 1);
var enginesBothAtIdle = props.globals.getNode("/fdm/jsbsim/fadec/both-at-idle");
var enginesBothAtIdleTime = props.globals.initNode("/ECAM/Upper/idle-time", 0.0, "DOUBLE");
var enginesBothAtIdleTimeSaved = props.globals.initNode("/ECAM/Upper/idle-time-saved", 0.0, "DOUBLE");
var canvas_upperECAM = { var canvas_upperECAM = {
new: func(svg, name, type) { new: func(svg, name, type) {
@ -496,7 +499,7 @@ var canvas_upperECAM = {
"EGT1-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-box","N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N12-XX2","N12-XX-box","EGT2-needle","EGT2", "EGT1-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-box","N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N12-XX2","N12-XX-box","EGT2-needle","EGT2",
"EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","REV1", "EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","REV1",
"REV1-box","REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","ECAMR1","ECAMR2","ECAMR3","ECAMR4","ECAMR5","ECAMR6","ECAMR7","ECAMR8","ECAM_Right","FOB-weight-unit","FFlow-weight-unit","SlatAlphaLock", "REV1-box","REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","ECAMR1","ECAMR2","ECAMR3","ECAMR4","ECAMR5","ECAMR6","ECAMR7","ECAMR8","ECAM_Right","FOB-weight-unit","FFlow-weight-unit","SlatAlphaLock",
"SlatIndicator","FlapIndicator","SlatLine","FlapLine","aFloor","FlxLimDegreesC","FlxLimTemp"]; "SlatIndicator","FlapIndicator","SlatLine","FlapLine","aFloor","FlxLimDegreesC","FlxLimTemp","idleIndication"];
}, },
getKeysIAE: func() { getKeysIAE: func() {
return ["EPR1-needle","EPR1-thr","EPR1-ylim","EPR1","EPR1-decpnt","EPR1-decimal","EPR1-box","EPR1-scale","EPR1-scaletick","EPR1-scalenum","EPR1-XX","EPR1-XX2","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX", return ["EPR1-needle","EPR1-thr","EPR1-ylim","EPR1","EPR1-decpnt","EPR1-decimal","EPR1-box","EPR1-scale","EPR1-scaletick","EPR1-scalenum","EPR1-XX","EPR1-XX2","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX",
@ -504,7 +507,7 @@ var canvas_upperECAM = {
"EPR2-decimal","EPR2-box","EPR2-scale","EPR2-scaletick","EPR2-scalenum","EPR2-XX","EPR2-XX2","EGT2-needle","EGT2","EGT2-scale","EGT2-scale2","EGT2-box","EGT2-scaletick","EGT2-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal", "EPR2-decimal","EPR2-box","EPR2-scale","EPR2-scaletick","EPR2-scalenum","EPR2-XX","EPR2-XX2","EGT2-needle","EGT2","EGT2-scale","EGT2-scale2","EGT2-box","EGT2-scaletick","EGT2-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal",
"N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","EPRLim-mode","EPRLim","EPRLim-decpnt","EPRLim-decimal","EPRLim-XX","EPRLim-XX2","EPRMode", "N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","EPRLim-mode","EPRLim","EPRLim-decpnt","EPRLim-decimal","EPRLim-XX","EPRLim-XX2","EPRMode",
"N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","N1Mode","REV1","REV1-box","REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","ECAMR1","ECAMR2","ECAMR3", "N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","N1Mode","REV1","REV1-box","REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","ECAMR1","ECAMR2","ECAMR3",
"ECAMR4","ECAMR5","ECAMR6","ECAMR7","ECAMR8","ECAM_Right","FFlow1-weight-unit", "FFlow2-weight-unit", "FOB-weight-unit","SlatAlphaLock","SlatIndicator","FlapIndicator","SlatLine","FlapLine","aFloor","FlxLimDegreesC","FlxLimTemp"]; "ECAMR4","ECAMR5","ECAMR6","ECAMR7","ECAMR8","ECAM_Right","FFlow1-weight-unit", "FFlow2-weight-unit", "FOB-weight-unit","SlatAlphaLock","SlatIndicator","FlapIndicator","SlatLine","FlapLine","aFloor","FlxLimDegreesC","FlxLimTemp","idleIndication"];
}, },
getKeysTest: func() { getKeysTest: func() {
return ["Test_white","Test_text"]; return ["Test_white","Test_text"];
@ -531,6 +534,9 @@ var canvas_upperECAM = {
me[key].setColor(me.getColorString(node.getValue())); me[key].setColor(me.getColorString(node.getValue()));
}, 0, 0); }, 0, 0);
}, },
displayIdle: 0,
displayIdleDim: 0,
displayIdleTrigger: 0,
updateCommon: func(notification) { updateCommon: func(notification) {
me.updatePower(); me.updatePower();
@ -542,6 +548,37 @@ var canvas_upperECAM = {
return; return;
} }
if (enginesBothAtIdle.getValue() and !me["aFloor"].getVisible() and !notification.gear1Wow and notification.athr) {
if (!me.displayIdleTrigger) {
enginesBothAtIdleTime.setValue(notification.elapsedTime);
me.displayIdleTrigger = 1;
}
if ((notification.elapsedTime - enginesBothAtIdleTime.getValue()) < 10) {
if ((notification.elapsedTime - enginesBothAtIdleTimeSaved.getValue()) > 1) {
enginesBothAtIdleTimeSaved.setValue(notification.elapsedTime);
me.displayIdleDim = !me.displayIdleDim;
}
}
me.displayIdle = 1;
} else {
me.displayIdle = 0;
me.displayIdleDim = 0;
me.displayIdleTrigger = 0;
enginesBothAtIdleTime.setValue(0);
enginesBothAtIdleTimeSaved.setValue(0);
}
if (me.displayIdle) {
me["idleIndication"].show();
if (me.displayIdleDim) {
me["idleIndication"].setColor(0.0509,0.7529,0.2941,0.5);
} else {
me["idleIndication"].setColor(0.0509,0.7529,0.2941,1);
}
} else {
me["idleIndication"].hide();
}
foreach(var update_item; me.update_items) foreach(var update_item; me.update_items)
{ {
update_item.update(notification); update_item.update(notification);

View file

@ -1476,4 +1476,17 @@
x="111.21719" x="111.21719"
id="tspan3554" id="tspan3554"
sodipodi:role="line">A FLOOR</tspan></text> sodipodi:role="line">A FLOOR</tspan></text>
<text
id="idleIndication"
y="76.19252"
x="579.36719"
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:'Liberation Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"
transform="scale(0.87983286,1.1365795)"
inkscape:label="#text4387-9"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';fill:#0dc04b;fill-opacity:1;stroke-width:1px"
y="76.19252"
x="579.36719"
id="tspan4389-1"
sodipodi:role="line">IDLE</tspan></text>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 90 KiB

View file

@ -1971,4 +1971,17 @@
inkscape:connector-curvature="0" inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" /> sodipodi:nodetypes="cccc" />
</g> </g>
<text
id="idleIndication"
y="76.19252"
x="579.36719"
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:'Liberation Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"
transform="scale(0.87983286,1.1365795)"
inkscape:label="#text4387-9"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';fill:#0dc04b;fill-opacity:1;stroke-width:1px"
y="76.19252"
x="579.36719"
id="tspan4389-1"
sodipodi:role="line">IDLE</tspan></text>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 120 KiB

After

Width:  |  Height:  |  Size: 121 KiB

View file

@ -7,6 +7,7 @@
<name>Austrian Airlines (OE-LBU)</name> <name>Austrian Airlines (OE-LBU)</name>
<texture-fuselage>AUA-fuselage.png</texture-fuselage> <texture-fuselage>AUA-fuselage.png</texture-fuselage>
<texture-engine>CFM56-white.png</texture-engine> <texture-engine>CFM56-white.png</texture-engine>
<texture-placards>Fuselage/res/placards.png</texture-placards>
</livery> </livery>
</model> </model>
</sim> </sim>

View file

@ -8,6 +8,7 @@
<texture-fuselage>SWR-fuselage.png</texture-fuselage> <texture-fuselage>SWR-fuselage.png</texture-fuselage>
<texture-engine>SWR-engine.png</texture-engine> <texture-engine>SWR-engine.png</texture-engine>
<logo>SWR.png</logo> <logo>SWR.png</logo>
<texture-placards>Fuselage/res/placards.png</texture-placards>
</livery> </livery>
</model> </model>
</sim> </sim>

View file

@ -7,6 +7,7 @@
<name>N680AW(Unpainted)</name> <name>N680AW(Unpainted)</name>
<texture-fuselage>N680AW-fuselage.png</texture-fuselage> <texture-fuselage>N680AW-fuselage.png</texture-fuselage>
<texture-engine>N680AW-engine.png</texture-engine> <texture-engine>N680AW-engine.png</texture-engine>
<texture-placards>Fuselage/res/placards.png</texture-placards>
</livery> </livery>
</model> </model>
</sim> </sim>

View file

@ -7,6 +7,7 @@
<name>QTR Qatar Airways (A7-AHW)</name> <name>QTR Qatar Airways (A7-AHW)</name>
<texture-fuselage>QTR-fuselage.png</texture-fuselage> <texture-fuselage>QTR-fuselage.png</texture-fuselage>
<texture-engine>QTR-engine.png</texture-engine> <texture-engine>QTR-engine.png</texture-engine>
<texture-placards>Fuselage/res/placards.png</texture-placards>
</livery> </livery>
</model> </model>
</sim> </sim>

View file

@ -7,6 +7,7 @@
<name>SAS Scandinavian (OY-KAM)</name> <name>SAS Scandinavian (OY-KAM)</name>
<texture-fuselage>SAS-fuselage.png</texture-fuselage> <texture-fuselage>SAS-fuselage.png</texture-fuselage>
<texture-engine>SAS-engine.png</texture-engine> <texture-engine>SAS-engine.png</texture-engine>
<texture-placards>Fuselage/res/placards.png</texture-placards>
</livery> </livery>
</model> </model>
</sim> </sim>

View file

@ -36,6 +36,7 @@ var altAlertInhibit = nil;
var alt200 = nil; var alt200 = nil;
var alt750 = nil; var alt750 = nil;
var bigThree = nil; var bigThree = nil;
var fltCtlLandAsap = 0;
var altAlertSteady = 0; var altAlertSteady = 0;
var altAlertFlash = 0; var altAlertFlash = 0;
@ -2098,7 +2099,7 @@ var messages_priority_2 = func {
altnLaw.active = 1; altnLaw.active = 1;
altnLawProt.active = 1; altnLawProt.active = 1;
if (altnLawMaxSpeed.clearFlag == 0 and altnLawMaxSpeed2.clearFlag == 0 and !fbw.tripleADRFail) { if (altnLawMaxSpeed.clearFlag == 0 and altnLawMaxSpeed2.clearFlag == 0 and !fbw.tripleADRFail) {
if (!(getprop("/ECAM/warnings/hyd/green-abnorm-lo-pr") and (getprop("/ECAM/warnings/hyd/blue-abnorm-lo-pr") or getprop("/ECAM/warnings/hyd/yellow-abnorm-lo-pr")))) { if (!(systems.HYD.Warnings.greenAbnormLoPr.getValue() and (systems.HYD.Warnings.blueAbnormLoPr.getValue() or systems.HYD.Warnings.yellowAbnormLoPr.getValue()))) {
altnLawMaxSpeed.active = 1; altnLawMaxSpeed.active = 1;
ECAM_controller.warningReset(altnLawMaxSpeed2); ECAM_controller.warningReset(altnLawMaxSpeed2);
} else { } else {
@ -2135,7 +2136,7 @@ var messages_priority_2 = func {
if (getprop("/fdm/jsbsim/fadec/thr-locked-flash") == 0) { if (getprop("/fdm/jsbsim/fadec/thr-locked-flash") == 0) {
athr_lock.msg = " "; athr_lock.msg = " ";
} else { } else {
athr_lock.msg = msgSave athr_lock.msg = msgSave;
} }
athr_lock.active = 1; athr_lock.active = 1;
athr_lock_1.active = 1; athr_lock_1.active = 1;
@ -3148,7 +3149,7 @@ var messages_config_memo = func {
setprop("/ECAM/to-config-reset", 0); setprop("/ECAM/to-config-reset", 0);
} }
if (getprop("/controls/autobrake/mode") == 3) { if (systems.Autobrake.mode.getValue() == 3) {
toMemoLine1.msg = "T.O AUTO BRK MAX"; toMemoLine1.msg = "T.O AUTO BRK MAX";
toMemoLine1.colour = "g"; toMemoLine1.colour = "g";
} else { } else {
@ -3411,14 +3412,20 @@ var messages_right_memo = func {
ldg_inhibit.active = 0; ldg_inhibit.active = 0;
} }
if ((!pts.Gear.wow[1].getValue()) and (systems.ELEC.EmerElec.getValue() or getprop("/systems/fire/engine1/warning-active") == 1 or getprop("/systems/fire/engine2/warning-active") == 1 or getprop("/systems/fire/apu/warning-active") == 1 or getprop("/systems/failures/fire/cargo-aft-fire") == 1 or getprop("/systems/failures/fire/cargo-fwd-fire") == 1) or (((systems.HYD.Psi.green.getValue() < 1500 and pts.Engines.Engine.state[0].getValue() == 3) and (systems.HYD.Psi.yellow.getValue() < 1500 and pts.Engines.Engine.state[1].getValue() == 3)) or ((systems.HYD.Psi.green.getValue() < 1500 or systems.HYD.Psi.yellow.getValue() < 1500) and pts.Engines.Engine.state[0].getValue() == 3 and pts.Engines.Engine.state[1].getValue() == 3) and phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8)) { if (!(FWC.Timer.gnd.getValue() == 1) and (systems.ELEC.EmerElec.getValue() or dualFailNode.getValue() == 1 or systems.eng1FireWarn.getValue() == 1 or systems.eng2FireWarn.getValue() == 1 or systems.apuFireWarn.getValue() == 1 or systems.aftCargoFireWarn.getValue() == 1 or systems.fwdCargoFireWarn.getValue() == 1 or (systems.HYD.Warnings.greenAbnormLoPr.getValue() and systems.HYD.Warnings.yellowAbnormLoPr.getValue()) or (systems.HYD.Warnings.greenAbnormLoPr.getValue() and systems.HYD.Warnings.blueAbnormLoPr.getValue()) or (systems.HYD.Warnings.blueAbnormLoPr.getValue() and systems.HYD.Warnings.yellowAbnormLoPr.getValue()))) {
# todo: emer elec
land_asap_r.active = 1; land_asap_r.active = 1;
} else { } else {
land_asap_r.active = 0; land_asap_r.active = 0;
} }
if (land_asap_r.active == 0 and !pts.Gear.wow[1].getValue() and ((getprop("/fdm/jsbsim/propulsion/tank[0]/contents-lbs") < 1650 and getprop("/fdm/jsbsim/propulsion/tank[1]/contents-lbs") < 1650) or ((getprop("/systems/electrical/bus/dc-2") < 25 and (getprop("/systems/failures/fctl/elac1") == 1 or getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.green.getValue() < 1500 and (getprop("/systems/failures/fctl/elac1") == 1 and getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.yellow.getValue() < 1500 and (getprop("/systems/failures/fctl/elac1") == 1 and getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (getprop("/systems/failures/fctl/elac2") == 1 and getprop("/systems/failures/fctl/sec2") == 1))) or (phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8 and (pts.Engines.Engine.state[0].getValue() != 3 or pts.Engines.Engine.state[1].getValue() != 3)))) { if ((systems.ELEC.Bus.dc2.getValue() < 25 and (fbw.FBW.Failures.elac1.getValue() == 1 or fbw.FBW.Failures.sec1.getValue() == 1)) or ((systems.HYD.Psi.yellow.getValue() < 1500 or systems.HYD.Psi.green.getValue() < 1500) and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (fbw.FBW.Failures.elac2.getValue() == 1 and fbw.FBW.Failures.sec2.getValue() == 1))) {
fltCtlLandAsap = 1;
} else {
fltCtlLandAsap = 0;
}
if (land_asap_r.active == 0 and !(FWC.Timer.gnd.getValue() == 1) and (warningNodes.Timers.lowLevelBoth.getValue() == 1 or warningNodes.Logic.eng1Shutdown.getValue() or warningNodes.Logic.eng2Shutdown.getValue() or warningNodes.Logic.eng1Fail.getValue() or warningNodes.Logic.eng2Fail.getValue() or warningNodes.Timers.dcEmerConfig.getValue() == 1 or fltCtlLandAsap)) {
# todo avionics smoke and reverse unlocked
land_asap_a.active = 1; land_asap_a.active = 1;
} else { } else {
land_asap_a.active = 0; land_asap_a.active = 0;
@ -3496,7 +3503,7 @@ var messages_right_memo = func {
nw_strg_disc.colour = "g"; nw_strg_disc.colour = "g";
} }
if (getprop("/controls/pneumatics/switches/ram-air") == 1) { if (systems.PNEU.Switch.ramAir.getValue() == 1) {
ram_air.active = 1; ram_air.active = 1;
} else { } else {
ram_air.active = 0; ram_air.active = 0;
@ -3537,7 +3544,7 @@ var messages_right_memo = func {
company_msg.active = 0; company_msg.active = 0;
} }
if (getprop("/controls/ice-protection/leng") == 1 or getprop("/controls/ice-protection/reng") == 1 or getprop("/systems/electrical/bus/dc-1") == 0 or getprop("/systems/electrical/bus/dc-2") == 0) { if (getprop("/controls/ice-protection/leng") == 1 or getprop("/controls/ice-protection/reng") == 1 or systems.ELEC.Bus.dc1.getValue() < 25 or systems.ELEC.Bus.dc2.getValue() < 25) {
eng_aice.active = 1; eng_aice.active = 1;
} else { } else {
eng_aice.active = 0; eng_aice.active = 0;
@ -3549,7 +3556,7 @@ var messages_right_memo = func {
wing_aice.active = 0; wing_aice.active = 0;
} }
if (getprop("/controls/pneumatics/switches/apu") == 1 and pts.APU.rpm.getValue() >= 95) { if (systems.PNEU.Switch.apu.getValue() == 1 and pts.APU.rpm.getValue() >= 95) {
apu_bleed.active = 1; apu_bleed.active = 1;
} else { } else {
apu_bleed.active = 0; apu_bleed.active = 0;
@ -3561,43 +3568,43 @@ var messages_right_memo = func {
apu_avail.active = 0; apu_avail.active = 0;
} }
if (getprop("/controls/lighting/landing-lights[1]") > 0 or getprop("/controls/lighting/landing-lights[2]") > 0) { if (pts.Controls.Lighting.landingLights[1].getValue() > 0 or pts.Controls.Lighting.landingLights[2].getValue() > 0) {
ldg_lt.active = 1; ldg_lt.active = 1;
} else { } else {
ldg_lt.active = 0; ldg_lt.active = 0;
} }
if (getprop("/controls/gear/brake-fans") == 1) { if (systems.BrakeSys.brakeFans.getValue() == 1) {
brk_fan.active = 1; brk_fan.active = 1;
} else { } else {
brk_fan.active = 0; brk_fan.active = 0;
} }
if (getprop("instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override") == 1) { # todo: emer elec if (pts.Instrumentation.MKVII.Inputs.Discretes.flap3Override.getValue() == 1) { # todo: emer elec
gpws_flap3.active = 1; gpws_flap3.active = 1;
} else { } else {
gpws_flap3.active = 0; gpws_flap3.active = 0;
} }
if (!getprop("/systems/radio/vhf3-data-mode") and (phaseVarMemo3 == 1 or phaseVarMemo3 == 2 or phaseVarMemo3 == 6 or phaseVarMemo3 == 9 or phaseVarMemo3 == 10)) { if (!rmp.vhf3_data_mode.getValue() and (phaseVarMemo3 == 1 or phaseVarMemo3 == 2 or phaseVarMemo3 == 6 or phaseVarMemo3 == 9 or phaseVarMemo3 == 10)) {
vhf3_voice.active = 1; vhf3_voice.active = 1;
} else { } else {
vhf3_voice.active = 0; vhf3_voice.active = 0;
} }
if (getprop("/controls/autobrake/mode") == 1 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { if (systems.Autobrake.mode.getValue() == 1 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) {
auto_brk_lo.active = 1; auto_brk_lo.active = 1;
} else { } else {
auto_brk_lo.active = 0; auto_brk_lo.active = 0;
} }
if (getprop("/controls/autobrake/mode") == 2 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { if (systems.Autobrake.mode.getValue() == 2 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) {
auto_brk_med.active = 1; auto_brk_med.active = 1;
} else { } else {
auto_brk_med.active = 0; auto_brk_med.active = 0;
} }
if (getprop("/controls/autobrake/mode") == 3 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { if (systems.Autobrake.mode.getValue() == 3 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) {
auto_brk_max.active = 1; auto_brk_max.active = 1;
} else { } else {
auto_brk_max.active = 0; auto_brk_max.active = 0;

View file

@ -68,7 +68,7 @@ var FBW = {
rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"), rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"),
rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"), rtlu2: props.globals.getNode("/systems/failures/fctl/rtlu-2"),
ths: props.globals.getNode(""), ths: props.globals.getNode(""),
spoilerl1: props.globals.getNode(""), spoilerl1: props.globals.getNode("/systems/failures/spoilers/spoiler-l1"),
spoilerl2: props.globals.getNode("/systems/failures/spoilers/spoiler-l2"), spoilerl2: props.globals.getNode("/systems/failures/spoilers/spoiler-l2"),
spoilerl3: props.globals.getNode("/systems/failures/spoilers/spoiler-l3"), spoilerl3: props.globals.getNode("/systems/failures/spoilers/spoiler-l3"),
spoilerl4: props.globals.getNode("/systems/failures/spoilers/spoiler-l4"), spoilerl4: props.globals.getNode("/systems/failures/spoilers/spoiler-l4"),

View file

@ -491,6 +491,12 @@ var FCUController = {
} }
} }
}, },
MetricAlt: func() {
if (me.FCUworking) {
canvas_pfd.PFD_1.showMetricAlt = !canvas_pfd.PFD_1.showMetricAlt;
canvas_pfd.PFD_2.showMetricAlt = !canvas_pfd.PFD_2.showMetricAlt;
}
},
}; };
# Master / slave principle of operation depending on the autopilot / flight director engagement # Master / slave principle of operation depending on the autopilot / flight director engagement

View file

@ -1,12 +1,6 @@
# A320 Main Libraries # Airbus A320 Custom Controls
# Joshua Davidson (Octal450)
# Copyright (c) 2021 Josh Davidson (Octal450) # Copyright (c) 2021 Josh Davidson (Octal450)
############
# Controls #
############
controls.stepSpoilers = func(step) { controls.stepSpoilers = func(step) {
pts.Controls.Flight.speedbrakeArm.setValue(0); pts.Controls.Flight.speedbrakeArm.setValue(0);
if (step == 1) { if (step == 1) {
@ -16,7 +10,31 @@ controls.stepSpoilers = func(step) {
} }
} }
var speedbrakeKey = func() {
if (pts.Controls.Flight.speedbrakeArm.getBoolValue()) {
pts.Controls.Flight.speedbrakeArm.setBoolValue(0);
} else {
pts.Controls.Flight.speedbrakeTemp = pts.Controls.Flight.speedbrake.getValue();
if (pts.Gear.wow[1].getBoolValue() or pts.Gear.wow[2].getBoolValue()) {
if (pts.Controls.Flight.speedbrake.getValue() < 1) {
pts.Controls.Flight.speedbrake.setValue(1);
} else {
pts.Controls.Flight.speedbrake.setValue(0);
}
} else {
if (pts.Controls.Flight.speedbrake.getValue() < 0.5) {
pts.Controls.Flight.speedbrake.setValue(0.5);
} else if (pts.Controls.Flight.speedbrake.getValue() < 1) {
pts.Controls.Flight.speedbrake.setValue(1);
} else {
pts.Controls.Flight.speedbrake.setValue(0);
}
}
}
}
var deploySpeedbrake = func() { var deploySpeedbrake = func() {
pts.Controls.Flight.speedbrakeArm.setBoolValue(0);
if (pts.Gear.wow[1].getBoolValue() or pts.Gear.wow[2].getBoolValue()) { if (pts.Gear.wow[1].getBoolValue() or pts.Gear.wow[2].getBoolValue()) {
if (pts.Controls.Flight.speedbrake.getValue() < 1.0) { if (pts.Controls.Flight.speedbrake.getValue() < 1.0) {
pts.Controls.Flight.speedbrake.setValue(1.0); pts.Controls.Flight.speedbrake.setValue(1.0);
@ -24,22 +42,23 @@ var deploySpeedbrake = func() {
} else { } else {
if (pts.Controls.Flight.speedbrake.getValue() < 0.5) { if (pts.Controls.Flight.speedbrake.getValue() < 0.5) {
pts.Controls.Flight.speedbrake.setValue(0.5); pts.Controls.Flight.speedbrake.setValue(0.5);
} else if (pts.Controls.Flight.speedbrake.getValue() < 1.0) { } else if (pts.Controls.Flight.speedbrake.getValue() < 1) {
pts.Controls.Flight.speedbrake.setValue(1.0); pts.Controls.Flight.speedbrake.setValue(1);
} }
} }
} }
var retractSpeedbrake = func() { var retractSpeedbrake = func() {
pts.Controls.Flight.speedbrakeArm.setBoolValue(0);
if (pts.Gear.wow[1].getBoolValue() or pts.Gear.wow[2].getBoolValue()) { if (pts.Gear.wow[1].getBoolValue() or pts.Gear.wow[2].getBoolValue()) {
if (pts.Controls.Flight.speedbrake.getValue() > 0.0) { if (pts.Controls.Flight.speedbrake.getValue() > 0) {
pts.Controls.Flight.speedbrake.setValue(0.0); pts.Controls.Flight.speedbrake.setValue(0);
} }
} else { } else {
if (pts.Controls.Flight.speedbrake.getValue() > 0.5) { if (pts.Controls.Flight.speedbrake.getValue() > 0.5) {
pts.Controls.Flight.speedbrake.setValue(0.5); pts.Controls.Flight.speedbrake.setValue(0.5);
} else if (pts.Controls.Flight.speedbrake.getValue() > 0.0) { } else if (pts.Controls.Flight.speedbrake.getValue() > 0) {
pts.Controls.Flight.speedbrake.setValue(0.0); pts.Controls.Flight.speedbrake.setValue(0);
} }
} }
} }

View file

@ -54,6 +54,7 @@ var Controls = {
flapsPos: props.globals.getNode("/controls/flight/flaps-pos"), flapsPos: props.globals.getNode("/controls/flight/flaps-pos"),
speedbrake: props.globals.getNode("/controls/flight/speedbrake"), speedbrake: props.globals.getNode("/controls/flight/speedbrake"),
speedbrakeArm: props.globals.getNode("/controls/flight/speedbrake-arm"), speedbrakeArm: props.globals.getNode("/controls/flight/speedbrake-arm"),
speedbrakeTemp: 0,
rudder: props.globals.getNode("/controls/flight/rudder"), rudder: props.globals.getNode("/controls/flight/rudder"),
rudderTrim: props.globals.getNode("/controls/flight/rudder-trim"), rudderTrim: props.globals.getNode("/controls/flight/rudder-trim"),
}, },
@ -104,6 +105,9 @@ var Fdm = {
alpha: props.globals.getNode("/fdm/jsbsim/aero/alpha-deg"), alpha: props.globals.getNode("/fdm/jsbsim/aero/alpha-deg"),
alphaNorm: props.globals.getNode("/fdm/jsbsim/aero/alpha-deg-norm"), alphaNorm: props.globals.getNode("/fdm/jsbsim/aero/alpha-deg-norm"),
}, },
Fadec: {
detent: [props.globals.getNode("/fdm/jsbsim/fadec/control-1/detent"),props.globals.getNode("/fdm/jsbsim/fadec/control-2/detent")],
},
Fcs: { Fcs: {
brake: [props.globals.getNode("/fdm/jsbsim/fcs/left-brake-cmd-norm"),props.globals.getNode("/fdm/jsbsim/fcs/right-brake-cmd-norm")], brake: [props.globals.getNode("/fdm/jsbsim/fcs/left-brake-cmd-norm"),props.globals.getNode("/fdm/jsbsim/fcs/right-brake-cmd-norm")],
flapDeg: props.globals.getNode("/fdm/jsbsim/fcs/flap-pos-deg"), flapDeg: props.globals.getNode("/fdm/jsbsim/fcs/flap-pos-deg"),
@ -213,7 +217,7 @@ var Instrumentation = {
MKVII: { MKVII: {
Inputs: { Inputs: {
Discretes: { Discretes: {
flap3Override: props.globals.getNode("/instrumentation/mk-viii/inputs/discretes/momentary-flap3-override"), flap3Override: props.globals.getNode("/instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override"),
}, },
}, },
}, },
@ -221,6 +225,10 @@ var Instrumentation = {
gsDeflection: props.globals.getNode("/instrumentation/nav[0]/gs-needle-deflection-norm"), gsDeflection: props.globals.getNode("/instrumentation/nav[0]/gs-needle-deflection-norm"),
locDeflection: props.globals.getNode("/instrumentation/nav[0]/heading-needle-deflection-norm"), locDeflection: props.globals.getNode("/instrumentation/nav[0]/heading-needle-deflection-norm"),
}, },
PFD: {
windDirection: props.globals.getNode("/instrumentation/pfd/wind-direction"),
windSpeed: props.globals.getNode("/instrumentation/pfd/wind-speed"),
},
TCAS: { TCAS: {
servicable: props.globals.getNode("/instrumentation/tcas/serviceable"), servicable: props.globals.getNode("/instrumentation/tcas/serviceable"),
Inputs: { Inputs: {

View file

@ -60,3 +60,15 @@ var printInput2 = func(key, i) {
setprop("FMGC/print/mcdu/page2/R4req", 1); setprop("FMGC/print/mcdu/page2/R4req", 1);
} }
} }
var data2Input = func(key, i) {
if (key == "L5") {
if (canvas_mcdu.myCLBWIND[i] == nil) {
canvas_mcdu.myCLBWIND[i] = windCLBPage.new(i);
} else {
canvas_mcdu.myCLBWIND[i].reload();
}
fmgc.windController.accessPage[i] = "DATA2";
setprop("MCDU[" ~ i ~ "]/page", "WINDCLB");
}
}

View file

@ -1,15 +0,0 @@
# A3XX mCDU by Joshua Davidson (Octal450), Jonathan Redpath, and Matthew Maring (mattmaring)
# Copyright (c) 2020 Matthew Maring (mattmaring)
var data2Input = func(key, i) {
if (key == "L5") {
if (canvas_mcdu.myCLBWIND[i] == nil) {
canvas_mcdu.myCLBWIND[i] = windCLBPage.new(i);
} else {
canvas_mcdu.myCLBWIND[i].reload();
}
fmgc.windController.accessPage[i] = "DATA2";
setprop("MCDU[" ~ i ~ "]/page", "WINDCLB");
}
}

View file

@ -168,6 +168,7 @@ var MCDU_reset = func(i) {
setprop("/FMGC/internal/eng-out-reduc", "1500"); setprop("/FMGC/internal/eng-out-reduc", "1500");
setprop("/MCDUC/reducacc-set", 0); setprop("/MCDUC/reducacc-set", 0);
fmgc.FMGCInternal.transAlt = 18000; fmgc.FMGCInternal.transAlt = 18000;
fmgc.FMGCInternal.transAltSet = 0;
# CLB PERF # CLB PERF
setprop("/FMGC/internal/activate-once", 0); setprop("/FMGC/internal/activate-once", 0);

View file

@ -358,8 +358,8 @@ var ATIS = {
raw = split('"}', raw)[0]; raw = split('"}', raw)[0];
} else { } else {
if (me.type == 0) { if (me.type == 0) {
raw = split('{"arr":"', raw)[1]; raw = split('"arr":"', raw)[1];
raw = split('","dep":', raw)[0]; raw = split('","dep":"', raw)[0];
} else { } else {
raw = split('","dep":"', raw)[1]; raw = split('","dep":"', raw)[1];
raw = split('"}', raw)[0]; raw = split('"}', raw)[0];

View file

@ -32,8 +32,6 @@ var ELEC = {
acEssBusFault: props.globals.getNode("/systems/failures/electrical/ac-ess-bus"), acEssBusFault: props.globals.getNode("/systems/failures/electrical/ac-ess-bus"),
ac1BusFault: props.globals.getNode("/systems/failures/electrical/ac-1-bus"), ac1BusFault: props.globals.getNode("/systems/failures/electrical/ac-1-bus"),
ac2BusFault: props.globals.getNode("/systems/failures/electrical/ac-2-bus"), ac2BusFault: props.globals.getNode("/systems/failures/electrical/ac-2-bus"),
bat1Fault: props.globals.getNode("/systems/failures/electrical/bat-1"),
bat2Fault: props.globals.getNode("/systems/failures/electrical/bat-2"),
dcEssBusFault: props.globals.getNode("/systems/failures/electrical/dc-ess-bus"), dcEssBusFault: props.globals.getNode("/systems/failures/electrical/dc-ess-bus"),
dc1BusFault: props.globals.getNode("/systems/failures/electrical/dc-1-bus"), dc1BusFault: props.globals.getNode("/systems/failures/electrical/dc-1-bus"),
dc2BusFault: props.globals.getNode("/systems/failures/electrical/dc-2-bus"), dc2BusFault: props.globals.getNode("/systems/failures/electrical/dc-2-bus"),
@ -194,8 +192,6 @@ var ELEC = {
me.Fail.acEssBusFault.setBoolValue(0); me.Fail.acEssBusFault.setBoolValue(0);
me.Fail.ac1BusFault.setBoolValue(0); me.Fail.ac1BusFault.setBoolValue(0);
me.Fail.ac2BusFault.setBoolValue(0); me.Fail.ac2BusFault.setBoolValue(0);
me.Fail.bat1Fault.setBoolValue(0);
me.Fail.bat2Fault.setBoolValue(0);
me.Fail.dcEssBusFault.setBoolValue(0); me.Fail.dcEssBusFault.setBoolValue(0);
me.Fail.dc1BusFault.setBoolValue(0); me.Fail.dc1BusFault.setBoolValue(0);
me.Fail.dc2BusFault.setBoolValue(0); me.Fail.dc2BusFault.setBoolValue(0);

View file

@ -7,7 +7,7 @@ var HYD = {
lcont: 0, lcont: 0,
rcont: 0, rcont: 0,
Brakes: { Brakes: {
accumPressPsi: props.globals.initNode("/systems/hydraulic/yellow-accumulator-psi-cmd", 0, "INT"), accumPressPsi: props.globals.initNode("/systems/hydraulic/yellow-accumulator-psi-cmd", 3000, "INT"),
leftPressPsi: props.globals.initNode("/systems/hydraulic/brakes/pressure-left-psi", 0, "INT"), leftPressPsi: props.globals.initNode("/systems/hydraulic/brakes/pressure-left-psi", 0, "INT"),
rightPressPsi: props.globals.initNode("/systems/hydraulic/brakes/pressure-right-psi", 0, "INT"), rightPressPsi: props.globals.initNode("/systems/hydraulic/brakes/pressure-right-psi", 0, "INT"),
mode: props.globals.initNode("/systems/hydraulic/brakes/mode", 0, "INT"), mode: props.globals.initNode("/systems/hydraulic/brakes/mode", 0, "INT"),
@ -62,6 +62,11 @@ var HYD = {
yellowFire: props.globals.getNode("/systems/hydraulic/sources/yellow-edp/fire-valve"), yellowFire: props.globals.getNode("/systems/hydraulic/sources/yellow-edp/fire-valve"),
greenFire: props.globals.getNode("/systems/hydraulic/sources/green-edp/fire-valve"), greenFire: props.globals.getNode("/systems/hydraulic/sources/green-edp/fire-valve"),
}, },
Warnings: {
blueAbnormLoPr: props.globals.getNode("/ECAM/warnings/hyd/blue-abnorm-lo-pr"),
greenAbnormLoPr: props.globals.getNode("/ECAM/warnings/hyd/green-abnorm-lo-pr"),
yellowAbnormLoPr: props.globals.getNode("/ECAM/warnings/hyd/yellow-abnorm-lo-pr"),
},
init: func() { init: func() {
me.resetFail(); me.resetFail();
me.Qty.blueInput.setValue(math.round((rand() * 2) + 6 , 0.1)); # Random between 6 and 8 me.Qty.blueInput.setValue(math.round((rand() * 2) + 6 , 0.1)); # Random between 6 and 8
@ -74,6 +79,7 @@ var HYD = {
me.Switch.rat.setValue(0); me.Switch.rat.setValue(0);
me.Switch.yellowEDP.setValue(1); me.Switch.yellowEDP.setValue(1);
me.Switch.yellowElec.setValue(0); me.Switch.yellowElec.setValue(0);
me.Brakes.accumPressPsi.setValue(3000);
}, },
resetFail: func() { resetFail: func() {
me.Fail.blueElec.setBoolValue(0); me.Fail.blueElec.setBoolValue(0);

View file

@ -530,7 +530,7 @@
<property>/systems/navigation/probes/tat-1/tat</property> <property>/systems/navigation/probes/tat-1/tat</property>
<quotient> <quotient>
<pow> <pow>
<property>/velocities/TAS</property> <property>/instrumentation/airspeed-indicator/true-speed-kt</property>
<value>2</value> <value>2</value>
</pow> </pow>
<value>7569</value> <value>7569</value>

View file

@ -3,12 +3,10 @@
<!-- Airbus A320 Aerodynamics --> <!-- Airbus A320 Aerodynamics -->
<!-- Copyright (c) 2021 Josh Davidson (Octal450) --> <!-- Copyright (c) 2021 Josh Davidson (Octal450) -->
<aerodynamics> <!-- WIP REWORK 2020 by Josh Davidson (Octal450) --> <aerodynamics>
<property value="0">ice/wingL</property> <property value="0">ice/wingL</property>
<property value="0">ice/wingR</property> <property value="0">ice/wingR</property>
<property value="0">tuneF</property>
<property value="0">tuneS</property>
<function name="aero/function/kCLge"> <function name="aero/function/kCLge">
<description>Lift factor due to ground effect</description> <description>Lift factor due to ground effect</description>
@ -497,7 +495,7 @@
<property>aero/qbar-psf</property> <property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>aero/beta-rad</property> <property>aero/beta-rad</property>
<value>-0.8887</value> <value>-0.6457</value>
</product> </product>
</function> </function>
@ -527,7 +525,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>aero/bi2vel</property> <property>aero/bi2vel</property>
<property>velocities/r-aero-rad_sec</property> <property>velocities/r-aero-rad_sec</property>
<value>0.8709</value> <value>0.6983</value>
</product> </product>
</function> </function>
@ -537,7 +535,7 @@
<property>aero/qbar-psf</property> <property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<toradians><property>hydraulics/rudder/final-deg</property></toradians> <toradians><property>hydraulics/rudder/final-deg</property></toradians>
<value>-0.214</value> <value>-0.145</value>
</product> </product>
</function> </function>
@ -575,7 +573,7 @@
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<property>aero/bi2vel</property> <property>aero/bi2vel</property>
<property>velocities/p-aero-rad_sec</property> <property>velocities/p-aero-rad_sec</property>
<value>-0.58</value> <value>-0.53</value>
</product> </product>
</function> </function>
@ -598,7 +596,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<toradians><property>hydraulics/aileron-l/final-deg</property></toradians> <toradians><property>hydraulics/aileron-l/final-deg</property></toradians>
<value>0.044</value> <value>0.031</value>
</product> </product>
</function> </function>
@ -609,7 +607,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<toradians><property>hydraulics/aileron-r/final-deg</property></toradians> <toradians><property>hydraulics/aileron-r/final-deg</property></toradians>
<value>-0.044</value> <value>-0.031</value>
</product> </product>
</function> </function>
@ -620,7 +618,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<toradians><property>fcs/spoiler-left-deg</property></toradians> <toradians><property>fcs/spoiler-left-deg</property></toradians>
<value>-0.033</value> <value>-0.023</value>
</product> </product>
</function> </function>
@ -631,7 +629,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<toradians><property>fcs/spoiler-right-deg</property></toradians> <toradians><property>fcs/spoiler-right-deg</property></toradians>
<value>0.033</value> <value>0.023</value>
</product> </product>
</function> </function>
@ -713,7 +711,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/cbarw-ft</property> <property>metrics/cbarw-ft</property>
<toradians><property>hydraulics/elevator-l/final-deg</property></toradians> <toradians><property>hydraulics/elevator-l/final-deg</property></toradians>
<value>-0.557175</value> <value>-0.345</value>
</product> </product>
</function> </function>
@ -724,7 +722,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/cbarw-ft</property> <property>metrics/cbarw-ft</property>
<toradians><property>hydraulics/elevator-r/final-deg</property></toradians> <toradians><property>hydraulics/elevator-r/final-deg</property></toradians>
<value>-0.557175</value> <value>-0.345</value>
</product> </product>
</function> </function>
@ -735,7 +733,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/cbarw-ft</property> <property>metrics/cbarw-ft</property>
<toradians><property>hydraulics/stabilizer/final-deg</property></toradians> <toradians><property>hydraulics/stabilizer/final-deg</property></toradians>
<value>-1.975</value> <value>-2.575</value>
</product> </product>
</function> </function>
@ -773,7 +771,7 @@
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<property>aero/bi2vel</property> <property>aero/bi2vel</property>
<property>velocities/r-aero-rad_sec</property> <property>velocities/r-aero-rad_sec</property>
<value>-0.3</value> <value>-0.25</value>
</product> </product>
</function> </function>
@ -784,7 +782,7 @@
<property>metrics/Sw-sqft</property> <property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property> <property>metrics/bw-ft</property>
<toradians><property>hydraulics/rudder/final-deg</property></toradians> <toradians><property>hydraulics/rudder/final-deg</property></toradians>
<value>0.061</value> <value>0.042</value>
</product> </product>
</function> </function>

View file

@ -38,16 +38,16 @@
<independentVar lookup="row">velocities/mach</independentVar> <independentVar lookup="row">velocities/mach</independentVar>
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 43000 50000
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000 0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2840 0.0000
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000 0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2740 0.0000
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000 0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2670 0.0000
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000 0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2310 0.0000
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000 0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.2060 0.0000
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000 0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1270 0.0000
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000 1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0580 0.0000
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

@ -7,6 +7,16 @@
<channel name="Animations"> <channel name="Animations">
<lag_filter name="spoilers/main-lever">
<input>spoilers/lever-cmd</input>
<c1>20</c1>
</lag_filter>
<lag_filter name="spoilers/lever-arm">
<input>/controls/flight/speedbrake-arm</input>
<c1>20</c1>
</lag_filter>
<fcs_function name="fadec/throttle-lever[0]"> <fcs_function name="fadec/throttle-lever[0]">
<function> <function>
<quotient> <quotient>

View file

@ -25,14 +25,12 @@
</difference> </difference>
<table> <table>
<independentVar lookup="row">/systems/electrical/sources/bat-1/percent</independentVar> <independentVar lookup="row">/systems/electrical/sources/bat-1/percent</independentVar>
<independentVar lookup="column">/systems/failures/electrical/bat-1</independentVar>
<tableData> <tableData>
0 1 0 0.0
0 0.0 0.0 10 24.0
10 24.0 4.0 50 25.5
50 25.5 5.0 85 26.5
85 26.5 6.0 100 31.0
100 31.0 7.0
</tableData> </tableData>
</table> </table>
</sum> </sum>
@ -270,14 +268,12 @@
</difference> </difference>
<table> <table>
<independentVar lookup="row">/systems/electrical/sources/bat-2/percent</independentVar> <independentVar lookup="row">/systems/electrical/sources/bat-2/percent</independentVar>
<independentVar lookup="column">/systems/failures/electrical/bat-2</independentVar>
<tableData> <tableData>
0 1 0 0.0
0 0.0 0.0 10 24.0
10 24.0 4.0 50 25.5
50 25.5 5.0 85 26.5
85 26.5 6.0 100 31.0
100 31.0 7.0
</tableData> </tableData>
</table> </table>
</sum> </sum>

View file

@ -12,9 +12,9 @@
<vtailarea unit="FT2">248.79</vtailarea> <vtailarea unit="FT2">248.79</vtailarea>
<location name="AERORP" unit="M"> <location name="AERORP" unit="M">
<x>-2.6496</x> <x>-2.2658</x>
<y>0</y> <y>0</y>
<z>-0.75</z> <z>-0.934</z>
</location> </location>
<location name="EYEPOINT" unit="M"> <location name="EYEPOINT" unit="M">

View file

@ -9,6 +9,28 @@
<channel name="Spoiler Logic"> <channel name="Spoiler Logic">
<switch name="spoilers/auto-speedbrake-arm"> <!-- Important for spoiler axis -->
<default value="/controls/flight/speedbrake-arm"/>
<test value="0">
/controls/flight/speedbrake gt 0
</test>
<output>/controls/flight/speedbrake-arm</output>
</switch>
<fcs_function name="spoilers/lever-input">
<function>
<table>
<independentVar lookup="row">/controls/flight/speedbrake</independentVar>
<tableData>
0.10 0.0
0.45 0.5
0.55 0.5
0.90 1.0
</tableData>
</table>
</function>
</fcs_function>
<switch name="spoilers/main-gear-or"> <switch name="spoilers/main-gear-or">
<default value="0"/> <default value="0"/>
<test logic="OR" value="1"> <test logic="OR" value="1">
@ -25,8 +47,8 @@
</test> </test>
</switch> </switch>
<switch name="spoilers/auto-speedbrake-cmd"> <switch name="spoilers/auto-speedbrake">
<default value="spoilers/auto-speedbrake-cmd"/> <default value="spoilers/auto-speedbrake"/>
<test logic="OR" value="0"> <!-- Reset --> <test logic="OR" value="0"> <!-- Reset -->
fadec/control-1/detent ne 0 fadec/control-1/detent ne 0
fadec/control-2/detent ne 0 fadec/control-2/detent ne 0
@ -39,7 +61,7 @@
spoilers/main-gear-and eq 1 spoilers/main-gear-and eq 1
/velocities/groundspeed-kt ge 72 /velocities/groundspeed-kt ge 72
</test> </test>
<test logic="AND" value="0.20"> <!-- PLD Set 10 degrees --> <test logic="AND" value="0.2"> <!-- PLD Set 10 degrees -->
fadec/control-1/detent eq 0 fadec/control-1/detent eq 0
fadec/control-2/detent eq 0 fadec/control-2/detent eq 0
/controls/flight/speedbrake-arm eq 1 /controls/flight/speedbrake-arm eq 1
@ -48,51 +70,38 @@
</test> </test>
</switch> </switch>
<switch name="spoilers/lever-cmd">
<default value="spoilers/lever-input"/>
<test value="spoilers/auto-speedbrake">
/controls/flight/speedbrake-arm eq 1
</test>
</switch>
<switch name="spoilers/max-spoiler"> <switch name="spoilers/max-spoiler">
<default value="1.0"/> <default value="1.0"/>
<test logic="AND" value="0.4"> <test logic="AND" value="0.4">
spoilers/main-gear-or eq 0 spoilers/main-gear-or eq 0
fbw/fmgc/enabled eq 1 fbw/fmgc/enabled eq 1
</test> </test>
<test logic="AND" value="0.8">
spoilers/main-gear-or eq 0
fbw/fmgc/enabled eq 1
</test>
</switch> </switch>
<fcs_function name="spoilers/speedbrake-nul"> <fcs_function name="spoilers/main-cmd">
<function> <function>
<table> <table>
<independentVar lookup="row">/controls/flight/speedbrake</independentVar> <independentVar lookup="row">spoilers/lever-cmd</independentVar>
<tableData> <tableData> <!-- Half is 12.5/25 of 20/40 -->
0.10 0.0 0.0 0.000
0.45 0.625 0.5 0.625
0.55 0.625 1.0 1.000
0.95 1.0
</tableData> </tableData>
</table> </table>
</function> </function>
</fcs_function> <output>fbw/spoiler-output</output>
<lag_filter name="spoilers/main-lever">
<input>spoilers/speedbrake-nul</input>
<c1>20</c1>
</lag_filter>
<summer name="spoilers/main-cmd">
<input>spoilers/speedbrake-nul</input>
<input>spoilers/auto-speedbrake-cmd</input>
<clipto> <clipto>
<min>0.0</min> <min>0</min>
<max>spoilers/max-spoiler</max> <max>spoilers/max-spoiler</max>
</clipto> </clipto>
<output>fbw/spoiler-output</output> </fcs_function>
</summer>
<lag_filter name="spoilers/lever-arm">
<input>/controls/flight/speedbrake-arm</input>
<c1>20</c1>
</lag_filter>
<fcs_function name="hydraulics/spoiler-droop-rate"> <fcs_function name="hydraulics/spoiler-droop-rate">
<function> <function>
@ -125,7 +134,7 @@
<pure_gain name="hydraulics/spoiler-l1/cmd-deg"> <pure_gain name="hydraulics/spoiler-l1/cmd-deg">
<input>hydraulics/spoiler-l1/switch</input> <input>hydraulics/spoiler-l1/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-l1/rate"> <switch name="hydraulics/spoiler-l1/rate">
@ -243,7 +252,7 @@
<pure_gain name="hydraulics/spoiler-l2/cmd-deg"> <pure_gain name="hydraulics/spoiler-l2/cmd-deg">
<input>hydraulics/spoiler-l2/switch</input> <input>hydraulics/spoiler-l2/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-l2/rate"> <switch name="hydraulics/spoiler-l2/rate">
@ -339,7 +348,7 @@
<pure_gain name="hydraulics/spoiler-l3/cmd-deg"> <pure_gain name="hydraulics/spoiler-l3/cmd-deg">
<input>hydraulics/spoiler-l3/switch</input> <input>hydraulics/spoiler-l3/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-l3/rate"> <switch name="hydraulics/spoiler-l3/rate">
@ -435,7 +444,7 @@
<pure_gain name="hydraulics/spoiler-l4/cmd-deg"> <pure_gain name="hydraulics/spoiler-l4/cmd-deg">
<input>hydraulics/spoiler-l4/switch</input> <input>hydraulics/spoiler-l4/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-l4/rate"> <switch name="hydraulics/spoiler-l4/rate">
@ -507,7 +516,7 @@
<pure_gain name="hydraulics/spoiler-l5/cmd-deg"> <pure_gain name="hydraulics/spoiler-l5/cmd-deg">
<input>hydraulics/spoiler-l5/switch</input> <input>hydraulics/spoiler-l5/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-l5/rate"> <switch name="hydraulics/spoiler-l5/rate">
@ -546,7 +555,7 @@
<pure_gain name="hydraulics/spoiler-r1/cmd-deg"> <pure_gain name="hydraulics/spoiler-r1/cmd-deg">
<input>hydraulics/spoiler-r1/switch</input> <input>hydraulics/spoiler-r1/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-r1/rate"> <switch name="hydraulics/spoiler-r1/rate">
@ -664,7 +673,7 @@
<pure_gain name="hydraulics/spoiler-r2/cmd-deg"> <pure_gain name="hydraulics/spoiler-r2/cmd-deg">
<input>hydraulics/spoiler-r2/switch</input> <input>hydraulics/spoiler-r2/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-r2/rate"> <switch name="hydraulics/spoiler-r2/rate">
@ -760,7 +769,7 @@
<pure_gain name="hydraulics/spoiler-r3/cmd-deg"> <pure_gain name="hydraulics/spoiler-r3/cmd-deg">
<input>hydraulics/spoiler-r3/switch</input> <input>hydraulics/spoiler-r3/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-r3/rate"> <switch name="hydraulics/spoiler-r3/rate">
@ -856,7 +865,7 @@
<pure_gain name="hydraulics/spoiler-r4/cmd-deg"> <pure_gain name="hydraulics/spoiler-r4/cmd-deg">
<input>hydraulics/spoiler-r4/switch</input> <input>hydraulics/spoiler-r4/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-r4/rate"> <switch name="hydraulics/spoiler-r4/rate">
@ -928,7 +937,7 @@
<pure_gain name="hydraulics/spoiler-r5/cmd-deg"> <pure_gain name="hydraulics/spoiler-r5/cmd-deg">
<input>hydraulics/spoiler-r5/switch</input> <input>hydraulics/spoiler-r5/switch</input>
<gain>50.0</gain> <gain>50</gain>
</pure_gain> </pure_gain>
<switch name="hydraulics/spoiler-r5/rate"> <switch name="hydraulics/spoiler-r5/rate">

View file

@ -67,16 +67,16 @@
<independentVar lookup="row">velocities/mach</independentVar> <independentVar lookup="row">velocities/mach</independentVar>
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 43000 50000
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000 0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2840 0.0000
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000 0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2740 0.0000
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000 0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2670 0.0000
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000 0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2310 0.0000
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000 0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.2060 0.0000
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000 0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1270 0.0000
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000 1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0580 0.0000
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

@ -577,14 +577,6 @@
<output>/systems/pressurization/targetvs</output> <output>/systems/pressurization/targetvs</output>
</filter> </filter>
<filter>
<name>TAS</name>
<type>gain</type>
<gain>1.0</gain>
<input>/instrumentation/airspeed-indicator/true-speed-kt</input>
<output>/velocities/TAS</output>
</filter>
<filter> <filter>
<name>LBtoKG</name> <name>LBtoKG</name>
<type>gain</type> <type>gain</type>

View file

@ -574,4 +574,107 @@
<output>/instrumentation/iesi/pitch-deg</output> <output>/instrumentation/iesi/pitch-deg</output>
</filter> </filter>
<filter>
<name>Wind East</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<expression>
<difference>
<product>
<property>/velocities/speed-east-fps</property>
<value>0.592484</value> <!-- fps to kt -->
</product>
<product>
<cos><deg2rad><property>/orientation/pitch-deg</property></deg2rad></cos>
<sin><deg2rad><property>/orientation/heading-deg</property></deg2rad></sin>
<!--<floor>-->
<property>/systems/navigation/adr/output/tas-3</property>
<!--<value>100</value>
</floor>-->
</product>
</difference>
</expression>
</input>
<output>/instrumentation/pfd/wind-speed-east</output>
<min>-4096</min>
<max>4096</max>
</filter>
<filter>
<name>Wind North</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<expression>
<difference>
<product>
<property>/velocities/speed-north-fps</property>
<value>0.592484</value> <!-- fps to kt -->
</product>
<product>
<cos><deg2rad><property>/orientation/pitch-deg</property></deg2rad></cos>
<cos><deg2rad><property>/orientation/heading-deg</property></deg2rad></cos>
<!--<floor>-->
<property>/systems/navigation/adr/output/tas-3</property>
<!--<value>100</value>
</floor>-->
</product>
</difference>
</expression>
</input>
<output>/instrumentation/pfd/wind-speed-north</output>
<min>-4096</min>
<max>4096</max>
</filter>
<filter>
<name>Wind Direction</name>
<type>exponential</type>
<filter-time>1.28</filter-time>
<input>
<expression>
<sum>
<rad2deg>
<atan2>
<property>/instrumentation/pfd/wind-speed-east</property>
<property>/instrumentation/pfd/wind-speed-north</property>
</atan2>
</rad2deg>
<value>180</value>
</sum>
</expression>
</input>
<output>/instrumentation/pfd/wind-direction</output>
<period>
<min>0</min>
<max>360</max>
</period>
</filter>
<filter>
<name>Wind Speed</name>
<type>exponential</type>
<filter-time>1.28</filter-time>
<input>
<expression>
<sqrt>
<sum>
<pow>
<property>/instrumentation/pfd/wind-speed-east</property>
<value>2</value>
</pow>
<pow>
<property>/instrumentation/pfd/wind-speed-north</property>
<value>2</value>
</pow>
</sum>
</sqrt>
</expression>
</input>
<output>/instrumentation/pfd/wind-speed</output>
<min>0</min>
<max>256</max>
</filter>
</PropertyList> </PropertyList>