1 /*****************************************************************************
3 Module: FGPhysicalProperty.cpp
4 Author: Christian Mayer
6 Called by: main program
8 -------- Copyright (C) 1999 Christian Mayer (fgfs@christianmayer.de) --------
10 This program is free software; you can redistribute it and/or modify it under
11 the terms of the GNU General Public License as published by the Free Software
12 Foundation; either version 2 of the License, or (at your option) any later
15 This program is distributed in the hope that it will be useful, but WITHOUT
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
20 You should have received a copy of the GNU General Public License along with
21 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
22 Place - Suite 330, Boston, MA 02111-1307, USA.
24 Further information about the GNU General Public License can also be found on
25 the world wide web at http://www.gnu.org.
27 FUNCTIONAL DESCRIPTION
28 ------------------------------------------------------------------------------
29 Initialice the FGPhysicalProperty struct to something sensible(?)
32 ------------------------------------------------------------------------------
33 29.05.1999 Christian Mayer Created
34 16.06.1999 Durk Talsma Portability for Linux
35 20.06.1999 Christian Mayer added lots of consts
36 11.10.1999 Christian Mayer changed set<> to map<> on Bernie Bright's
38 19.10.1999 Christian Mayer change to use PLIB's sg instead of Point[2/3]D
39 and lots of wee code cleaning
40 *****************************************************************************/
42 /****************************************************************************/
44 /****************************************************************************/
45 #include "FGWeatherDefs.h"
46 #include "FGPhysicalProperty.h"
48 /****************************************************************************/
49 /********************************** CODE ************************************/
50 /****************************************************************************/
51 FGPhysicalProperty::FGPhysicalProperty()
53 sgZeroVec3(Wind); //Wind vector
55 sgZeroVec3(Turbulence); //Turbulence vector
57 Temperature = FG_WEATHER_DEFAULT_TEMPERATURE; //a nice warm day
58 AirPressure = FG_WEATHER_DEFAULT_AIRPRESSURE; //mbar, that's ground level
59 VaporPressure = FG_WEATHER_DEFAULT_VAPORPRESSURE; //that gives about 50% relatvie humidity
62 FGPhysicalProperty::FGPhysicalProperty(const FGPhysicalProperties& p, const WeatherPrecision altitude)
64 p.WindAt(Wind, altitude);
65 p.TurbulenceAt(Turbulence, altitude);
66 Temperature = p.TemperatureAt(altitude);
67 AirPressure = p.AirPressureAt(altitude);
68 VaporPressure = p.VaporPressureAt(altitude);