diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index b91aa368..54722908 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -496,6 +496,7 @@ <object-name>master_caution_on</object-name> <object-name>master_warning_on</object-name> <object-name>qnh-test</object-name> + <object-name>rudder-trim-test</object-name> <object-name>spd-text-test</object-name> <object-name>terr_on_nd_on</object-name> <object-name>ver.fmgc</object-name> @@ -508,6 +509,162 @@ </condition> </animation> + <!-- Aft Pedestal --> + <animation> + <type>pick</type> + <object-name>RudderTrim</object-name> + <action> + <button>3</button> + <button>0</button> + <repeatable type="bool">true</repeatable> + <binding> + <command>nasal</command> + <script> + var TrimVal = getprop("/controls/flight/rudder-trim"); + setprop("/controls/flight/rudder-trim", TrimVal + 0.01); + setprop("/controls/switches/rudder-trim", 1); + </script> + </binding> + <mod-up> + <binding> + <command>property-assign</command> + <property>controls/switches/rudder-trim</property> + <value>0</value> + </binding> + </mod-up> + </action> + <action> + <button>4</button> + <button>1</button> + <repeatable type="bool">true</repeatable> + <binding> + <command>nasal</command> + <script> + var TrimVal = getprop("/controls/flight/rudder-trim"); + setprop("/controls/flight/rudder-trim", TrimVal - 0.01); + setprop("/controls/switches/rudder-trim", -1); + </script> + </binding> + <mod-up> + <binding> + <command>property-assign</command> + <property>controls/switches/rudder-trim</property> + <value>0</value> + </binding> + </mod-up> + </action> + </animation> + <animation> + <type>rotate</type> + <object-name>RudderTrim</object-name> + <property>controls/switches/rudder-trim</property> + <factor>-30</factor> + <axis> + <object-name>RudderTrim.axis</object-name> + </axis> + </animation> + + <animation> + <type>pick</type> + <object-name>ResetRudderTrim</object-name> + <action> + <button>0</button> + <repeatable type="bool">false</repeatable> + <binding> + <command>nasal</command> + <script> + setprop("/controls/flight/rudder-trim", 0); + </script> + </binding> + </action> + </animation> + + <text> + <name>rudder-trim</name> + <offsets> + <x-m>0.12323</x-m> + <y-m>-0.01972</y-m> + <z-m>-0.137</z-m> + <heading-deg>90</heading-deg> + <roll-deg>0</roll-deg> + </offsets> + <alignment>center-center</alignment> + <axis-alignment>xy-plane</axis-alignment> + <type type="string">number-value</type> + <format type="string">%2.1f</format> + <property>controls/flight/rudder-trim-deg</property> + <truncate type="bool">false</truncate> + <font type="string">led.txf</font> + <draw-text type="bool">true</draw-text> + <draw-alignment type="bool">false</draw-alignment> + <draw-boundingbox type="bool">false</draw-boundingbox> + <character-size>0.009</character-size> + <font-resolution> + <width type="int">32</width> + <height type="int">32</height> + </font-resolution> + </text> + + <text> + <name>rudder-trim-test</name> + <offsets> + <x-m>0.12323</x-m> + <y-m>-0.01972</y-m> + <z-m>-0.137</z-m> + <heading-deg>90</heading-deg> + <roll-deg>0</roll-deg> + </offsets> + <alignment>center-center</alignment> + <axis-alignment>xy-plane</axis-alignment> + <type type="string">text-value</type> + <format type="string">-88.8</format> + <property>autopilot/servicable</property> + <truncate type="bool">false</truncate> + <font type="string">led.txf</font> + <draw-text type="bool">true</draw-text> + <draw-alignment type="bool">false</draw-alignment> + <draw-boundingbox type="bool">false</draw-boundingbox> + <character-size>0.009</character-size> + <font-resolution> + <width type="int">32</width> + <height type="int">32</height> + </font-resolution> + </text> + + <animation> + <type>select</type> + <object-name>rudder-trim</object-name> + <condition> + <not-equals> + <property>controls/switches/annun-test</property> + <value>1</value> + </not-equals> + </condition> + </animation> + + <animation> + <type>rotate</type> + <object-name>ParkBrk</object-name> + <property>controls/gear/brake-parking</property> + <factor>-90</factor> + <axis> + <object-name>ParkBrk.axis</object-name> + </axis> + </animation> + + <animation> + <type>pick</type> + <object-name>ParkBrk</object-name> + <action> + <button>0</button> + <repeatable type="bool">false</repeatable> + <binding> + <command>property-toggle</command> + <property>controls/gear/brake-parking</property> + </binding> + </action> + </animation> + <!-- Autobrakes --> <animation> <type>select</type> @@ -3097,7 +3254,7 @@ <axis-alignment>xy-plane</axis-alignment> <type type="string">text-value</type> <format type="string">.888</format> - <property>autopilot/serviceable</property> + <property>autopilot/servicable</property> <truncate type="bool">false</truncate> <font type="string">led.txf</font> <draw-text type="bool">true</draw-text> @@ -3149,7 +3306,7 @@ <axis-alignment>xy-plane</axis-alignment> <type type="string">text-value</type> <format type="string">888</format> - <property>autopilot/serviceable</property> + <property>autopilot/servicable</property> <truncate type="bool">false</truncate> <font type="string">led.txf</font> <draw-text type="bool">true</draw-text> @@ -3201,7 +3358,7 @@ <axis-alignment>xy-plane</axis-alignment> <type type="string">text-value</type> <format type="string">88888</format> - <property>autopilot/serviceable</property> + <property>autopilot/servicable</property> <truncate type="bool">false</truncate> <font type="string">led.txf</font> <draw-text type="bool">true</draw-text> @@ -3279,7 +3436,7 @@ <axis-alignment>xy-plane</axis-alignment> <type type="string">text-value</type> <format type="string">-8888</format> - <property>autopilot/serviceable</property> + <property>autopilot/servicable</property> <truncate type="bool">false</truncate> <font type="string">led.txf</font> <draw-text type="bool">true</draw-text> @@ -4922,6 +5079,7 @@ <object-name>qnh-std</object-name> <object-name>qnh-test</object-name> <object-name>rudder-trim</object-name> + <object-name>rudder-trim-test</object-name> <diffuse> <red>0.89</red> <green>0.37</green> diff --git a/Models/FlightDeck/res/brightness.png b/Models/FlightDeck/res/brightness.png index 8fb72ec3..03f87895 100644 Binary files a/Models/FlightDeck/res/brightness.png and b/Models/FlightDeck/res/brightness.png differ diff --git a/Models/FlightDeck/res/fd_complete.ac b/Models/FlightDeck/res/fd_complete.ac index 5ddb352a..d380da02 100644 --- a/Models/FlightDeck/res/fd_complete.ac +++ b/Models/FlightDeck/res/fd_complete.ac @@ -36,6 +36,7 @@ MATERIAL "stby_ai_screen" rgb 1 1 1 amb 0.712 0.712 0.712 emis 0.707 0.707 0.7 MATERIAL "trim" rgb 1 1 1 amb 1 1 1 emis 0.1 0.1 0.1 spec 0.2 0.2 0.2 shi 13 trans 0 MATERIAL "visor_glass" rgb 0.029 0.029 0.029 amb 0.588 0.588 0.588 emis 0 0 0 spec 1 1 1 shi 12 trans 0.069 MATERIAL "ac3dmat1.015" rgb 1 1 1 amb 0.7464 0.7464 0.7464 emis 1 0.7765 0.6588 spec 1 1 0.9843 shi 5 trans 0 +MATERIAL "ac3dmat1.033" rgb 0 0 0 amb 0 0 0 emis 0 0 0 spec 0 0 0 shi 0 trans 0 OBJECT world kids 344 OBJECT poly @@ -39722,7 +39723,7 @@ refs 4 7 0.381431 0.126174 4 0.381431 1.06004 SURF 0x0 -mat 15 +mat 37 refs 4 7 0.381431 0.126174 3 0.521795 0.009755 @@ -39756,6 +39757,7 @@ data 12 ceiling.mesh texture "cpit_5.png" crease 45.000000 +hidden numvert 164 0.53895 1.06661 0.88031 0.56068 1.08669 0.87608 @@ -189869,6 +189871,7 @@ refs 4 kids 1 OBJECT poly name "ParkBrk.axis" +loc 0.00675055 0 0 data 17 ParkBrk.axis.mesh crease 45.000000 @@ -201344,7 +201347,7 @@ refs 3 181 0.3199 0.547582 75 0.320057 0.572833 SURF 0x0 -mat 10 +mat 37 refs 4 128 0.684988 0.570038 157 0.684988 0.60272 @@ -201457,7 +201460,7 @@ refs 3 67 0.806209 0.914152 26 0.808266 0.904619 SURF 0x0 -mat 10 +mat 37 refs 7 113 0.984696 0.775693 108 0.979874 0.775693 @@ -202718,7 +202721,7 @@ refs 4 24 0.957265 0.782743 4 0.956106 0.781561 SURF 0x0 -mat 10 +mat 37 refs 4 8 0.958755 0.768243 18 0.959598 0.757627 @@ -202746,7 +202749,7 @@ refs 4 33 0.957265 0.769569 15 0.956106 0.768387 SURF 0x0 -mat 10 +mat 37 refs 4 38 0.282528 0.278297 28 0.282528 0.263519 @@ -208068,7 +208071,7 @@ refs 4 24 0.966505 0.766245 29 0.966491 0.761758 SURF 0x0 -mat 10 +mat 37 refs 4 34 0.961054 0.770783 33 0.96417 0.770773 @@ -397974,138 +397977,138 @@ refs 3 6 0.811554 0.864259 8 0.828336 0.868453 SURF 0x0 -mat 10 +mat 37 refs 3 7 0.572176 0.87053 8 0.828336 0.868453 9 0.566053 0.875159 SURF 0x0 -mat 10 +mat 37 refs 3 9 0.566053 0.875159 8 0.828336 0.868453 10 0.833178 0.872998 SURF 0x0 -mat 10 +mat 37 refs 3 9 0.566053 0.875159 10 0.833178 0.872998 11 0.560356 0.881011 SURF 0x0 -mat 10 +mat 37 refs 3 11 0.560356 0.881011 10 0.833178 0.872998 12 0.839214 0.878664 SURF 0x0 -mat 10 +mat 37 refs 3 11 0.560356 0.881011 12 0.839214 0.878664 13 0.555923 0.885995 SURF 0x0 -mat 10 +mat 37 refs 4 23 0.844411 0.917246 24 0.843351 0.922316 25 0.555453 0.928407 22 0.553702 0.922444 SURF 0x0 -mat 10 +mat 37 refs 4 15 0.841565 0.886533 14 0.554401 0.892136 13 0.555923 0.885995 12 0.839214 0.878664 SURF 0x0 -mat 10 +mat 37 refs 4 26 0.842632 0.927332 28 0.557738 0.936293 25 0.555453 0.928407 24 0.843351 0.922316 SURF 0x0 -mat 10 +mat 37 refs 3 18 0.552703 0.905073 19 0.843991 0.903775 20 0.553212 0.913901 SURF 0x0 -mat 10 +mat 37 refs 4 19 0.843991 0.903775 18 0.552703 0.905073 17 0.552456 0.9 16 0.843343 0.892487 SURF 0x0 -mat 10 +mat 37 refs 3 22 0.553702 0.922444 21 0.844476 0.912166 23 0.844411 0.917246 SURF 0x0 -mat 10 +mat 37 refs 4 15 0.841565 0.886533 16 0.843343 0.892487 17 0.552456 0.9 14 0.554401 0.892136 SURF 0x0 -mat 10 +mat 37 refs 3 28 0.557738 0.936293 26 0.842632 0.927332 27 0.841078 0.933234 SURF 0x0 -mat 10 +mat 37 refs 3 28 0.557738 0.936293 27 0.841078 0.933234 29 0.839465 0.938169 SURF 0x0 -mat 10 +mat 37 refs 3 28 0.557738 0.936293 29 0.839465 0.938169 32 0.563622 0.94211 SURF 0x0 -mat 10 +mat 37 refs 3 32 0.563622 0.94211 29 0.839465 0.938169 30 0.836694 0.942975 SURF 0x0 -mat 10 +mat 37 refs 3 32 0.563622 0.94211 30 0.836694 0.942975 31 0.836102 0.947729 SURF 0x0 -mat 10 +mat 37 refs 3 32 0.563622 0.94211 31 0.836102 0.947729 33 0.830512 0.952941 SURF 0x0 -mat 10 +mat 37 refs 3 32 0.563622 0.94211 33 0.830512 0.952941 35 0.568236 0.946884 SURF 0x0 -mat 10 +mat 37 refs 3 35 0.568236 0.946884 33 0.830512 0.952941 34 0.829454 0.95748 SURF 0x0 -mat 10 +mat 37 refs 3 35 0.568236 0.946884 34 0.829454 0.95748 37 0.824313 0.961752 SURF 0x0 -mat 10 +mat 37 refs 3 35 0.568236 0.946884 37 0.824313 0.961752 @@ -398171,7 +398174,7 @@ refs 3 46 0.613711 0.961463 45 0.61372 0.961463 SURF 0x0 -mat 10 +mat 37 refs 4 21 0.844476 0.912166 22 0.553702 0.922444 diff --git a/Systems/libraries.xml b/Systems/libraries.xml index c0caa2ec..964a62f2 100644 --- a/Systems/libraries.xml +++ b/Systems/libraries.xml @@ -16,6 +16,24 @@ <seconds>2.0</seconds> <filter-gain>0.0</filter-gain> </predict-simple> + + <filter> + <name>Rudder Trim</name> + <type>gain</type> + <gain>1</gain> + <update-interval-secs type="double">0.05</update-interval-secs> + <input> + <expression> + <table> + <property>/controls/flight/rudder-trim</property> + <entry><ind>-1</ind><dep>-10.0</dep></entry> + <entry><ind> 0</ind><dep> 0.0</dep></entry> + <entry><ind> 1</ind><dep> 10.0</dep></entry> + </table> + </expression> + </input> + <output>/controls/flight/rudder-trim-deg</output> + </filter> <filter> <name>OAT Thrust Scale</name>