Hi, i am currently implementing some basic structural icing. It is implemented in nasal and works like this:
- check outside air temperature, dewpoint and effective visibility in a timer loop at low frequency - if temperature is in the potential icing range and equal to dewpoint and visibility below a certain value, assume you are in cloud and propagate a generated icing severity (trace,light,moderate,severe) to the property tree. Since there is no information about the liquid water content of our generic clouds, I use an algo to generate the severity of icing. - Another part checks the icing severity and calculates the icing level on configurable icing sensitive areas (wing, prop, fuselage etc). These icing levels can than be used to scale some lift and drag coefficients and change the mass of the aircraft in the FDM and let your bird do some unexpected things. They can also be used for 3d model animations to make the ice visible. The prototype is already working on my local copy. Only one tiny change to the core fg source is required. Since there is no property to get the current visibility, I have attached a patch to environment_mgr.cxx that ties the FGSky::visibility to a property /envirionment/effective_visibility-m. Can one of the cvs masters apply this patch? I will publish the icing code after some more testing. Freezing Greetings Torsten Index: environment_mgr.cxx =================================================================== RCS file: /var/cvs/FlightGear-0.9/source/src/Environment/environment_mgr.cxx,v retrieving revision 1.22 diff -u -p -r1.22 environment_mgr.cxx --- environment_mgr.cxx 23 Mar 2006 16:48:45 -0000 1.22 +++ environment_mgr.cxx 22 May 2006 14:08:16 -0000 @@ -86,6 +86,8 @@ FGEnvironmentMgr::bind () fgTie("/environment/visibility-m", _environment, &FGEnvironment::get_visibility_m, &FGEnvironment::set_visibility_m); fgSetArchivable("/environment/visibility-m"); + fgTie("/environment/effective_visibility-m", thesky, + &SGSky::get_visibility ); fgTie("/environment/temperature-sea-level-degc", _environment, &FGEnvironment::get_temperature_sea_level_degc, &FGEnvironment::set_temperature_sea_level_degc); @@ -196,6 +198,7 @@ void FGEnvironmentMgr::unbind () { fgUntie("/environment/visibility-m"); + fgUntie("/environment/effective_visibility-m"); fgUntie("/environment/temperature-sea-level-degc"); fgUntie("/environment/temperature-degc"); fgUntie("/environment/dewpoint-sea-level-degc"); ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel