123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Eurocopter EC 130 Searchlight SX-16 Nightsun from Spectrolab
- This file is part of FlightGear, the free flight simulator
- http://www.flightgear.org/
- Copyright (C) 2013 Michael Habarta, mhabarta@freenet.de
- animations, search light effects
- Lightcones are based on the lightcone of the Alphajet
- done by BARANGER Emmanuel: email: embaranger@free.fr
- aka helijah in the FG world
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
- -->
- <PropertyList>
- <path>SX16/searchlight.ac</path>
- <!-- search light cone, derived from Alpha-Jet -->
- <model>
- <name>searchlight-cone</name>
- <path>Aircraft/ec130/Models/SearchLight/SX16/light-cone.xml</path>
- <offsets>
- <x-m>-0.160 </x-m>
- <y-m> 0.000 </y-m>
- <z-m> 0.000 </z-m>
- <pitch-deg>0</pitch-deg>
- </offsets>
- </model>
- <model>
- <name>searchlight-cone-medium</name>
- <path>Aircraft/ec130/Models/SearchLight/SX16/light-cone-medium.xml</path>
- <offsets>
- <x-m>-0.160 </x-m>
- <y-m> 0.000 </y-m>
- <z-m> 0.000 </z-m>
- <pitch-deg>0</pitch-deg>
- </offsets>
- </model>
- <model>
- <name>searchlight-cone-large</name>
- <path>Aircraft/ec130/Models/SearchLight/SX16/light-cone-large.xml</path>
- <offsets>
- <x-m>-0.160 </x-m>
- <y-m> 0.000 </y-m>
- <z-m> 0.000 </z-m>
- <pitch-deg>0</pitch-deg>
- </offsets>
- </model>
- <model>
- <name>searchlight-cone-xlarge</name>
- <path>Aircraft/ec130/Models/SearchLight/SX16/light-cone-xlarge.xml</path>
- <offsets>
- <x-m>-0.160 </x-m>
- <y-m> 0.000 </y-m>
- <z-m> 0.000 </z-m>
- <pitch-deg>0</pitch-deg>
- </offsets>
- </model>
- <effect>
- <inherits-from>Aircraft/ec130/Models/Effects/ec130reflectglas-uber</inherits-from>
- <object-name>slight_filter_glass</object-name>
- </effect>
- <!-- searchlight grouping, select conditions -->
- <animation>
- <name>searchlight</name>
- <object-name>slight_body</object-name>
- <object-name>slight_backside</object-name>
- <object-name>slight_service_cover</object-name>
- <object-name>slight_glass</object-name>
- <object-name>slight_cable1</object-name>
- <object-name>slight_cable2</object-name>
- <object-name>slight_cable3</object-name>
- </animation>
- <animation>
- <name>searchlight_filter</name>
- <object-name>slight_filter</object-name>
- <object-name>slight_filter_glass</object-name>
- </animation>
- <animation>
- <name>searchlight-gimbal</name>
- <object-name>slight_gimbal</object-name>
- <object-name>slight_drive_elevation</object-name>
- <object-name>slight_drive_azimuth</object-name>
- <object-name>slight_cable4</object-name>
- <object-name>slight_cable5</object-name>
- <object-name>slight_cable6</object-name>
- </animation>
- <animation>
- <name>slight_cones</name>
- <object-name>searchlight-cone</object-name>
- <object-name>searchlight-cone-medium</object-name>
- <object-name>searchlight-cone-large</object-name>
- <object-name>searchlight-cone-xlarge</object-name>
- </animation>
- <animation>
- <type>select</type>
- <object-name>searchlight</object-name>
- <object-name>searchlight-gimbal</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <not-equals>
- <property>sim/current-view/name</property>
- <value>Searchlight Follow View</value>
- </not-equals>
- </condition>
- </animation>
- <animation>
- <type>select</type>
- <object-name>searchlight_filter</object-name>
- <object-name>slight_filter_holdl</object-name>
- <object-name>slight_filter_holdr</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/ec130/searchlight_filter</property>
- <not-equals>
- <property>sim/current-view/name</property>
- <value>Searchlight Follow View</value>
- </not-equals>
- </condition>
- </animation>
- <animation>
- <type>select</type>
- <object-name>slight_disk</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not-equals>
- <property>sim/current-view/name</property>
- <value>Searchlight Follow View</value>
- </not-equals>
- </condition>
- </animation>
- <!-- searchlight movements -->
- <animation>
- <type>rotate</type>
- <object-name>searchlight-gimbal</object-name>
- <object-name>searchlight</object-name>
- <object-name>searchlight_filter</object-name>
- <object-name>slight_filter_holdl</object-name>
- <object-name>slight_filter_holdr</object-name>
- <object-name>slight_disk</object-name>
- <object-name>slight_cones</object-name>
- <property>sim/model/searchlight/heading-deg</property>
- <center>
- <x-m> 0 </x-m>
- <y-m> 0 </y-m>
- <z-m> 0 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>0</y>
- <z>1</z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>searchlight</object-name>
- <object-name>searchlight_filter</object-name>
- <object-name>slight_filter_holdl</object-name>
- <object-name>slight_filter_holdr</object-name>
- <object-name>slight_disk</object-name>
- <object-name>slight_cones</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <center>
- <x-m> 0 </x-m>
- <y-m> 0 </y-m>
- <z-m> 0 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <!-- slight cable animations -->
- <animation>
- <type>rotate</type>
- <object-name>slight_cable1</object-name>
- <object-name>slight_cable2</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>0.5</factor>
- <center>
- <x-m> 0.00 </x-m>
- <y-m> 0.10 </y-m>
- <z-m> 0.06 </z-m>
- </center>
- <axis>
- <x>1</x>
- <y>-0.5</y>
- <z>0</z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>slight_cable2</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>-0.2</factor>
- <center>
- <x-m> 0.24 </x-m>
- <y-m> 0.20 </y-m>
- <z-m> 0.00 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>0</y>
- <z>1</z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>slight_cable3</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>-0.6</factor>
- <center>
- <x-m> 0.11 </x-m>
- <y-m> 0.00 </y-m>
- <z-m> 0.10 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <animation>
- <type>translate</type>
- <object-name>slight_cable3</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>1</factor>
- <offset>0</offset>
- <interpolation>
- <entry><ind> 3.0 </ind><dep> 0.007</dep></entry>
- <entry><ind> 0.0 </ind><dep> 0.000</dep></entry>
- <entry><ind>-50.0 </ind><dep>-0.035</dep></entry>
- </interpolation>
- <axis>
- <x> 0 </x>
- <y> 0 </y>
- <z> 1 </z>
- </axis>
- </animation>
- <animation>
- <type>translate</type>
- <object-name>slight_cable3</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>1</factor>
- <offset>0</offset>
- <interpolation>
- <entry><ind> 3.0 </ind><dep> 0.000</dep></entry>
- <entry><ind> 0.0 </ind><dep> 0.000</dep></entry>
- <entry><ind>-50.0 </ind><dep> 0.060</dep></entry>
- </interpolation>
- <axis>
- <x> 1 </x>
- <y> 0 </y>
- <z> 0 </z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>slight_cable4</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>-0.6</factor>
- <center>
- <x-m> -0.04 </x-m>
- <y-m> 0.00 </y-m>
- <z-m> 0.30 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>slight_cable4</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>0.2</factor>
- <center>
- <x-m> 0.02 </x-m>
- <y-m> 0.00 </y-m>
- <z-m> 0.16 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <animation>
- <type>translate</type>
- <object-name>slight_cable4</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>1</factor>
- <offset>0</offset>
- <interpolation>
- <entry><ind> 3.0 </ind><dep> 0.000</dep></entry>
- <entry><ind> 0.0 </ind><dep> 0.000</dep></entry>
- <entry><ind>-50.0 </ind><dep> 0.020</dep></entry>
- </interpolation>
- <axis>
- <x> 1 </x>
- <y> 0 </y>
- <z> 0 </z>
- </axis>
- </animation>
- <animation>
- <type>translate</type>
- <object-name>slight_cable4</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>1</factor>
- <offset>0</offset>
- <interpolation>
- <entry><ind> 3.0 </ind><dep>-0.000</dep></entry>
- <entry><ind> 0.0 </ind><dep> 0.000</dep></entry>
- <entry><ind>-50.0 </ind><dep> 0.040</dep></entry>
- </interpolation>
- <axis>
- <x> 0 </x>
- <y> 0 </y>
- <z> 1 </z>
- </axis>
- </animation>
- <animation>
- <type>rotate</type>
- <object-name>slight_cable5</object-name>
- <property>sim/model/searchlight/elevation-deg</property>
- <factor>-0.5</factor>
- <center>
- <x-m> -0.04 </x-m>
- <y-m> 0.00 </y-m>
- <z-m> 0.30 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <!-- pick animations -->
- <!-- toggle searchlight power on/off -->
- <animation>
- <type>pick</type>
- <object-name>slight_body</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <condition>
- <property>controls/electric/engine/generator</property>
- </condition>
- <command>nasal</command>
- <script>ec130.slight_toggle_power()</script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_on_off</tooltip-id>
- <label>Power ON/OFF</label>
- </binding>
- </hovered>
- </animation>
- <animation>
- <type>pick</type>
- <object-name>slight_drive_azimuth</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <command>nasal</command>
- <script>
- var h = getprop("sim/model/searchlight/sx16/heading-default-deg");
- var p = getprop("sim/model/searchlight/heading-deg") - h;
- if ( p < 0 ) { p=p*-1.0 };
- <!-- slew rate 18deg/sec -->
- var t = p/18.0;
- interpolate("sim/model/searchlight/heading-deg", h, t);
- </script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_reset_az</tooltip-id>
- <label>reset azimuth</label>
- </binding>
- </hovered>
- </animation>
- <animation>
- <type>pick</type>
- <object-name>slight_drive_elevation</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <command>nasal</command>
- <script>
- var e = getprop("sim/model/searchlight/sx16/elevation-default-deg");
- var p = getprop("sim/model/searchlight/elevation-deg") - e;
- if ( p < 0 ) { p=p*-1.0 };
- var t = p/18.0;
- interpolate("sim/model/searchlight/elevation-deg", e, t);
- </script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_reset_el</tooltip-id>
- <label>reset elevation</label>
- </binding>
- </hovered>
- </animation>
- <animation>
- <type>pick</type>
- <object-name>slight_gimbal</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <command>nasal</command>
- <script>ec130.slight_reset()</script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_reset</tooltip-id>
- <label>Searchlight reset</label>
- </binding>
- </hovered>
- </animation>
- <!-- cycle searchlight -->
- <animation>
- <type>pick</type>
- <object-name>slight_service_cover</object-name>
- <object-name>slight_cones</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <condition>
- <property>sim/model/searchlight/active</property>
- </condition>
- <command>nasal</command>
- <script>ec130.slight_cycle()</script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_focus</tooltip-id>
- <label>cycle Focus</label>
- </binding>
- </hovered>
- </animation>
- <!-- pause searchlight -->
- <animation>
- <type>pick</type>
- <object-name>slight_backside</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <condition>
- <property>sim/model/searchlight/active</property>
- </condition>
- <command>property-toggle</command>
- <property>sim/model/searchlight/paused</property>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_pause</tooltip-id>
- <label>pause</label>
- </binding>
- </hovered>
- </animation>
- <!-- rotation filter -->
- <animation>
- <type>rotate</type>
- <object-name>searchlight_filter</object-name>
- <property>sim/model/searchlight/filter/position-norm</property>
- <factor> 92.0 </factor>
- <center>
- <x-m> -0.059 </x-m>
- <y-m> 0.000 </y-m>
- <z-m> 0.066 </z-m>
- </center>
- <axis>
- <x>0</x>
- <y>1</y>
- <z>0</z>
- </axis>
- </animation>
- <animation>
- <type>pick</type>
- <object-name>searchlight_filter</object-name>
- <action>
- <button>0</button>
- <repeatable>false</repeatable>
- <binding>
- <command>nasal</command>
- <script>
- ec130.slight_toggle_cycle_filter();
- </script>
- </binding>
- </action>
- <hovered>
- <binding>
- <command>set-tooltip</command>
- <tooltip-id>Searchlight_filter</tooltip-id>
- <label>toggle Filter</label>
- </binding>
- </hovered>
- </animation>
- <!-- searchlight cone animations -->
- <animation>
- <type>select</type>
- <object-name>searchlight-cone</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- <equals>
- <property>sim/model/searchlight/state</property>
- <value>1</value>
- </equals>
- </condition>
- </animation>
- <animation>
- <type>select</type>
- <object-name>searchlight-cone-medium</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- <equals>
- <property>sim/model/searchlight/state</property>
- <value>2</value>
- </equals>
- </condition>
- </animation>
- <animation>
- <type>select</type>
- <object-name>searchlight-cone-large</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- <equals>
- <property>sim/model/searchlight/state</property>
- <value>3</value>
- </equals>
- </condition>
- </animation>
- <animation>
- <type>select</type>
- <object-name>searchlight-cone-xlarge</object-name>
- <condition>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- <equals>
- <property>sim/model/searchlight/state</property>
- <value>4</value>
- </equals>
- </condition>
- </animation>
- <!-- visibility of light cone -->
- <animation>
- <type>select</type>
- <object-name>cone</object-name>
- <condition>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <property>sim/model/searchlight/cone-visibility</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- </condition>
- </animation>
- <animation>
- <type>material</type>
- <object-name>cone</object-name>
- <emission>
- <red>1.0</red>
- <green>1.0</green>
- <blue>1.0</blue>
- </emission>
- <transparency>
- <alpha-prop>sim/model/searchlight/cone-visibility</alpha-prop>
- <factor>0.03</factor>
- <offset>0</offset>
- </transparency>
- </animation>
- <!-- REMBRANDT -->
- <!-- select volumes -->
- <animation>
- <type>select</type>
- <object-name>LightVolumeS</object-name>
- <condition>
- <property>/sim/rendering/rembrandt/enabled</property>
- </condition>
- </animation>
- <!-- REMBRANDT -->
- <animation>
- <type>light</type>
- <light-type>spot</light-type>
- <name>searchlight</name>
- <object-name>LightVolumeS</object-name>
- <condition>
- <property>/sim/rendering/rembrandt/enabled</property>
- <property>sim/model/ec130/searchlight</property>
- <property>sim/model/searchlight/active</property>
- <property>controls/electric/engine/generator</property>
- <not>
- <property>sim/model/searchlight/paused</property>
- </not>
- </condition>
- <position>
- <x>-0.160 </x>
- <y> 0.000 </y>
- <z> 0.000 </z>
- </position>
- <direction>
- <x>-1.0</x>
- <y> 0.0</y>
- <z> 0.0</z>
- </direction>
- <diffuse>
- <r>1.0</r>
- <g>1.0</g>
- <b>1.0</b>
- <a>1.0</a>
- </diffuse>
- <specular>
- <r>1.0</r>
- <g>1.0</g>
- <b>1.0</b>
- <a>1.0</a>
- </specular>
- <dim-factor>
- <property>/sim/time/sun-angle-rad</property>
- <interpolation>
- <entry><ind> 0.00 </ind><dep> 0.25 </dep></entry>
- <entry><ind> 0.52 </ind><dep> 0.30 </dep></entry>
- <entry><ind> 1.04 </ind><dep> 0.35 </dep></entry>
- <entry><ind> 1.30 </ind><dep> 0.45 </dep></entry>
- <entry><ind> 1.40 </ind><dep> 0.55 </dep></entry>
- <entry><ind> 1.48 </ind><dep> 0.75 </dep></entry>
- <entry><ind> 1.57 </ind><dep> 1.00 </dep></entry>
- <entry><ind> 2.10 </ind><dep> 1.00 </dep></entry>
- <entry><ind> 2.62 </ind><dep> 1.00 </dep></entry>
- <entry><ind> 3.14 </ind><dep> 1.00 </dep></entry>
- </interpolation>
- <offset>0</offset>
- </dim-factor>
- <attenuation>
- <c>0.5</c>
- <l>0.0002</l>
- <q>0.000005</q>
- </attenuation>
- <exponent>80</exponent>
- <near-m>0.0</near-m>
- <far-m>1000</far-m>
- <cutoff>40</cutoff>
- </animation>
- </PropertyList>
|