New textured moon and rewritten/restructured Astro code contributed by Durk

Talsma.
This commit is contained in:
curt
2009-09-15 18:31:31 +02:00
committed by Tim Moore
parent 38631c9eb3
commit 001a2c89e7
33 changed files with 2142 additions and 1524 deletions
+29 -82
View File
@@ -1,7 +1,9 @@
/**************************************************************************
* moon.h
*
* Written 1997 by Durk Talsma, started October, 1997.
* moon.hxx
* Written by Durk Talsma. Originally started October 1997, for distribution
* with the FlightGear project. Version 2 was written in August and
* September 1998. This code is based upon algorithms and data kindly
* provided by Mr. Paul Schlyter. (pausch@saaf.se).
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -20,87 +22,32 @@
* $Id$
* (Log is kept at end of this file)
**************************************************************************/
#ifndef _MOON_HXX_
#define _MOON_HXX_
#ifndef _MOON_HXX
#define _MOON_HXX
#ifndef __cplusplus
# error This library requires C++
#endif
#include <math.h>
#include <Aircraft/aircraft.h>
#include <Debug/fg_debug.h>
#include <Include/fg_constants.h>
#include <Include/general.h>
#include <Main/views.hxx>
#include <Time/fg_time.hxx>
#include "orbits.hxx"
#include "celestialBody.hxx"
#include "star.hxx"
class Moon : public CelestialBody
{
private:
void TexInit(); // This should move to the constructor eventually.
GLUquadricObj *Object;
GLuint Sphere;
public:
Moon ( fgTIME *t);
void updatePosition(fgTIME *t, Star *ourSun);
void newImage(float, float);
};
/* Initialize the Moon Display management Subsystem */
void fgMoonInit( void );
/* Draw the Moon */
void fgMoonRender( void );
struct CelestialCoord fgCalculateMoon(struct OrbElements Params,
struct OrbElements sunParams,
fgTIME t);
extern struct OrbElements pltOrbElements[9];
#endif /* _MOON_HXX */
/* $Log$
/* Revision 1.3 1998/04/28 01:19:00 curt
/* Type-ified fgTIME and fgVIEW
/*
* Revision 1.2 1998/04/24 00:45:00 curt
* Wrapped "#include <config.h>" in "#ifdef HAVE_CONFIG_H"
* Fixed a bug when generating sky colors.
*
* Revision 1.1 1998/04/22 13:21:28 curt
* C++ - ifing the code a bit.
*
* Revision 1.7 1998/04/21 17:02:30 curt
* Prepairing for C++ integration.
*
* Revision 1.6 1998/02/23 19:07:54 curt
* Incorporated Durk's Astro/ tweaks. Includes unifying the sun position
* calculation code between sun display, and other FG sections that use this
* for things like lighting.
*
* Revision 1.5 1998/02/02 20:53:21 curt
* To version 0.29
*
* Revision 1.4 1998/01/22 02:59:27 curt
* Changed #ifdef FILE_H to #ifdef _FILE_H
*
* Revision 1.3 1998/01/19 19:26:58 curt
* Merged in make system changes from Bob Kuehne <rpk@sgi.com>
* This should simplify things tremendously.
*
* Revision 1.2 1998/01/19 18:40:17 curt
* Tons of little changes to clean up the code and to remove fatal errors
* when building with the c++ compiler.
*
* Revision 1.1 1998/01/07 03:16:16 curt
* Moved from .../Src/Scenery/ to .../Src/Astro/
*
* Revision 1.4 1997/12/11 04:43:56 curt
* Fixed sun vector and lighting problems. I thing the moon is now lit
* correctly.
*
* Revision 1.3 1997/11/25 19:25:35 curt
* Changes to integrate Durk's moon/sun code updates + clean up.
*
* Revision 1.2 1997/10/25 03:24:23 curt
* Incorporated sun, moon, and star positioning code contributed by Durk Talsma.
*
* Revision 1.1 1997/10/25 03:16:09 curt
* Initial revision of code contributed by Durk Talsma.
*
*/
#endif // _MOON_HXX_