Initial revision.
This commit is contained in:
parent
d1e4a4bc6f
commit
92dd898110
2 changed files with 137 additions and 0 deletions
72
src/Time/tmp.cxx
Normal file
72
src/Time/tmp.cxx
Normal file
|
@ -0,0 +1,72 @@
|
|||
// tmp.cxx -- stuff I don't know what to do with at the moment
|
||||
//
|
||||
// Written by Curtis Olson, started July 2000.
|
||||
//
|
||||
// Copyright (C) 2000 Curtis L. Olson - curt@flightgear.org
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
//
|
||||
// $Id$
|
||||
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
#include <simgear/magvar/magvar.hxx>
|
||||
#include <simgear/timing/fg_time.hxx>
|
||||
|
||||
#include <FDM/flight.hxx>
|
||||
#include <Main/options.hxx>
|
||||
|
||||
#include "light.hxx"
|
||||
#include "moonpos.hxx"
|
||||
#include "sunpos.hxx"
|
||||
#include "tmp.hxx"
|
||||
|
||||
|
||||
FGMagVar::FGMagVar() {
|
||||
}
|
||||
|
||||
FGMagVar::~FGMagVar() {
|
||||
}
|
||||
|
||||
|
||||
void FGMagVar::update( double lon, double lat, double alt_m, double jd ) {
|
||||
// Calculate local magnetic variation
|
||||
double field[6];
|
||||
// cout << "alt_m = " << alt_m << endl;
|
||||
magvar = SGMagVar( lat, lon, alt_m / 1000.0, (long)jd, field );
|
||||
magdip = atan(field[5]/sqrt(field[3]*field[3]+field[4]*field[4]));
|
||||
}
|
||||
|
||||
FGMagVar cur_magvar;
|
||||
|
||||
|
||||
// periodic time updater wrapper
|
||||
void fgUpdateLocalTime() {
|
||||
|
||||
FGTime::cur_time_params->updateLocal( cur_fdm_state->get_Longitude(),
|
||||
cur_fdm_state->get_Latitude(),
|
||||
current_options.get_fg_root() );
|
||||
}
|
||||
|
||||
|
||||
// update sky and lighting parameters
|
||||
void fgUpdateSkyAndLightingParams() {
|
||||
fgUpdateSunPos();
|
||||
fgUpdateMoonPos();
|
||||
cur_light_params.Update();
|
||||
}
|
65
src/Time/tmp.hxx
Normal file
65
src/Time/tmp.hxx
Normal file
|
@ -0,0 +1,65 @@
|
|||
// tmp.hxx -- stuff I don't know what to do with at the moment
|
||||
//
|
||||
// Written by Curtis Olson, started July 2000.
|
||||
//
|
||||
// Copyright (C) 2000 Curtis L. Olson - curt@flightgear.org
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
//
|
||||
// $Id$
|
||||
|
||||
|
||||
#ifndef _TMP_HXX
|
||||
#define _TMP_HXX
|
||||
|
||||
|
||||
#ifndef __cplusplus
|
||||
# error This library requires C++
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
|
||||
// periodic time updater
|
||||
void fgUpdateLocalTime();
|
||||
|
||||
// update sky and lighting parameters
|
||||
void fgUpdateSkyAndLightingParams();
|
||||
|
||||
class FGMagVar {
|
||||
|
||||
private:
|
||||
|
||||
double magvar;
|
||||
double magdip;
|
||||
|
||||
public:
|
||||
|
||||
FGMagVar();
|
||||
~FGMagVar();
|
||||
|
||||
void update( double lon, double lat, double alt_m, double jd );
|
||||
|
||||
double get_magvar() const { return magvar; }
|
||||
double get_magdip() const { return magdip; }
|
||||
};
|
||||
|
||||
extern FGMagVar cur_magvar;
|
||||
|
||||
|
||||
#endif // _LIGHT_HXX
|
Loading…
Add table
Reference in a new issue