<?xml version="1.0" encoding="utf-8" ?> <!-- This simulates a Bendix/King KLN94 GPS Nasal and XML 2013 James Turner Model, Texture and Animations 2023 Benedikt Wolf --> <PropertyList> <path>kln94.ac</path> <animation> <type>pick</type> <object-name>ent-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.enter();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/enter-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/enter-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>ent-btn</object-name> <property>instrumentation/kln94[0]/enter-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>crsr-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.toggleCursorMode();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/cursor-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/cursor-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>crsr-btn</object-name> <property>instrumentation/kln94[0]/cursor-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>nrst-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.nearestButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/nearest-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/nearest-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>nrst-btn</object-name> <property>instrumentation/kln94[0]/nearest-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>dto-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.directTo();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/direct-to-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/direct-to-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>dto-btn</object-name> <property>instrumentation/kln94[0]/direct-to-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>obs-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.obsButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/obs-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/obs-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>obs-btn</object-name> <property>instrumentation/kln94[0]/obs-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>msg-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.messageButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/message-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/message-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>msg-btn</object-name> <property>instrumentation/kln94[0]/message-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>proc-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.procedureButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/procedure-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/procedure-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>proc-btn</object-name> <property>instrumentation/kln94[0]/procedure-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>alt-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.altitudeButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/altitude-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/altitude-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>alt-btn</object-name> <property>instrumentation/kln94[0]/altitude-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>clr-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.clearButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/clear-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/clear-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>clr-btn</object-name> <property>instrumentation/kln94[0]/clear-btn</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> <animation> <type>pick</type> <object-name>mnu-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.menuButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/menu-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/menu-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>mnu-btn</object-name> <property>instrumentation/kln94[0]/menu-btn</property> <factor>-0.001</factor> <axis> <x> 0.966</x> <!-- cos(15 deg) --> <y>-0.259</y> <!-- -sin(15 deg) --> </axis> </animation> <animation> <type>pick</type> <object-name>rng-btn</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.rangeButton( 1 );</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>0</value> </binding> </mod-up> </action> <action> <button>1</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.rangeButton( -1 );</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>-1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>pick</type> <object-name>rng-btn-up</object-name> <visible>0</visible> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.rangeButton( 1 );</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>pick</type> <object-name>rng-btn-down</object-name> <visible>0</visible> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.rangeButton( -1 );</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>-1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/range-btn</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>rotate</type> <object-name>rng-btn</object-name> <property>instrumentation/kln94[0]/range-btn</property> <factor>-10</factor> <center> <x-m>0.0142</x-m> <y-m>0.046</y-m> <z-m>0.0108</z-m> </center> <axis> <x>0.259</x> <!-- sin(15 deg) --> <y>0.966</y> <!-- cos(15 deg) --> </axis> </animation> <animation> <type>knob</type> <object-name>knob-inner</object-name> <property>instrumentation/kln94[0]/inner-knob</property> <factor>1</factor> <center> <y-m> 0.063 </y-m> <z-m> -0.009 </z-m> </center> <axis> <x>1</x> </axis> <action> <binding> <command>nasal</command> <script>KLN94.kln94.innerKnob(cmdarg().getNode('offset').getValue());</script> </binding> <binding> <command>property-adjust</command> <property>instrumentation/kln94[0]/inner-knob</property> <factor>5</factor> <min>0</min> <max>359</max> <wrap>1</wrap> </binding> </action> </animation> <animation> <type>knob</type> <object-name>knob-outer</object-name> <property>instrumentation/kln94[0]/outer-knob</property> <factor>1</factor> <center> <y-m> 0.063 </y-m> <z-m> -0.009 </z-m> </center> <axis> <x>1</x> </axis> <action> <binding> <command>nasal</command> <script>KLN94.kln94.outerKnob(cmdarg().getNode('offset').getValue());</script> </binding> <binding> <command>property-adjust</command> <property>instrumentation/kln94[0]/outer-knob</property> <factor>5</factor> <min>0</min> <max>359</max> <wrap>1</wrap> </binding> </action> </animation> <animation> <type>knob</type> <object-name>knob-brightness</object-name> <property>/instrumentation/kln94/brightness-norm</property> <factor>270</factor> <center> <y-m> -0.0605 </y-m> <z-m> -0.014 </z-m> </center> <axis> <x>1</x> </axis> <action> <binding> <command>property-adjust</command> <property>instrumentation/kln94/brightness-norm</property> <factor>0.05</factor> <min>0</min> <max>1</max> <wrap>false</wrap> </binding> </action> </animation> <animation> <type>pick</type> <object-name>knob-brightness-push</object-name> <action> <button>0</button> <repeatable>false</repeatable> <binding> <command>nasal</command> <script>KLN94.kln94.powerButton();</script> </binding> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/power-brightness-knob</property> <value>1</value> </binding> <mod-up> <binding> <command>property-assign</command> <property>instrumentation/kln94[0]/power-brightness-knob</property> <value>0</value> </binding> </mod-up> </action> </animation> <animation> <type>translate</type> <object-name>knob-brightness</object-name> <object-name>knob-brightness-push</object-name> <property>instrumentation/kln94[0]/power-brightness-knob</property> <factor>-0.001</factor> <axis> <x>1</x> </axis> </animation> </PropertyList>