Weather: better cloud altitude interpolation
- Easier altitude interpolation rule - Don't interpolate to large altitude offsets
This commit is contained in:
parent
47786d1a5e
commit
3c5cf067c9
3 changed files with 31 additions and 81 deletions
|
@ -21,20 +21,41 @@
|
||||||
<to>/environment/clouds/layer[0]/elevation-ft</to>
|
<to>/environment/clouds/layer[0]/elevation-ft</to>
|
||||||
</params>
|
</params>
|
||||||
<name>MetarController:clouds:altitude_interpolate</name>
|
<name>MetarController:clouds:altitude_interpolate</name>
|
||||||
<type>noise-spike</type>
|
<type>exponential</type>
|
||||||
<max-rate-of-change>8.333</max-rate-of-change>
|
<filter-time>
|
||||||
|
<condition>
|
||||||
|
<!-- dont't interpolate to -9999 or if more than 2000ft offset -->
|
||||||
|
<or>
|
||||||
|
<less-than>
|
||||||
|
<property alias="../../../../../params/from"/>
|
||||||
|
<value>-9000</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property alias="../../../../../params/to"/>
|
||||||
|
<value>-9000</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<expression>
|
||||||
|
<abs>
|
||||||
|
<difference>
|
||||||
|
<property alias="../../../../../../../../params/from"/>
|
||||||
|
<property alias="../../../../../../../../params/to"/>
|
||||||
|
</difference>
|
||||||
|
</abs>
|
||||||
|
</expression>
|
||||||
|
<value>2000</value>
|
||||||
|
</greater-than>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<value>0</value>
|
||||||
|
</filter-time>
|
||||||
|
|
||||||
|
<filter-time>60</filter-time>
|
||||||
|
|
||||||
<enable>
|
<enable>
|
||||||
<condition>
|
<condition>
|
||||||
<property>/environment/metar/valid</property>
|
<property>/environment/metar/valid</property>
|
||||||
<property>/environment/params/metar-updates-environment</property>
|
<property>/environment/params/metar-updates-environment</property>
|
||||||
<greater-than>
|
|
||||||
<property alias="../../../../params/from"/>
|
|
||||||
<value>-9000</value>
|
|
||||||
</greater-than>
|
|
||||||
<greater-than>
|
|
||||||
<property alias="../../../../params/to"/>
|
|
||||||
<value>-9000</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
</condition>
|
||||||
</enable>
|
</enable>
|
||||||
<input alias="../params/from"/>
|
<input alias="../params/from"/>
|
||||||
|
|
|
@ -1,44 +0,0 @@
|
||||||
<?xml version="1.0" ?>
|
|
||||||
<!--
|
|
||||||
This file is part of FlightGear, the free flight simulator
|
|
||||||
http://www.flightgear.org/
|
|
||||||
|
|
||||||
Copyright (C) 2009 Torsten Dreyer, Torsten (at) t3r _dot_ de
|
|
||||||
|
|
||||||
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>
|
|
||||||
<params>
|
|
||||||
<from>environment/metar/clouds/layer[0]/elevation-ft</from>
|
|
||||||
<to>/environment/clouds/layer[0]/elevation-ft</to>
|
|
||||||
</params>
|
|
||||||
<name>MetarController:clouds:altitude_set</name>
|
|
||||||
<type>gain</type>
|
|
||||||
<gain>1.0</gain>
|
|
||||||
<enable>
|
|
||||||
<condition>
|
|
||||||
<property>/environment/metar/valid</property>
|
|
||||||
<property>/environment/params/metar-updates-environment</property>
|
|
||||||
<or>
|
|
||||||
<less-than>
|
|
||||||
<property alias="../../../../../params/from"/>
|
|
||||||
<value>-9000</value>
|
|
||||||
</less-than>
|
|
||||||
<less-than>
|
|
||||||
<property alias="../../../../../params/to"/>
|
|
||||||
<value>-9000</value>
|
|
||||||
</less-than>
|
|
||||||
</or>
|
|
||||||
</condition>
|
|
||||||
</enable>
|
|
||||||
<input alias="../params/from"/>
|
|
||||||
<output alias="../params/to"/>
|
|
||||||
</PropertyList>
|
|
|
@ -282,33 +282,6 @@
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<!-- Clouds -->
|
<!-- Clouds -->
|
||||||
<!-- don't interpolate to/from altitude -9999 -->
|
|
||||||
<filter include="clouds-altitude-set.xml"/>
|
|
||||||
<filter include="clouds-altitude-set.xml">
|
|
||||||
<params>
|
|
||||||
<from>/environment/metar/clouds/layer[1]/elevation-ft</from>
|
|
||||||
<to>/environment/clouds/layer[1]/elevation-ft</to>
|
|
||||||
</params>
|
|
||||||
</filter>
|
|
||||||
<filter include="clouds-altitude-set.xml">
|
|
||||||
<params>
|
|
||||||
<from>/environment/metar/clouds/layer[2]/elevation-ft</from>
|
|
||||||
<to>/environment/clouds/layer[2]/elevation-ft</to>
|
|
||||||
</params>
|
|
||||||
</filter>
|
|
||||||
<filter include="clouds-altitude-set.xml">
|
|
||||||
<params>
|
|
||||||
<from>/environment/metar/clouds/layer[3]/elevation-ft</from>
|
|
||||||
<to>/environment/clouds/layer[3]/elevation-ft</to>
|
|
||||||
</params>
|
|
||||||
</filter>
|
|
||||||
<filter include="clouds-altitude-set.xml">
|
|
||||||
<params>
|
|
||||||
<from>/environment/metar/clouds/layer[4]/elevation-ft</from>
|
|
||||||
<to>/environment/clouds/layer[4]/elevation-ft</to>
|
|
||||||
</params>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<filter include="clouds-altitude-interpolate.xml"/>
|
<filter include="clouds-altitude-interpolate.xml"/>
|
||||||
<filter include="clouds-altitude-interpolate.xml">
|
<filter include="clouds-altitude-interpolate.xml">
|
||||||
<params>
|
<params>
|
||||||
|
|
Loading…
Reference in a new issue