fbf4be91e3
from https://github.com/c172p-team/c172p/releases/tag/version%2F2020.4 f0e108bca8ebfde42c8496df84dd580716242a0d
568 lines
17 KiB
XML
568 lines
17 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!--
|
|
This is the ki266 3d instrument.
|
|
Modeled after King KI266 DME Indicator
|
|
|
|
This instrument needs the file
|
|
Aircraft/Instruments-3d/ki266/ki266.nas
|
|
to be included in your -set.xml nasal section
|
|
like this:
|
|
|
|
<nasal>
|
|
<YourAircraft>
|
|
<file>Aircraft/Instruments-3d/ki266/ki266.nas</file>
|
|
</YourAircraft>
|
|
</nasal>
|
|
|
|
and at least one instance of the ki266 class to be created
|
|
in your aircraft nasal code like this:
|
|
ki266.new(0); # for your first dme at /instrumentation/dme[0]
|
|
ki266.new(1); # if you have another at /instrumentation/dme[1]
|
|
Maintainer: Torsten Dreyer
|
|
-->
|
|
|
|
<PropertyList>
|
|
|
|
<params>
|
|
<in-range>instrumentation/dme[0]/in-range</in-range>
|
|
<right-display>instrumentation/dme[0]/min-kts-display</right-display>
|
|
<left-display>instrumentation/dme[0]/miles-display</left-display>
|
|
<left-display-dot>instrumentation/dme[0]/left-dot</left-display-dot>
|
|
<power-btn>instrumentation/dme[0]/power-btn</power-btn>
|
|
<serviceable>instrumentation/dme[0]/serviceable</serviceable>
|
|
<dimming>instrumentation/dme[0]/dimming-norm</dimming>
|
|
<min-kts>instrumentation/dme[0]/switch-min-kts</min-kts>
|
|
<electrical>systems/electrical/outputs/dme</electrical>
|
|
</params>
|
|
|
|
<path>ki266.ac</path>
|
|
|
|
<effect>
|
|
<inherits-from>../../../../Effects/interior/c172p-interior</inherits-from>
|
|
<object-name>Indicators</object-name>
|
|
<object-name>Miles</object-name>
|
|
<object-name>Min</object-name>
|
|
<object-name>Kts</object-name>
|
|
<object-name>Left.Dot1</object-name>
|
|
<object-name>Left.100</object-name>
|
|
<object-name>Left.10</object-name>
|
|
<object-name>Left.1</object-name>
|
|
<object-name>Right.100</object-name>
|
|
<object-name>Right.10</object-name>
|
|
<object-name>Right.1</object-name>
|
|
</effect>
|
|
|
|
<effect>
|
|
<inherits-from>../../../../Effects/interior/lm-ki266</inherits-from>
|
|
<object-name>SourceSelectorKnob</object-name>
|
|
<object-name>PowerSwitch.Lever</object-name>
|
|
<object-name>on</object-name>
|
|
<object-name>off</object-name>
|
|
<object-name>Label3</object-name>
|
|
<object-name>n1</object-name>
|
|
<object-name>hld</object-name>
|
|
<object-name>n2</object-name>
|
|
<object-name>PowerSwitch.Base</object-name>
|
|
<object-name>Background</object-name>
|
|
<object-name>ModeSwitch</object-name>
|
|
<object-name>Frame</object-name>
|
|
<object-name>base</object-name>
|
|
</effect>
|
|
|
|
<!-- Turn it off, when u/s or switched off -->
|
|
<animation>
|
|
<type>select</type>
|
|
<object-name>Indicators</object-name>
|
|
<condition>
|
|
<property>/sim/model/c172p/lighting/dme-power</property>
|
|
</condition>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>material</type>
|
|
<object-name>Indicators</object-name>
|
|
<condition>
|
|
<and>
|
|
<not>
|
|
<property>sim/rendering/rembrandt/enabled</property>
|
|
</not>
|
|
<greater-than>
|
|
<property>/sim/model/c172p/lighting/dme</property>
|
|
<value>0.0</value>
|
|
</greater-than>
|
|
</and>
|
|
</condition>
|
|
<emission>
|
|
<red>1.0</red>
|
|
<green>1.0</green>
|
|
<blue>1.0</blue>
|
|
<factor-prop>/sim/model/c172p/lighting/dme</factor-prop>
|
|
</emission>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>material</type>
|
|
<object-name>ModeSwitch</object-name>
|
|
<emission>
|
|
<red>0.5</red>
|
|
<green>0.1</green>
|
|
<blue>0.00005</blue>
|
|
<factor-prop>/sim/model/c172p/lighting/dme</factor-prop>
|
|
</emission>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>material</type>
|
|
<object-name>Indicators</object-name>
|
|
<emission>
|
|
<red>-1.0</red>
|
|
<green>-1.0</green>
|
|
<blue>-1.0</blue>
|
|
<factor-prop alias="../../../params/dimming"/>
|
|
<offset>1</offset>
|
|
</emission>
|
|
</animation>
|
|
|
|
<!-- The mode switch do display min/kts -->
|
|
<animation>
|
|
<type>select</type>
|
|
<object-name>Min</object-name>
|
|
<condition>
|
|
<not>
|
|
<property alias="../../../../params/min-kts"/>
|
|
</not>
|
|
</condition>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>select</type>
|
|
<object-name>Kts</object-name>
|
|
<condition>
|
|
<property alias="../../../params/min-kts"/>
|
|
</condition>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>translate</type>
|
|
<object-name>ModeSwitch</object-name>
|
|
<factor>-0.003</factor>
|
|
<property alias="../../params/min-kts"/>
|
|
<axis>
|
|
<x>1.0</x>
|
|
<y>0.0</y>
|
|
<z>0.0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>pick</type>
|
|
<object-name>ModeSwitch</object-name>
|
|
<visible>true</visible>
|
|
<action>
|
|
<button>0</button>
|
|
<repeatable>false</repeatable>
|
|
<binding>
|
|
<command>property-toggle</command>
|
|
<property alias="../../../../params/min-kts"/>
|
|
</binding>
|
|
<binding>
|
|
<command>nasal</command>
|
|
<script>c172p.click("dme-mode")</script>
|
|
</binding>
|
|
</action>
|
|
<hovered>
|
|
<binding>
|
|
<command>set-tooltip</command>
|
|
<tooltip-id>min-kts</tooltip-id>
|
|
<label>Mode: %s</label>
|
|
<property alias="../../../../params/min-kts"/>
|
|
<mapping>nasal</mapping>
|
|
<script>
|
|
var m = arg[0];
|
|
if (m) return 'KTS';
|
|
return 'MIN';
|
|
</script>
|
|
</binding>
|
|
</hovered>
|
|
</animation>
|
|
|
|
<!-- Distance display, allways on.
|
|
Shows nn.n when distance is less than 100NM and
|
|
shows nnn when distance is greater than or equal to 100NM
|
|
-->
|
|
<animation>
|
|
<name>LeftDecimalDot</name>
|
|
<type>select</type>
|
|
<object-name>Left.Dot1</object-name>
|
|
<condition>
|
|
<property alias="../../../params/left-display-dot"/>
|
|
</condition>
|
|
</animation>
|
|
|
|
<!-- Blank leading zeros -->
|
|
<animation>
|
|
<name>miles_100_blank</name>
|
|
<type>select</type>
|
|
<object-name>Left.100</object-name>
|
|
<condition>
|
|
<greater-than-equals>
|
|
<property alias="../../../../params/left-display"/>
|
|
<value>100.0</value>
|
|
</greater-than-equals>
|
|
</condition>
|
|
</animation>
|
|
|
|
<animation>
|
|
<name>miles_10_blank</name>
|
|
<type>select</type>
|
|
<object-name>Left.10</object-name>
|
|
<condition>
|
|
<or>
|
|
<greater-than-equals>
|
|
<property alias="../../../../../params/left-display"/>
|
|
<value>10.0</value>
|
|
</greater-than-equals>
|
|
<and>
|
|
<property alias="../../../../../params/left-display-dot"/>
|
|
<greater-than-equals>
|
|
<property alias="../../../../../../params/left-display"/>
|
|
<value>1.0</value>
|
|
</greater-than-equals>
|
|
</and>
|
|
</or>
|
|
</condition>
|
|
</animation>
|
|
|
|
<animation>
|
|
<name>miles_1_blank</name>
|
|
<type>select</type>
|
|
<object-name>Left.1</object-name>
|
|
<condition>
|
|
<greater-than-equals>
|
|
<property alias="../../../../params/left-display"/>
|
|
<value>1.0</value>
|
|
</greater-than-equals>
|
|
</condition>
|
|
</animation>
|
|
|
|
<!-- Left display, left digit -->
|
|
<animation>
|
|
<name>miles_100_lo</name>
|
|
<type>textranslate</type>
|
|
<object-name>Left.100</object-name>
|
|
<property alias="../../params/left-display"/>
|
|
<step>100</step>
|
|
<factor>0.001</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<!-- Left display, center digit -->
|
|
<animation>
|
|
<name>miles_10_lo</name>
|
|
<type>textranslate</type>
|
|
<object-name>Left.10</object-name>
|
|
<property alias="../../params/left-display"/>
|
|
<step>10</step>
|
|
<factor>0.01</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<!-- Left display, right digit -->
|
|
<animation>
|
|
<name>miles_1_lo</name>
|
|
<type>textranslate</type>
|
|
<object-name>Left.1</object-name>
|
|
<property alias="../../params/left-display"/>
|
|
<step>1</step>
|
|
<factor>0.1</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<!--
|
|
Right display, showing either kts or min, handled by dme.nas
|
|
-->
|
|
<animation>
|
|
<condition>
|
|
<greater-than-equals>
|
|
<property alias="../../../../params/right-display"/>
|
|
<value>100</value>
|
|
</greater-than-equals>
|
|
</condition>
|
|
<name>kts_100_select</name>
|
|
<type>select</type>
|
|
<object-name>Right.100</object-name>
|
|
</animation>
|
|
|
|
<animation>
|
|
<condition>
|
|
<greater-than-equals>
|
|
<property alias="../../../../params/right-display"/>
|
|
<value>10</value>
|
|
</greater-than-equals>
|
|
</condition>
|
|
<name>kts_10_select</name>
|
|
<type>select</type>
|
|
<object-name>Right.10</object-name>
|
|
</animation>
|
|
|
|
<animation>
|
|
<condition>
|
|
<property alias="../../../params/in-range"/>
|
|
</condition>
|
|
<name>kts_1_select</name>
|
|
<type>select</type>
|
|
<object-name>Right.1</object-name>
|
|
</animation>
|
|
|
|
<animation>
|
|
<name>kts_100</name>
|
|
<type>textranslate</type>
|
|
<object-name>Right.100</object-name>
|
|
<property alias="../../params/right-display"/>
|
|
<step>100</step>
|
|
<factor>0.001</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<animation>
|
|
<name>kts_10</name>
|
|
<type>textranslate</type>
|
|
<object-name>Right.10</object-name>
|
|
<property alias="../../params/right-display"/>
|
|
<step>10</step>
|
|
<factor>0.01</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<animation>
|
|
<name>kts_1</name>
|
|
<type>textranslate</type>
|
|
<object-name>Right.1</object-name>
|
|
<property alias="../../params/right-display"/>
|
|
<step>1</step>
|
|
<factor>0.1</factor>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
</animation>
|
|
|
|
<!-- DME -->
|
|
|
|
<!-- The power switch -->
|
|
<animation>
|
|
<type>rotate</type>
|
|
<object-name>PowerSwitch.Lever</object-name>
|
|
<property alias="../../params/power-btn"/>
|
|
<factor>-60</factor>
|
|
<axis>
|
|
<x>0</x>
|
|
<y>1</y>
|
|
<z>0</z>
|
|
</axis>
|
|
<center>
|
|
<x-m>-0.35496</x-m>
|
|
<y-m> 0.08087</y-m>
|
|
<z-m>-0.05437</z-m>
|
|
</center>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>pick</type>
|
|
<object-name>PowerSwitch</object-name>
|
|
<visible>true</visible>
|
|
<action>
|
|
<button>0</button>
|
|
<repeatable>false</repeatable>
|
|
<binding>
|
|
<command>property-toggle</command>
|
|
<property alias="../../../../params/power-btn"/>
|
|
</binding>
|
|
<binding>
|
|
<command>nasal</command>
|
|
<script>c172p.click("dme-power")</script>
|
|
</binding>
|
|
</action>
|
|
<hovered>
|
|
<binding>
|
|
<command>set-tooltip</command>
|
|
<tooltip-id>power-btn</tooltip-id>
|
|
<label>DME: %s</label>
|
|
<property alias="../../../../params/power-btn"/>
|
|
<mapping>nasal</mapping>
|
|
<script>
|
|
if(arg[0]) return 'ON';
|
|
return 'OFF';
|
|
</script>
|
|
</binding>
|
|
</hovered>
|
|
</animation>
|
|
|
|
<!-- The source switch -->
|
|
<animation>
|
|
<type>knob</type>
|
|
<object-name>SourceSelectorKnob</object-name>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<factor>-30</factor>
|
|
<min-deg>-60</min-deg>
|
|
<max-deg>0</max-deg>
|
|
<offset-deg>30</offset-deg>
|
|
<axis>
|
|
<x>1</x>
|
|
<y>0</y>
|
|
<z>0</z>
|
|
</axis>
|
|
<center>
|
|
<x-m>-0.35558</x-m>
|
|
<y-m> 0.05483</y-m>
|
|
<z-m>-0.05527</z-m>
|
|
</center>
|
|
<action>
|
|
<binding>
|
|
<command>property-adjust</command>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<factor>1</factor>
|
|
<min>1</min>
|
|
<max>3</max>
|
|
<wrap>0</wrap>
|
|
</binding>
|
|
<binding>
|
|
<condition>
|
|
<equals>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<value type="int">1</value>
|
|
</equals>
|
|
</condition>
|
|
<command>property-assign</command>
|
|
<property>instrumentation/dme/frequencies/source</property>
|
|
<value>instrumentation/nav[0]/frequencies/selected-mhz</value>
|
|
</binding>
|
|
<binding>
|
|
<condition>
|
|
<equals>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<value type="int">2</value>
|
|
</equals>
|
|
</condition>
|
|
<command>property-assign</command>
|
|
<property>instrumentation/dme/frequencies/source</property>
|
|
<value>instrumentation/dme/frequencies/selected-mhz</value>
|
|
</binding>
|
|
<binding>
|
|
<condition>
|
|
<equals>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<value type="int">3</value>
|
|
</equals>
|
|
</condition>
|
|
<command>property-assign</command>
|
|
<property>instrumentation/dme/frequencies/source</property>
|
|
<value>instrumentation/nav[1]/frequencies/selected-mhz</value>
|
|
</binding>
|
|
<binding>
|
|
<command>nasal</command>
|
|
<script>c172p.click("dme-source")</script>
|
|
</binding>
|
|
</action>
|
|
<hovered>
|
|
<binding>
|
|
<command>set-tooltip</command>
|
|
<tooltip-id>source-switch</tooltip-id>
|
|
<label>DME Source: %s</label>
|
|
<property>instrumentation/dme/switch-position</property>
|
|
<mapping>nasal</mapping>
|
|
<script>
|
|
var m = arg[0];
|
|
if (m == 1) return 'NAV1';
|
|
if (m == 3) return 'NAV2';
|
|
return 'HOLD';
|
|
</script>
|
|
</binding>
|
|
</hovered>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>material</type>
|
|
<object-name>SourceSelectorKnob</object-name>
|
|
<object-name>PowerSwitch.Lever</object-name>
|
|
<object-name>on</object-name>
|
|
<object-name>off</object-name>
|
|
<object-name>Label3</object-name>
|
|
<object-name>n1</object-name>
|
|
<object-name>hld</object-name>
|
|
<object-name>n2</object-name>
|
|
<object-name>PowerSwitch.Base</object-name>
|
|
<object-name>Background</object-name>
|
|
<object-name>ModeSwitch</object-name>
|
|
<object-name>Frame</object-name>
|
|
<object-name>base</object-name>
|
|
<condition>
|
|
<or>
|
|
<not>
|
|
<property>/sim/rendering/shaders/skydome</property>
|
|
</not>
|
|
<equals>
|
|
<property>/sim/rendering/shaders/model</property>
|
|
<value>0</value>
|
|
</equals>
|
|
</or>
|
|
</condition>
|
|
<emission>
|
|
<red-prop>/sim/model/c172p/lighting/rgb-ra-r-factor</red-prop>
|
|
<green-prop>/sim/model/c172p/lighting/rgb-ra-g-factor</green-prop>
|
|
<blue-prop>/sim/model/c172p/lighting/rgb-ra-b-factor</blue-prop>
|
|
</emission>
|
|
</animation>
|
|
|
|
<animation>
|
|
<type>material</type>
|
|
<object-name>SourceSelectorKnob</object-name>
|
|
<object-name>PowerSwitch.Lever</object-name>
|
|
<object-name>on</object-name>
|
|
<object-name>off</object-name>
|
|
<object-name>Label3</object-name>
|
|
<object-name>n1</object-name>
|
|
<object-name>hld</object-name>
|
|
<object-name>n2</object-name>
|
|
<object-name>PowerSwitch.Base</object-name>
|
|
<condition>
|
|
<or>
|
|
<not>
|
|
<property>/sim/rendering/shaders/skydome</property>
|
|
</not>
|
|
<equals>
|
|
<property>/sim/rendering/shaders/model</property>
|
|
<value>0</value>
|
|
</equals>
|
|
</or>
|
|
</condition>
|
|
<emission>
|
|
<red-prop>/sim/model/material/instruments/default-red-combined-factor</red-prop>
|
|
<green-prop>/sim/model/material/instruments/default-green-combined-factor</green-prop>
|
|
<blue-prop>/sim/model/material/instruments/default-blue-combined-factor</blue-prop>
|
|
</emission>
|
|
</animation>
|
|
|
|
</PropertyList>
|