SolarSystem.hpp   SolarSystem.hpp 
skipping to change at line 30 skipping to change at line 30
#ifndef _SOLARSYSTEM_HPP_ #ifndef _SOLARSYSTEM_HPP_
#define _SOLARSYSTEM_HPP_ #define _SOLARSYSTEM_HPP_
//sun is already defined in Sun C/Solaris //sun is already defined in Sun C/Solaris
#if defined(sun) #if defined(sun)
#undef sun #undef sun
#endif #endif
#include <vector> #include <vector>
#include <functional> #include <functional>
#include "StelObjectModule.hpp" #include "StelObjectModule.hpp"
#include "STextureTypes.hpp" #include "StelTextureTypes.hpp"
class Orbit; class Orbit;
class LoadingBar; class StelLoadingBar;
class Translator; class StelTranslator;
class StelObject; class StelObject;
class Planet; class Planet;
class SFont; class StelFont;
class StelCore; class StelCore;
class Projector; class StelProjector;
class Navigator; class StelNavigator;
class QSettings; class QSettings;
//! @class SolarSystem //! @class SolarSystem
//! This StelObjectModule derivative is used to model SolarSystem boies. //! This StelObjectModule derivative is used to model SolarSystem boies.
//! This includes the Major Planets, Minor Planets and Comets. //! This includes the Major Planets, Minor Planets and Comets.
class SolarSystem : public StelObjectModule class SolarSystem : public StelObjectModule
{ {
Q_OBJECT; Q_OBJECT
public: public:
SolarSystem(); SolarSystem();
virtual ~SolarSystem(); virtual ~SolarSystem();
//////////////////////////////////////////////////////////////////// /////// //////////////////////////////////////////////////////////////////// ///////
// Methods defined in the StelModule class // Methods defined in the StelModule class
//! Initialize the SolarSystem. //! Initialize the SolarSystem.
//! Includes: //! Includes:
//! - loading planetary body orbital and model data from data/ssyste m.ini //! - loading planetary body orbital and model data from data/ssyste m.ini
skipping to change at line 98 skipping to change at line 98
//! @param v A vector representing a point in the sky. //! @param v A vector representing a point in the sky.
//! @param limitFov The radius of the circle around the point v whic h //! @param limitFov The radius of the circle around the point v whic h
//! defines the size of the area to search. //! defines the size of the area to search.
//! @param core the core object //! @param core the core object
//! @return A STL vector of SpelObjectP (pointers) containing all So larSystem //! @return A STL vector of SpelObjectP (pointers) containing all So larSystem
//! objects found in the specified area. This vector is not sorted b y distance //! objects found in the specified area. This vector is not sorted b y distance
//! from v. //! from v.
virtual QList<StelObjectP> searchAround(const Vec3d& v, double limit Fov, const StelCore* core) const; virtual QList<StelObjectP> searchAround(const Vec3d& v, double limit Fov, const StelCore* core) const;
//! Search for a SolarSystem object based on the localised name. //! Search for a SolarSystem object based on the localised name.
//! @param NameI18n The case in-sensistive translated planet name. //! @param nameI18n the case in-sensistive translated planet name.
//! @return A StelObjectP for the object if found, else NULL. //! @return a StelObjectP for the object if found, else NULL.
virtual StelObjectP searchByNameI18n(const QString& nameI18n) const; virtual StelObjectP searchByNameI18n(const QString& nameI18n) const;
//! Search for a SolarSystem object based on the English name. //! Search for a SolarSystem object based on the English name.
//! @param NameI18n The case in-sensistive translated planet name. //! @param name the case in-sensistive English planet name.
//! @return A StelObjectP for the object if found, else NULL. //! @return a StelObjectP for the object if found, else NULL.
virtual StelObjectP searchByName(const QString& name) const; virtual StelObjectP searchByName(const QString& name) const;
//! Find objects by translated name prefix. //! Find objects by translated name prefix.
//! Find and return the list of at most maxNbItem objects auto-compl eting //! Find and return the list of at most maxNbItem objects auto-compl eting
//! the passed object I18n name. //! the passed object I18n name.
//! @param objPrefix the case insensitive first letters of the searc hed object. //! @param objPrefix the case insensitive first letters of the searc hed object.
//! @param maxNbItem the maximum number of returned object names. //! @param maxNbItem the maximum number of returned object names.
//! @return a list of matching object name by order of relevance, or an empty list if nothing matches. //! @return a list of matching object name by order of relevance, or an empty list if nothing matches.
virtual QStringList listMatchingObjectsI18n(const QString& objPrefix , int maxNbItem=5) const; virtual QStringList listMatchingObjectsI18n(const QString& objPrefix , int maxNbItem=5) const;
skipping to change at line 218 skipping to change at line 218
//////////////////////////////////////////////////////////////////// /////////////////// //////////////////////////////////////////////////////////////////// ///////////////////
// DEPRECATED // DEPRECATED
//////////////////////////////////////////////////////////////////// /////////////////// //////////////////////////////////////////////////////////////////// ///////////////////
//! Get a hash of locale and ssystem.ini names for use with the TUI. //! Get a hash of locale and ssystem.ini names for use with the TUI.
//! @return A newline delimited hash of localized:standard planet na mes. //! @return A newline delimited hash of localized:standard planet na mes.
//! Planet translated name is PARENT : NAME //! Planet translated name is PARENT : NAME
QString getPlanetHashString(); QString getPlanetHashString();
//! Compute the position and transform matrix for every element of t he solar system. //! Compute the position and transform matrix for every element of t he solar system.
//! @param observerPos Position of the observer in heliocentric ecli //! @param observerPos Position of the observer in heliocentric ecli
ptic frame. ptic frame (Required for light travel time computation).
//! (Required for light travel time computation.) //! @param date the date in JDay
void computePositions(double date, const Vec3d& observerPos = Vec3d( 0,0,0)); void computePositions(double date, const Vec3d& observerPos = Vec3d( 0,0,0));
//! Get the list of all the bodies of the solar system. //! Get the list of all the bodies of the solar system.
const std::vector<Planet*>& getAllPlanets() const {return systemPlan ets;} const std::vector<Planet*>& getAllPlanets() const {return systemPlan ets;}
private: private:
//! Search for SolarSystem objects which are close to the position g iven //! Search for SolarSystem objects which are close to the position g iven
//! in earth equatorial position. //! in earth equatorial position.
//! @param v A position in earth equatorial position. //! @param v A position in earth equatorial position.
//! @param core the StelCore object. //! @param core the StelCore object.
//! @return a pointer to a StelObject if found, else NULL //! @return a pointer to a StelObject if found, else NULL
StelObject* search(Vec3d v, const StelCore* core) const; StelObject* search(Vec3d v, const StelCore* core) const;
//! Update the planet motion trails. //! Update the planet motion trails.
// void updateTrails(const Navigator* nav); // void updateTrails(const StelNavigator* nav);
//! Start/stop accumulating new trail data (clear old data). //! Start/stop accumulating new trail data (clear old data).
void startTrails(bool b); void startTrails(bool b);
//! Compute the transformation matrix for every elements of the sola r system. //! Compute the transformation matrix for every elements of the sola r system.
//! observerPos is needed for light travel time computation. //! observerPos is needed for light travel time computation.
void computeTransMatrices(double date, const Vec3d& observerPos = Ve c3d(0,0,0)); void computeTransMatrices(double date, const Vec3d& observerPos = Ve c3d(0,0,0));
//! Draw a nice animated pointer around the object. //! Draw a nice animated pointer around the object.
void drawPointer(const StelCore* core); void drawPointer(const StelCore* core);
skipping to change at line 267 skipping to change at line 267
void setSelected(StelObject* obj); void setSelected(StelObject* obj);
//! Get selected object's pointer. //! Get selected object's pointer.
StelObject* getSelected(void) const {return selected;} StelObject* getSelected(void) const {return selected;}
//! The currently selected planet. //! The currently selected planet.
StelObject* selected; StelObject* selected;
bool flagMoonScale; bool flagMoonScale;
float moonScale; // Moon scale value float moonScale; // Moon scale value
double fontSize; double fontSize;
SFont& planetNameFont; StelFont& planetNameFont;
//! The amount of planets labels (between 0 and 10) //! The amount of planets labels (between 0 and 10)
float labelsAmount; float labelsAmount;
std::vector<Planet*> systemPlanets; // Vector containing all the bo dies of the system std::vector<Planet*> systemPlanets; // Vector containing all the bo dies of the system
// draw earth shadow on moon for lunar eclipses
void drawEarthShadow(const Navigator * nav, Projector * prj);
// And sort them from the furthest to the closest to the observer // And sort them from the furthest to the closest to the observer
struct biggerDistance : public std::binary_function<Planet*, Planet* , bool> struct biggerDistance : public std::binary_function<Planet*, Planet* , bool>
{ {
bool operator()(Planet* p1, Planet* p2); bool operator()(Planet* p1, Planet* p2);
}; };
STextureSP texEarthShadow; // for lunar eclipses
// Master settings // Master settings
bool flagOrbits; bool flagOrbits;
bool flagLightTravelTime; bool flagLightTravelTime;
STextureSP texPointer; // The selection pointer texture StelTextureSP texPointer; // The selection pointer texture
bool flagShow; bool flagShow;
//////////////////////////////////////////////////////////////////// ////////////// //////////////////////////////////////////////////////////////////// //////////////
// DEPRECATED // DEPRECATED
//////////////////////////////////////////////////////////////////// ////////////// //////////////////////////////////////////////////////////////////// //////////////
const Planet* lastHomePlanet; // for tracking home planet changes for trails const Planet* lastHomePlanet; // for tracking home planet changes for trails
std::vector<Orbit*> orbits; // Pointers on created ellipti cal orbits std::vector<Orbit*> orbits; // Pointers on created ellipti cal orbits
}; };
 End of changes. 13 change blocks. 
22 lines changed or deleted 17 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/