1
0
Fork 0
Commit graph

61 commits

Author SHA1 Message Date
Torsten Dreyer
9eeda7d339 unboost the environment 2019-02-03 19:32:57 +01:00
James Turner
dd6294b5ea Red-sky: fix edge-case in NaN avoidance code
https://sourceforge.net/p/flightgear/codetickets/2087/
for discussion on this.
2019-01-08 11:08:23 +00:00
James Turner
1f1060431f Avoid NaNs in environment code at extreme altitude
Avoid the ‘red sky zone’ when going to higher orbital altitudes
(thousands of km).

https://sourceforge.net/p/flightgear/codetickets/2087/
2018-12-04 09:39:36 +01:00
James Turner
f2d6b76b13 Portability: Fix compile errors on MSVC (cmath)
From Scott (xDraconian)
2015-03-24 11:11:42 -05:00
ThorstenB
9d067bc890 #918: fix jsbsim in-air repositioning issue 2012-11-15 20:20:40 +01:00
ThorstenB
f8b689c040 Allow instruments/systems to reset on sim reset
so they can instantly adjust to the changed environment.
(Not fully working yet, since some environment settings, like environemnt
pressure/temperature, still changes slowly after a sim reset - instead of
immediately jumping to the new setting. Also, METAR sometimes arrives too
late...).
2012-09-19 20:57:52 +02:00
ThorstenB
e59fabaf82 Clean-up some SGMath dependencies. 2012-05-05 00:56:29 +02:00
Torsten Dreyer
644bb8c4f4 Spring-cleaning: some minor optimization
- initialize uninitialized properties
- use prefix instead of postfix increments
- reduce visibility of variables
- use empty() instead of size() == 0 for vector and string
- pass string by reference, not by value
2012-03-06 22:28:18 +01:00
ThorstenB
e9a9f8c96d Use some more logging class variety.
Stop using SG_GENERAL and SG_ALL everywhere. Using different
classes makes switching the classes really useful...
2011-08-12 00:09:26 +02:00
Torsten Dreyer
a81103341e Fix bug 255, support turbulence to weather menu 2011-01-21 10:35:04 +01:00
Torsten Dreyer
5ed04a6227 Ignore outdated METAR for realwx 2010-09-27 18:59:26 +02:00
Torsten Dreyer
5c6fe95259 Environment controller overhaul
This is the initial commit for a reworked environment controller.
The main intention is to decouple the individual modules like
metar fetch, metar properties, environment interpolation etc.
to make it easier for other weather module developers to modify
environment settings.
As a side effect, the dialogs for weather-scenario, weather-conditions,
clouds and precipitations have been merged into a single dialog
2010-09-11 16:11:35 +02:00
Torsten Dreyer
da02c09ec0 Bugfix: set temp and dewpoint from the gui
This fix (re)enables the setting of temperature and
dewpoint from the weather-conditions dialog and other
sources for various altitude layers. These temperatures
are reduced to the corresponding sea level temperatures
according to ICAO standard atmosphere which is the inverse
function of the calculation of temperature at altitude based
on sea-level-temperature.
Note: this only works for the troposphere.
2010-07-20 22:56:15 +02:00
torsten
d356f73785 Support for the local weather system from Thorsten Renk 2010-04-19 10:08:41 +02:00
Tim Moore
5f134cdec8 Merge branch 'topic/atis' into merge/master-atis 2009-10-06 10:21:19 +02:00
Tim Moore
8b10bb12f5 Merge branches 'jmt/navradio', 'jmt/cleanup' and 'torsten/gps-fix' 2009-10-01 15:17:24 +02:00
torsten
eb8dd47971 Alex Buzin: Fix wrong calculation of temperature and dewpoint 2009-09-22 22:51:46 +02:00
torsten
3714a0ef51 Fix the temperature computation. 2009-09-20 22:51:36 +02:00
jmt
59895306a5 Remove <plib/sg> includes. 2009-09-20 16:46:32 +02:00
jmt
14a09673b9 ATIS overhaul by John Denker, adapted to trunk by me.
8:: AWOS is available at AWOS locations.  (Previously only ATIS was
   implemented.)

 9:: ATIS phraseology now more nearly conforms to international
   standard METAR pattern, and therefore to usual FAA practice.(*)

Items marked with a (*) are fully implemented in the /text/ of the
ATIS message, but the voiced version of the message is degraded by
limitations of the FGFS built-in text-to-speech system.

 10:: ATIS now reports sky condition.(*)

 11:: ATIS now reports multiple layers of clouds, not just the lowest
 layer.(*)

 12:: ATIS now takes field elevation into account when calculating
   sky condition and ceiling.

 13:: ATIS now reports dewpoint.(*)

 14:: ATIS now can handle negative quantities (temperature and dewpoint).(*)

 15:: ATIS can now report report fractional-mile visibility.(*)

 16:: ATIS now uses magnetic (not true) wind directions, as it should.

 17:: ATIS generates correct runway number and suffix (nine right,
   one one left).

 18:: ATIS can be received on nav frequencies, not just comm.

 19:: Nothing bad happens if the same ATIS is tuned up on more than
   one receiver.

 20:: ATIS can be updated at times other than at the top of the hour.

 21:: ATIS listens for an "attention" signal, and responds to changes
   in the weather by issuing a new ATIS message (somewhat like a
   "special observation").

 22:: ATIS volume now responds to radio volume setting.

 23:: Area-related services (i.e. approach radar) are handled
   more-nearly consistently with radio-frequency related services.

 24:: ATIS sequence-letter generation has been fixed.

 25:: ATIS messages are now in the property tree, so they can be read
   e.g. via the http interface.
2009-09-18 20:18:54 +02:00
Tim Moore
a6db6d89ff Merge branch 'jsd/atmos' into topic/atmos-merge
Conflicts:
	src/Environment/environment.cxx
	src/Environment/environment.hxx

John Denker's atmosphere changes. Original commit message:
Two-parameter physics-based model of atmosphere up to 262,467 ft i.e.
the top of the mesosphere. Correctly exhibits the HALT phenomenon.
2009-09-10 12:31:04 +02:00
Tim Moore
7b6d15d537 cleanup of atmosphere patch
Remove some dead code and space changes. Replace boost::tuple with std::pair,
but do use boost::tie.
2009-09-10 11:42:42 +02:00
John Denker
abc7ae96a5 Two-parameter physics-based model of atmosphere up to 262,467 ft i.e. the top of the mesosphere. Correctly exhibits the HALT phenomenon. 2009-09-10 10:59:51 +02:00
fredb
40ad35acf7 disambiguate pow usage 2009-06-11 16:05:20 +02:00
torsten
1873346d18 calculate internal properties only once on read() 2009-06-03 23:45:33 +02:00
torsten
5917e80bf0 Save more than 20 percent execution time by avoiding multiple calculation of properties. 2009-06-03 00:18:56 +02:00
torsten
7e3531ef5c Implementation of ridge lift from Patrice Poly based on an algorithm of Ian Forster-Lewis 2009-05-02 00:44:20 +02:00
frohlich
a99ea1c7b5 Port over remaining Point3D usage to the more type and unit safe SG* classes.
Remove leftover headers from plib/sg.

Modified Files:
 	src/AIModel/AIBase.cxx
 	src/AIModel/AIFlightPlanCreateCruise.cxx
 	src/ATCDCL/AIEntity.cxx src/ATCDCL/AIEntity.hxx
 	src/ATCDCL/AIGAVFRTraffic.cxx src/ATCDCL/AIGAVFRTraffic.hxx
 	src/ATCDCL/AILocalTraffic.cxx src/ATCDCL/AILocalTraffic.hxx
 	src/ATCDCL/AIMgr.cxx src/ATCDCL/ATC.hxx
 	src/ATCDCL/ATCDialog.cxx src/ATCDCL/ATCProjection.cxx
 	src/ATCDCL/ATCProjection.hxx src/ATCDCL/ATCutils.cxx
 	src/ATCDCL/ATCutils.hxx src/ATCDCL/approach.cxx
 	src/ATCDCL/commlist.cxx src/ATCDCL/ground.cxx
	src/ATCDCL/ground.hxx src/ATCDCL/tower.cxx
 	src/ATCDCL/tower.hxx src/Airports/calc_loc.cxx
 	src/Airports/dynamics.cxx src/Airports/groundnetwork.cxx
 	src/Airports/parking.cxx src/Airports/runwayprefs.cxx
 	src/Airports/simple.cxx src/Cockpit/cockpit.cxx
 	src/Cockpit/hud.hxx src/Cockpit/hud_card.cxx
 	src/Cockpit/hud_rwy.cxx src/Environment/environment.cxx
 	src/FDM/UFO.cxx src/FDM/SP/MagicCarpet.cxx src/GUI/dialog.hxx
 	src/Instrumentation/HUD/HUD.hxx
 	src/Instrumentation/HUD/HUD_runway.cxx
 	src/Instrumentation/KLN89/kln89.cxx src/Main/fg_init.cxx
 	src/Main/viewer.cxx src/Main/viewmgr.cxx
 	src/Model/panelnode.cxx src/MultiPlayer/mpmessages.hxx
 	src/Scenery/tilemgr.cxx src/Traffic/SchedFlight.cxx
 	src/Traffic/TrafficMgr.cxx
2009-03-18 08:00:08 +01:00
Tim Moore
736823d032 FGEnvironment: fix broken copy constructor.
Noticed by Csaba Halász.
2009-01-14 09:19:41 +01:00
fredb
3db0cf1659 Remove unneeded inclusions of windows.h, GL.h and GLU.H 2008-07-27 15:18:34 +00:00
timoore
24173c0398 Corrected atmosphere data, extended above 62000ft
Author: John Denker
Reviewed by: Ron Jensen and Gerard Robin
2007-08-31 18:01:07 +00:00
fredb
19dd8133aa Remove ambiguities 2006-07-29 09:22:24 +00:00
frohlich
75f0dcbb1d Add missing includes required to compile 2006-07-27 16:13:37 +00:00
mfranz
e979f72ea6 - we could use the same property path names in fgUntie that we used int fgTie
- cleanup
2006-07-27 14:28:51 +00:00
durk
a69dfbbc9a Mark's dynamic sun color changes. 2006-07-27 05:16:06 +00:00
mfranz
c9813d1b5d new FSF address 2006-02-21 01:16:04 +00:00
ehofman
62a359cc4a Alex Romosan:
* Use "const string&" rather than "string" in function calls when appropriate.
* Use "const Point3D&" instead of "Pint3D" in function calls when appropriate.
* Improved course calculation in calc_gc_course_dist()
* Safer thread handling code.

Vassilii Khachaturov:

Dont use "const Point3D&" for return types unless you're absolutely sure.

Erik Hofman:

* Use SGD_(2)PI(_[24]) as defined in simgear/constants.h rather than
  calculating it by hand every time.
2005-10-25 13:49:55 +00:00
curt
5c6020f2bc Added Farenheit temperature conversion to the property tree. 2005-05-20 19:42:53 +00:00
ehofman
d2271c3bf4 Harald JOHNSEN:
This is another update for the cloud code, a lot of lines but this time I have started to add the doxygen doc.

Misc
====

- corrected a bug when RTT is not available, the current rendering context was
  altered
- if RTT is not available then 3d clouds are not drawn at all
- impostors lighting is now recomputed when the sun changes position
- distant objects are no more seen in front of clouds
- blending of distant clouds is a bit better now
- litle optimization of code (uses a less cpu time)
- use layer wind speed and direction (no more hardcoded wind)
- fov is no more hardcoded

Changes
=======

- clouds (cu only) are dissipating/reforming (experimental)
- compute a turbulence factor that depends on surrounding clouds and type of
  clouds (experimental)
- clouds shapes are defined in cloudlayers.xml
- type of clouds present in a layer is also defined in cloudlayers.xml
- cloud layers are generated from metar and other misc. data (in progress)
- added a rain effect around the viewer (enabled in the rendering dialog and
  when the metar property says so)
- added a lightning effect (enabled in the rendering dialog) : cb clouds spawn
  new lightnings
- added a dialog to select from different weather source : metar/property,
  a 'fair weather' environment and a 'thunderstorm' environment.
2005-05-15 09:26:17 +00:00
ehofman
deccb6c9a7 Fix a problem where the windspeed could be negative in the property tree. Animations relying on this property could become stressed because of that. 2004-03-21 10:57:44 +00:00
curt
41920268a6 I had made a change on 6/24/2003 relating to temperature interpolation.
Upon further review, I was very misguided, and unfortunately no one slapped
my hand at the time.

Factoring in the environment manager's interpolation scheme, it makes complete
sense to specify the sea level temperature at each boundary and aloft layer.
In fact, this is the only way that allows the temperature interpolation to
make sense, especially around the boundary layer.  This is confusing stuff,
but it now works perfectly. :-)
2003-11-10 21:55:49 +00:00
ehofman
cd4263f333 Fix some compiler warnings 2003-10-16 12:53:10 +00:00
david
b8a8d2194a More turbulence tweaks and fixes.
Skip turbulence calculations with magnitude is 0.
2003-07-14 22:34:08 +00:00
david
1691d3ba19 Add the ability to control turbulence rate as well as magnitude.
Square the normalized direction acceleration for the y and z axes, so
that turbulence predominantly affects pitch.

Bind to the /environment/turbulence/magnitude-norm and
/environment/turbulence/rate-hz properties in FlightGear.
2003-07-13 20:13:18 +00:00
curt
1a8fe25cf4 Previously the weather dialog box and environment system had some confusion
between temperature at altitude vs. temperature at sea level.  The dialog
box asked for temperature at altitude which makes sense, but all the
internal crunching expected temperature at sea level.  However, it makes no
logical sense to specify the sea level temperature for different layers so
I changed the internal processing to work with temperature at altitude and
then derive an approximate sea level temperature at the end.

If you know the ground temperature, you can just enter this temperature
for the first boundary layer and the system should do the right thing.
2003-06-24 20:04:29 +00:00
ehofman
3c93039bc3 density_slugft3 is used before its initialization 2003-06-10 11:59:17 +00:00
david
e588cbadd8 Removed FGEnvironmentMgr as a special case in globals, initialization,
etc.

Improved the weather system to interpolate between different
elevations and deal with boundary-layer conditions.  The configuration
properties are now different (see $FG_ROOT/preferences.xml).
2003-06-08 14:47:03 +00:00
david
eff59b94a6 Do not allow the dewpoint to be higher than the temperature. 2003-04-04 22:38:55 +00:00
david
cf3e79ee46 Cleanup from Norman Vine to prevent compiler warnings. He also writes:
Note I believe there was a 'missing comma' in the next to last row also
2002-12-30 22:21:31 +00:00
david
0d48bae1ef Patch from Cameron Moore:
The patch fixes the uninitialized values by explicitly starting
everything at sea_level values.
2002-06-28 17:41:18 +00:00