SolarSystem.hpp   SolarSystem.hpp 
skipping to change at line 78 skipping to change at line 78
WRITE setFlagPointer WRITE setFlagPointer
NOTIFY flagPointerChanged) NOTIFY flagPointerChanged)
Q_PROPERTY(bool flagNativePlanetNames // was bool nativeNamesDisplay ed Q_PROPERTY(bool flagNativePlanetNames // was bool nativeNamesDisplay ed
READ getFlagNativePlanetNames READ getFlagNativePlanetNames
WRITE setFlagNativePlanetNames WRITE setFlagNativePlanetNames
NOTIFY flagNativePlanetNamesChanged) NOTIFY flagNativePlanetNamesChanged)
Q_PROPERTY(bool flagTranslatedNames Q_PROPERTY(bool flagTranslatedNames
READ getFlagTranslatedNames READ getFlagTranslatedNames
WRITE setFlagTranslatedNames WRITE setFlagTranslatedNames
NOTIFY flagTranslatedNamesChanged) NOTIFY flagTranslatedNamesChanged)
//StelProperties
Q_PROPERTY(bool planetsDisplayed Q_PROPERTY(bool planetsDisplayed
READ getFlagPlanets READ getFlagPlanets
WRITE setFlagPlanets WRITE setFlagPlanets
NOTIFY flagPlanetsDisplayedChanged NOTIFY flagPlanetsDisplayedChanged
) )
Q_PROPERTY(bool flagIsolatedOrbits Q_PROPERTY(bool flagIsolatedOrbits
READ getFlagIsolatedOrbits READ getFlagIsolatedOrbits
WRITE setFlagIsolatedOrbits WRITE setFlagIsolatedOrbits
NOTIFY flagIsolatedOrbitsChanged NOTIFY flagIsolatedOrbitsChanged
) )
Q_PROPERTY(bool flagIsolatedTrails Q_PROPERTY(bool flagIsolatedTrails
READ getFlagIsolatedTrails READ getFlagIsolatedTrails
WRITE setFlagIsolatedTrails WRITE setFlagIsolatedTrails
NOTIFY flagIsolatedTrailsChanged NOTIFY flagIsolatedTrailsChanged
) )
Q_PROPERTY(bool flagLightTravelTime Q_PROPERTY(bool flagLightTravelTime
READ getFlagLightTravelTime READ getFlagLightTravelTime
WRITE setFlagLightTravelTime WRITE setFlagLightTravelTime
NOTIFY flagLightTravelTimeChanged NOTIFY flagLightTravelTimeChanged
) )
Q_PROPERTY(bool flagUseObjModels
READ getFlagUseObjModels
WRITE setFlagUseObjModels
NOTIFY flagUseObjModelsChanged
)
Q_PROPERTY(bool flagShowObjSelfShadows
READ getFlagShowObjSelfShadows
WRITE setFlagShowObjSelfShadows
NOTIFY flagShowObjSelfShadowsChanged
)
Q_PROPERTY(bool flagMoonScale Q_PROPERTY(bool flagMoonScale
READ getFlagMoonScale READ getFlagMoonScale
WRITE setFlagMoonScale WRITE setFlagMoonScale
NOTIFY flagMoonScaleChanged NOTIFY flagMoonScaleChanged
) )
Q_PROPERTY(double moonScale Q_PROPERTY(double moonScale
READ getMoonScale READ getMoonScale
WRITE setMoonScale WRITE setMoonScale
NOTIFY moonScaleChanged NOTIFY moonScaleChanged
) )
Q_PROPERTY(bool flagMinorBodyScale
READ getFlagMinorBodyScale
WRITE setFlagMinorBodyScale
NOTIFY flagMinorBodyScaleChanged
)
Q_PROPERTY(double minorBodyScale
READ getMinorBodyScale
WRITE setMinorBodyScale
NOTIFY minorBodyScaleChanged
)
Q_PROPERTY(double labelsAmount Q_PROPERTY(double labelsAmount
READ getLabelsAmount READ getLabelsAmount
WRITE setLabelsAmount WRITE setLabelsAmount
NOTIFY labelsAmountChanged NOTIFY labelsAmountChanged
) )
Q_PROPERTY(bool ephemerisMarkersDisplayed Q_PROPERTY(bool ephemerisMarkersDisplayed
READ getFlagEphemerisMarkers READ getFlagEphemerisMarkers
WRITE setFlagEphemerisMarkers WRITE setFlagEphemerisMarkers
NOTIFY ephemerisMarkersChanged NOTIFY ephemerisMarkersChanged
) )
Q_PROPERTY(bool ephemerisHorizontalCoordinates
READ getFlagEphemerisHorizontalCoordinates
WRITE setFlagEphemerisHorizontalCoordinates
NOTIFY ephemerisHorizontalCoordinatesChanged
)
Q_PROPERTY(bool ephemerisDatesDisplayed Q_PROPERTY(bool ephemerisDatesDisplayed
READ getFlagEphemerisDates READ getFlagEphemerisDates
WRITE setFlagEphemerisDates WRITE setFlagEphemerisDates
NOTIFY ephemerisDatesChanged NOTIFY ephemerisDatesChanged
) )
Q_PROPERTY(bool ephemerisMagnitudesDisplayed
READ getFlagEphemerisMagnitudes
WRITE setFlagEphemerisMagnitudes
NOTIFY ephemerisMagnitudesChanged
)
Q_PROPERTY(bool flagCustomGrsSettings Q_PROPERTY(bool flagCustomGrsSettings
READ getFlagCustomGrsSettings READ getFlagCustomGrsSettings
WRITE setFlagCustomGrsSettings WRITE setFlagCustomGrsSettings
NOTIFY flagCustomGrsSettingsChanged NOTIFY flagCustomGrsSettingsChanged
) )
Q_PROPERTY(int customGrsLongitude Q_PROPERTY(int customGrsLongitude
READ getCustomGrsLongitude READ getCustomGrsLongitude
WRITE setCustomGrsLongitude WRITE setCustomGrsLongitude
NOTIFY customGrsLongitudeChanged NOTIFY customGrsLongitudeChanged
skipping to change at line 293 skipping to change at line 321
//! @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 StelObjectP (pointers) containing all So larSystem //! @return A STL vector of StelObjectP (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 Q_NULLPTR.
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 name the case in-sensistive English 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 Q_NULLPTR.
virtual StelObjectP searchByName(const QString& name) const; virtual StelObjectP searchByName(const QString& name) const;
virtual StelObjectP searchByID(const QString &id) const
{
return searchByName(id);
}
virtual QStringList listAllObjects(bool inEnglish) const; virtual QStringList listAllObjects(bool inEnglish) const;
virtual QStringList listAllObjectsByType(const QString& objType, boo l inEnglish) const; virtual QStringList listAllObjectsByType(const QString& objType, boo l inEnglish) const;
virtual QString getName() const { return "Solar System"; } virtual QString getName() const { return "Solar System"; }
virtual QString getStelObjectType() const { return Planet::PLANET_TY PE; }
public slots: public slots:
//////////////////////////////////////////////////////////////////// /////// //////////////////////////////////////////////////////////////////// ///////
// Method callable from script and GUI // Method callable from script and GUI
// Properties setters and getters // Properties setters and getters
//! Set flag which determines if planets are drawn or hidden. //! Set flag which determines if planets are drawn or hidden.
void setFlagPlanets(bool b); void setFlagPlanets(bool b);
//! Get the current value of the flag which determines if planet are drawn or hidden. //! Get the current value of the flag which determines if planet are drawn or hidden.
bool getFlagPlanets() const; bool getFlagPlanets() const;
skipping to change at line 353 skipping to change at line 387
void setFlagPointer(bool b) { if (b!=flagPointer) { flagPointer=b; e mit flagPointerChanged(b); }} void setFlagPointer(bool b) { if (b!=flagPointer) { flagPointer=b; e mit flagPointerChanged(b); }}
//! Get the current value of the flag which determines if planet poi nters are drawn or hidden. //! Get the current value of the flag which determines if planet poi nters are drawn or hidden.
bool getFlagPointer() const { return flagPointer;} bool getFlagPointer() const { return flagPointer;}
//! Set flag which determines if the light travel time calculation i s used or not. //! Set flag which determines if the light travel time calculation i s used or not.
void setFlagLightTravelTime(bool b); void setFlagLightTravelTime(bool b);
//! Get the current value of the flag which determines if light trav el time //! Get the current value of the flag which determines if light trav el time
//! calculation is used or not. //! calculation is used or not.
bool getFlagLightTravelTime(void) const {return flagLightTravelTime; } bool getFlagLightTravelTime(void) const {return flagLightTravelTime; }
//! Set flag whether to use OBJ models for rendering, where availabl
e
void setFlagUseObjModels(bool b) { if(b!=flagUseObjModels) { flagUse
ObjModels = b; emit flagUseObjModelsChanged(b); } }
//! Get the current value of the flag which determines wether to use
OBJ models for rendering, where available
bool getFlagUseObjModels(void) const { return flagUseObjModels; }
//! Set flag whether OBJ models should render self-shadowing (using
a shadow map)
void setFlagShowObjSelfShadows(bool b);
//! Get the current value of the flag which determines whether OBJ m
odels should render self-shadowing (using a shadow map)
bool getFlagShowObjSelfShadows(void) const { return flagShowObjSelfS
hadows; }
//! Set planet names font size. //! Set planet names font size.
//! @return font size //! @return font size
void setFontSize(float newFontSize); void setFontSize(float newFontSize);
//! Set the color used to draw planet labels. //! Set the color used to draw planet labels.
//! @param c The color of the planet labels (R,G,B) //! @param c The color of the planet labels (R,G,B)
//! @code //! @code
//! // example of usage in scripts //! // example of usage in scripts
//! SolarSystem.setLabelsColor(Vec3f(1.0,0.0,0.0)); //! SolarSystem.setLabelsColor(Vec3f(1.0,0.0,0.0));
//! @endcode //! @endcode
skipping to change at line 609 skipping to change at line 653
//! Set flag which determines if Earth's moon is scaled or not. //! Set flag which determines if Earth's moon is scaled or not.
void setFlagMoonScale(bool b); void setFlagMoonScale(bool b);
//! Get the current value of the flag which determines if Earth's mo on is scaled or not. //! Get the current value of the flag which determines if Earth's mo on is scaled or not.
bool getFlagMoonScale(void) const {return flagMoonScale;} bool getFlagMoonScale(void) const {return flagMoonScale;}
//! Set the display scaling factor for Earth's moon. //! Set the display scaling factor for Earth's moon.
void setMoonScale(double f); void setMoonScale(double f);
//! Get the display scaling factor for Earth's moon. //! Get the display scaling factor for Earth's moon.
double getMoonScale(void) const {return moonScale;} double getMoonScale(void) const {return moonScale;}
//! Set flag which determines if minor bodies (everything except the
8 planets) are drawn scaled or not.
void setFlagMinorBodyScale(bool b);
//! Get the current value of the flag which determines if minor bodi
es (everything except the 8 planets) are drawn scaled or not.
bool getFlagMinorBodyScale(void) const {return flagMinorBodyScale;}
//! Set the display scaling factor for minor bodies.
void setMinorBodyScale(double f);
//! Get the display scaling factor for minor bodies.
double getMinorBodyScale(void) const {return minorBodyScale;}
//! Translate names. (public so that SolarSystemEditor can call it). //! Translate names. (public so that SolarSystemEditor can call it).
void updateI18n(); void updateI18n();
//! Get the V magnitude for Solar system bodies from scripts //! Get the V magnitude for Solar system bodies from scripts
//! @param planetName the case in-sensistive English planet name. //! @param planetName the case in-sensistive English planet name.
//! @param withExtinction the flag for use extinction effect for mag nitudes (default not use) //! @param withExtinction the flag for use extinction effect for mag nitudes (default not use)
//! @return a magnitude //! @return a magnitude
float getPlanetVMagnitude(QString planetName, bool withExtinction=fa lse) const; float getPlanetVMagnitude(QString planetName, bool withExtinction=fa lse) const;
//! Get type for Solar system bodies from scripts //! Get type for Solar system bodies from scripts
skipping to change at line 645 skipping to change at line 699
//! @return a phase angle (in radians) //! @return a phase angle (in radians)
double getPhaseAngleForPlanet(QString planetName) const; double getPhaseAngleForPlanet(QString planetName) const;
//! Get phase for Solar system bodies from scripts //! Get phase for Solar system bodies from scripts
//! @param planetName the case in-sensistive English planet name. //! @param planetName the case in-sensistive English planet name.
//! @return a phase //! @return a phase
float getPhaseForPlanet(QString planetName) const; float getPhaseForPlanet(QString planetName) const;
//! Set the algorithm for computation of apparent magnitudes for pla nets in case observer on the Earth. //! Set the algorithm for computation of apparent magnitudes for pla nets in case observer on the Earth.
//! Possible values: //! Possible values:
//! @li @c Planesas (algorithm provided by Pere Planesas (Observator //! @li @c Mueller1893 [Explanatory Supplement to the Astronomical E
io Astronomico Nacional)) phemeris, 1961] (visual magnitudes, based on visual observations by G. Muel
//! @li @c Mueller (G. Mueller, based on visual observations 1877-91 ler, 1877-91)
. [Expl.Suppl.1961]) //! @li @c AstrAlm1984 [Astronomical Almanac 1984] and later. These
//! @li @c Harris (Astronomical Almanac 1984 and later. These give V give V (instrumental) magnitudes.
(instrumental) magnitudes) //! @li @c ExpSup1992 [Explanatory Supplement to the Astronomical Al
manac, 1992] (algorithm contributed by Pere Planesas, Observatorio Astronom
ico Nacional)
//! @li @c ExpSup2013 [Explanatory Supplement to the Astronomical Al
manac, 3rd edition, 2013]
//! @li @c Generic Visual magnitude based on phase angle and albedo.
//! Details: //! Details:
//! @li J. Meeus "Astronomical Algorithms" (2nd ed., with correction s as of August 10, 2009) p.283-286. //! @li J. Meeus "Astronomical Algorithms" (2nd ed. 1998, with corre ctions as of August 10, 2009) p.283-286.
//! @li O. Montenbruck, T. Pfleger "Astronomy on the Personal Comput er" (4th ed.) p.143-145. //! @li O. Montenbruck, T. Pfleger "Astronomy on the Personal Comput er" (4th ed.) p.143-145.
//! @li Daniel L. Harris "Photometry and Colorimetry of Planets and Satellites" http://adsabs.harvard.edu/abs/1961plsa.book..272H //! @li Daniel L. Harris "Photometry and Colorimetry of Planets and Satellites" http://adsabs.harvard.edu/abs/1961plsa.book..272H
//! Hint: Default option in config.ini: astro/apparent_magnitude_alg //! @li Sean E. Urban and P. Kenneth Seidelmann "Explanatory Supplem
orithm = Harris ent to the Astronomical Almanac" (3rd edition, 2013)
//! Hint: Default option in config.ini: astro/apparent_magnitude_alg
orithm = ExpSup2013
//! @param algorithm the case in-sensitive algorithm name //! @param algorithm the case in-sensitive algorithm name
//! @note: The structure of algorithms is almost identical, just the //! @note: The structure of algorithms is almost identical, just the
numbers are different! You should activate numbers are different!
//! Mueller's algorithm for simulate the eye's impression. (Esp. Ven //! You should activate Mueller's algorithm to simulate the e
us!) ye's impression. (Esp. Venus!)
void setApparentMagnitudeAlgorithmOnEarth(QString algorithm); void setApparentMagnitudeAlgorithmOnEarth(QString algorithm);
//! Get the algorithm used for computation of apparent magnitudes fo r planets in case observer on the Earth //! Get the algorithm used for computation of apparent magnitudes fo r planets in case observer on the Earth
//! @see setApparentMagnitudeAlgorithmOnEarth() //! @see setApparentMagnitudeAlgorithmOnEarth()
QString getApparentMagnitudeAlgorithmOnEarth() const; QString getApparentMagnitudeAlgorithmOnEarth() const;
//! Set flag which enable use native names for planets or not. //! Set flag which enable use native names for planets or not.
void setFlagNativePlanetNames(bool b); void setFlagNativePlanetNames(bool b);
//! Get the current value of the flag which enables showing native n ames for planets or not. //! Get the current value of the flag which enables showing native n ames for planets or not.
bool getFlagNativePlanetNames(void) const; bool getFlagNativePlanetNames(void) const;
skipping to change at line 728 skipping to change at line 785
void flagOrbitsChanged(bool b); void flagOrbitsChanged(bool b);
void flagHintsChanged(bool b); void flagHintsChanged(bool b);
void trailsDisplayedChanged(bool b); void trailsDisplayedChanged(bool b);
void flagPointerChanged(bool b); void flagPointerChanged(bool b);
void flagNativePlanetNamesChanged(bool b); void flagNativePlanetNamesChanged(bool b);
void flagTranslatedNamesChanged(bool b); void flagTranslatedNamesChanged(bool b);
void flagPlanetsDisplayedChanged(bool b); void flagPlanetsDisplayedChanged(bool b);
void flagIsolatedOrbitsChanged(bool b); void flagIsolatedOrbitsChanged(bool b);
void flagIsolatedTrailsChanged(bool b); void flagIsolatedTrailsChanged(bool b);
void flagLightTravelTimeChanged(bool b); void flagLightTravelTimeChanged(bool b);
void flagUseObjModelsChanged(bool b);
void flagShowObjSelfShadowsChanged(bool b);
void flagMoonScaleChanged(bool b); void flagMoonScaleChanged(bool b);
void moonScaleChanged(double f); void moonScaleChanged(double f);
void flagMinorBodyScaleChanged(bool b);
void minorBodyScaleChanged(double f);
void labelsAmountChanged(double f); void labelsAmountChanged(double f);
void ephemerisMarkersChanged(bool b); void ephemerisMarkersChanged(bool b);
void ephemerisHorizontalCoordinatesChanged(bool b);
void ephemerisDatesChanged(bool b); void ephemerisDatesChanged(bool b);
void ephemerisMagnitudesChanged(bool b);
void flagCustomGrsSettingsChanged(bool b); void flagCustomGrsSettingsChanged(bool b);
void customGrsLongitudeChanged(int l); void customGrsLongitudeChanged(int l);
void customGrsDriftChanged(double drift); void customGrsDriftChanged(double drift);
void customGrsJDChanged(double JD); void customGrsJDChanged(double JD);
void orbitsColorChanged(const Vec3f & color) const; void orbitsColorChanged(const Vec3f & color) const;
void majorPlanetsOrbitsColorChanged(const Vec3f & color) const; void majorPlanetsOrbitsColorChanged(const Vec3f & color) const;
void minorPlanetsOrbitsColorChanged(const Vec3f & color) const; void minorPlanetsOrbitsColorChanged(const Vec3f & color) const;
void dwarfPlanetsOrbitsColorChanged(const Vec3f & color) const; void dwarfPlanetsOrbitsColorChanged(const Vec3f & color) const;
void moonsOrbitsColorChanged(const Vec3f & color) const; void moonsOrbitsColorChanged(const Vec3f & color) const;
skipping to change at line 767 skipping to change at line 830
void orbitColorStyleChanged(QString style) const; void orbitColorStyleChanged(QString style) const;
void solarSystemDataReloaded(); void solarSystemDataReloaded();
public: public:
//////////////////////////////////////////////////////////////////// /////// //////////////////////////////////////////////////////////////////// ///////
// Other public methods // Other public methods
//! Get a pointer to a Planet object. //! Get a pointer to a Planet object.
//! @param planetEnglishName the English name of the desired planet. //! @param planetEnglishName the English name of the desired planet.
//! @return The matching planet pointer if exists or NULL. //! @return The matching planet pointer if exists or Q_NULLPTR.
PlanetP searchByEnglishName(QString planetEnglishName) const; PlanetP searchByEnglishName(QString planetEnglishName) const;
//! Get the Planet object pointer for the Sun. //! Get the Planet object pointer for the Sun.
PlanetP getSun() const {return sun;} PlanetP getSun() const {return sun;}
//! Get the Planet object pointer for the Earth. //! Get the Planet object pointer for the Earth.
PlanetP getEarth() const {return earth;} PlanetP getEarth() const {return earth;}
//! Get the Planet object pointer for Earth's moon. //! Get the Planet object pointer for Earth's moon.
PlanetP getMoon() const {return moon;} PlanetP getMoon() const {return moon;}
skipping to change at line 791 skipping to change at line 854
//! Get the list of all the planet english names //! Get the list of all the planet english names
QStringList getAllPlanetEnglishNames() const; QStringList getAllPlanetEnglishNames() const;
//! Get the list of all the planet localized names //! Get the list of all the planet localized names
QStringList getAllPlanetLocalizedNames() const; QStringList getAllPlanetLocalizedNames() const;
//! Reload the planets //! Reload the planets
void reloadPlanets(); void reloadPlanets();
//! New 0.16: delete a planet from the solar system. Writes a warnin
g to log if this is not a minor object.
bool removePlanet(QString name);
//! Determines relative amount of sun visible from the observer's po sition. //! Determines relative amount of sun visible from the observer's po sition.
double getEclipseFactor(const StelCore *core) const; double getEclipseFactor(const StelCore *core) const;
//! 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 ptic frame (Required for light travel time computation). //! @param observerPos Position of the observer in heliocentric ecli ptic frame (Required for light travel time computation).
//! @param dateJDE the Julian Day in JDE (Ephemeris Time or equivale nt) //! @param dateJDE the Julian Day in JDE (Ephemeris Time or equivale nt)
void computePositions(double dateJDE, const Vec3d& observerPos = Vec 3d(0.)); void computePositions(double dateJDE, const Vec3d& observerPos = Vec 3d(0.));
//! Get the list of all the bodies of the solar system. //! Get the list of all the bodies of the solar system.
const QList<PlanetP>& getAllPlanets() const {return systemPlanets;} const QList<PlanetP>& getAllPlanets() const {return systemPlanets;}
//! Get the list of all minor bodies names.
const QStringList getMinorBodiesList() const { return minorBodies; }
private slots: private slots:
//! Called when a new object is selected. //! Called when a new object is selected.
void selectedObjectChange(StelModule::StelModuleSelectAction action) ; void selectedObjectChange(StelModule::StelModuleSelectAction action) ;
//! Called when the sky culture is updated. //! Called when the sky culture is updated.
//! Loads native names of planets for a given sky culture. //! Loads native names of planets for a given sky culture.
//! @param skyCultureDir the name of the directory containing the sk y culture to use. //! @param skyCultureDir the name of the directory containing the sk y culture to use.
void updateSkyCulture(const QString& skyCultureDir); void updateSkyCulture(const QString& skyCultureDir);
//! Called following StelMainView::reloadShadersRequested
void reloadShaders();
void setFlagEphemerisMarkers(bool b); void setFlagEphemerisMarkers(bool b);
bool getFlagEphemerisMarkers() const; bool getFlagEphemerisMarkers() const;
void setFlagEphemerisHorizontalCoordinates(bool b);
bool getFlagEphemerisHorizontalCoordinates() const;
void setFlagEphemerisDates(bool b); void setFlagEphemerisDates(bool b);
bool getFlagEphemerisDates() const; bool getFlagEphemerisDates() const;
void setFlagEphemerisMagnitudes(bool b);
bool getFlagEphemerisMagnitudes() const;
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 Q_NULLPTR
StelObjectP search(Vec3d v, const StelCore* core) const; StelObjectP search(Vec3d v, const StelCore* core) const;
//! 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 dateJDE, const Vec3d& observerPos = Vec3d(0.)); void computeTransMatrices(double dateJDE, const Vec3d& observerPos = Vec3d(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);
//! Load planet data from the Solar System configuration file. //! Load planet data from the Solar System configuration files.
//! This function attempts to load every possible instance of the //! This function attempts to load every possible instance of the
//! Solar System configuration file in the file paths, falling back if a //! Solar System configuration files in the file paths, falling back if a
//! given path can't be loaded. //! given path can't be loaded.
void loadPlanets(); void loadPlanets();
//! Load planet data from the given file //! Load planet data from the given file
bool loadPlanets(const QString& filePath); bool loadPlanets(const QString& filePath);
void recreateTrails(); void recreateTrails();
//! Set flag who enable display a permanent orbits for objects or no t //! Set flag who enable display a permanent orbits for objects or no t
void setFlagPermanentOrbits(bool b); void setFlagPermanentOrbits(bool b);
skipping to change at line 862 skipping to change at line 939
//! Set selected planets by englishName. //! Set selected planets by englishName.
//! @param englishName The planet name or "" to select no planet //! @param englishName The planet name or "" to select no planet
void setSelected(const QString& englishName); void setSelected(const QString& englishName);
//! Set selected object from its pointer. //! Set selected object from its pointer.
void setSelected(PlanetP obj); void setSelected(PlanetP obj);
//! Get selected object's pointer. //! Get selected object's pointer.
PlanetP getSelected(void) const {return selected;} PlanetP getSelected(void) const {return selected;}
//! The currently selected planet. //! The currently selected planet.
PlanetP selected; PlanetP selected;
// Moon scale value // Separate Moon and minor body scale values. The latter make sense
to zoom up and observe irregularly formed 3D objects like minor moons of th
e outer planets.
// TBD: It may be wise to remove the sphereScale value from the Plan
et class: that is only used by the Moon.
bool flagMoonScale; bool flagMoonScale;
double moonScale; double moonScale;
bool flagMinorBodyScale;
double minorBodyScale;
QFont planetNameFont; QFont planetNameFont;
//! The amount of planets labels (between 0 and 10). //! The amount of planets labels (between 0 and 10).
double labelsAmount; double labelsAmount;
//! List of all the bodies of the solar system. //! List of all the bodies of the solar system.
QList<PlanetP> systemPlanets; QList<PlanetP> systemPlanets;
// Master settings // Master settings
bool flagOrbits; bool flagOrbits;
bool flagLightTravelTime; bool flagLightTravelTime;
bool flagUseObjModels;
bool flagShowObjSelfShadows;
//! The selection pointer texture. //! The selection pointer texture.
StelTextureSP texPointer; StelTextureSP texPointer;
StelTextureSP texCircle; // The symbolic circle t exture StelTextureSP texCircle; // The symbolic circle t exture
bool flagShow; bool flagShow;
bool flagPointer; // show red cross select ion pointer? bool flagPointer; // show red cross select ion pointer?
bool flagNativePlanetNames; // show native names for planets? bool flagNativePlanetNames; // show native names for planets?
bool flagTranslatedNames; // show translated names ? bool flagTranslatedNames; // show translated names ?
bool flagIsolatedTrails; bool flagIsolatedTrails;
bool flagIsolatedOrbits; bool flagIsolatedOrbits;
bool ephemerisMarkersDisplayed; bool ephemerisMarkersDisplayed;
bool ephemerisDatesDisplayed; bool ephemerisDatesDisplayed;
bool ephemerisMagnitudesDisplayed;
bool ephemerisHorizontalCoordinates;
class TrailGroup* allTrails; class TrailGroup* allTrails;
StelGui* gui; StelGui* gui;
QSettings* conf; QSettings* conf;
LinearFader trailFader; LinearFader trailFader;
Vec3f trailColor; Vec3f trailColor;
Vec3f pointerColor; Vec3f pointerColor;
QHash<QString, QString> planetNativeNamesMap; QHash<QString, QString> planetNativeNamesMap;
QStringList minorBodies;
QList<Orbit*> orbits; // Pointers on created elliptical or // 0.16pre observation GZ: this list contains pointers to all orbit
bits objects,
// while the planets don't own their orbit objects.
// Would it not be better to hand over the orbit object ownership to
the Planet object?
// This list could then be removed.
// In case this was originally intended to provide some fast access
for time-dependent computation with the same JD,
// note that we must also always compensate to light time travel, so
likely each computation has to be done twice,
// with current JDE and JDE-lightTime(distance).
QList<Orbit*> orbits; // Pointers on created elliptical or
bits. 0.16pre: WHY DO WE NEED THIS???
}; };
#endif // _SOLARSYSTEM_HPP_ #endif // _SOLARSYSTEM_HPP_
 End of changes. 34 change blocks. 
24 lines changed or deleted 136 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/