StelSkyDrawer.hpp   StelSkyDrawer.hpp 
skipping to change at line 48 skipping to change at line 48
float radius; float radius;
float luminance; float luminance;
}; };
//! @class StelSkyDrawer //! @class StelSkyDrawer
//! Provide a set of methods used to draw sky objects taking into account //! Provide a set of methods used to draw sky objects taking into account
//! eyes adaptation, zoom level, instrument model and artificially set magn itude limits //! eyes adaptation, zoom level, instrument model and artificially set magn itude limits
class StelSkyDrawer : public QObject class StelSkyDrawer : public QObject
{ {
Q_OBJECT Q_OBJECT
//! Sets how much brighter stars will be bigger than fainter stars
Q_PROPERTY(double relativeStarScale READ getRelativeStarScale WRITE
setRelativeStarScale NOTIFY relativeStarScaleChanged)
//! The absolute star brightness scale
Q_PROPERTY(double absoluteStarScale READ getAbsoluteStarScale WRITE
setAbsoluteStarScale NOTIFY absoluteStarScaleChanged)
Q_PROPERTY(double twinkleAmount READ getTwinkleAmount WRITE setTwink
leAmount NOTIFY twinkleAmountChanged)
Q_PROPERTY(bool flagTwinkle READ getFlagTwinkle WRITE setFlagTwinkle
NOTIFY flagTwinkleChanged)
Q_PROPERTY(int bortleScaleIndex READ getBortleScaleIndex WRITE setBo
rtleScaleIndex NOTIFY bortleScaleIndexChanged)
Q_PROPERTY(bool flagStarMagnitudeLimit READ getFlagStarMagnitudeLimi
t WRITE setFlagStarMagnitudeLimit NOTIFY flagStarMagnitudeLimitChanged)
Q_PROPERTY(bool flagNebulaMagnitudeLimit READ getFlagNebulaMagnitude
Limit WRITE setFlagNebulaMagnitudeLimit NOTIFY flagNebulaMagnitudeLimitChan
ged)
Q_PROPERTY(bool flagPlanetMagnitudeLimit READ getFlagPlanetMagnitude
Limit WRITE setFlagPlanetMagnitudeLimit NOTIFY flagPlanetMagnitudeLimitChan
ged)
Q_PROPERTY(double customStarMagLimit READ getCustomStarMagnitudeLimi
t WRITE setCustomStarMagnitudeLimit NOTIFY customStarMagLimitChanged)
Q_PROPERTY(double customNebulaMagLimit READ getCustomNebulaMagnitude
Limit WRITE setCustomNebulaMagnitudeLimit NOTIFY customNebulaMagLimitChange
d)
Q_PROPERTY(double customPlanetMagLimit READ getCustomPlanetMagnitude
Limit WRITE setCustomPlanetMagnitudeLimit NOTIFY customPlanetMagLimitChange
d)
Q_PROPERTY(bool flagLuminanceAdaptation READ getFlagLuminanceAdaptat
ion WRITE setFlagLuminanceAdaptation NOTIFY flagLuminanceAdaptationChanged)
Q_PROPERTY(double extinctionCoefficient READ getExtinctionCoefficien
t WRITE setExtinctionCoefficient NOTIFY extinctionCoefficientChanged)
Q_PROPERTY(double atmosphereTemperature READ getAtmosphereTemperatur
e WRITE setAtmosphereTemperature NOTIFY atmosphereTemperatureChanged)
Q_PROPERTY(double atmospherePressure READ getAtmospherePressure WRIT
E setAtmospherePressure NOTIFY atmospherePressureChanged)
public: public:
//! Constructor //! Constructor
StelSkyDrawer(StelCore* core); StelSkyDrawer(StelCore* core);
//! Destructor //! Destructor
~StelSkyDrawer(); ~StelSkyDrawer();
//! Init parameters from config file //! Init parameters from config file
void init(); void init();
skipping to change at line 75 skipping to change at line 98
//! Finalize the drawing of point sources //! Finalize the drawing of point sources
void postDrawPointSource(StelPainter* sPainter); void postDrawPointSource(StelPainter* sPainter);
//! Draw a point source halo. //! Draw a point source halo.
//! @param sPainter the StelPainter to use for drawing. //! @param sPainter the StelPainter to use for drawing.
//! @param v the 3d position of the source in J2000 reference frame //! @param v the 3d position of the source in J2000 reference frame
//! @param rcMag the radius and luminance of the source as computed by computeRCMag() //! @param rcMag the radius and luminance of the source as computed by computeRCMag()
//! @param bV the source B-V index //! @param bV the source B-V index
//! @param checkInScreen whether source in screen should be checked to avoid unnecessary drawing. //! @param checkInScreen whether source in screen should be checked to avoid unnecessary drawing.
//! @param twinkleFactor allows height-dependent twinkling. Recommen ded value: min(1,1-0.9*sin(altitude)). Allowed values [0..1]
//! @return true if the source was actually visible and drawn //! @return true if the source was actually visible and drawn
bool drawPointSource(StelPainter* sPainter, const Vec3f& v, const RC Mag &rcMag, unsigned int bV, bool checkInScreen=false) bool drawPointSource(StelPainter* sPainter, const Vec3f& v, const RC Mag &rcMag, unsigned int bV, bool checkInScreen=false, float twinkleFactor= 1.0f)
{ {
return drawPointSource(sPainter, v, rcMag, colorTable[bV], c heckInScreen); return drawPointSource(sPainter, v, rcMag, colorTable[bV], c heckInScreen, twinkleFactor);
} }
bool drawPointSource(StelPainter* sPainter, const Vec3f& v, const RC Mag &rcMag, const Vec3f& bcolor, bool checkInScreen=false); bool drawPointSource(StelPainter* sPainter, const Vec3f& v, const RC Mag &rcMag, const Vec3f& bcolor, bool checkInScreen=false, float twinkleFac tor=1.0f);
void drawSunCorona(StelPainter* painter, const Vec3f& v, float radiu s, const Vec3f& color, const float alpha); void drawSunCorona(StelPainter* painter, const Vec3f& v, float radiu s, const Vec3f& color, const float alpha);
//! Terminate drawing of a 3D model, draw the halo //! Terminate drawing of a 3D model, draw the halo
//! @param p the StelPainter instance to use for this drawing operat ion //! @param p the StelPainter instance to use for this drawing operat ion
//! @param v the 3d position of the source in J2000 reference frame //! @param v the 3d position of the source in J2000 reference frame
//! @param illuminatedArea the illuminated area in arcmin^2 //! @param illuminatedArea the illuminated area in arcmin^2
//! @param mag the source integrated magnitude //! @param mag the source integrated magnitude
//! @param color the object halo RGB color //! @param color the object halo RGB color
void postDrawSky3dModel(StelPainter* p, const Vec3f& v, float illumi natedArea, float mag, const Vec3f& color = Vec3f(1.f,1.f,1.f)); void postDrawSky3dModel(StelPainter* p, const Vec3f& v, float illumi natedArea, float mag, const Vec3f& color = Vec3f(1.f,1.f,1.f));
skipping to change at line 132 skipping to change at line 156
} }
//! Convert quantized B-V index to RGB colors //! Convert quantized B-V index to RGB colors
static inline const Vec3f& indexToColor(unsigned char bV) static inline const Vec3f& indexToColor(unsigned char bV)
{ {
return colorTable[bV]; return colorTable[bV];
} }
public slots: public slots:
//! Set the way brighter stars will look bigger as the fainter ones //! Set the way brighter stars will look bigger as the fainter ones
void setRelativeStarScale(double b=1.0) {starRelativeScale=b;} void setRelativeStarScale(double b=1.0) {if(b!=starRelativeScale){ s tarRelativeScale=b; emit relativeStarScaleChanged(b);}}
//! Get the way brighter stars will look bigger as the fainter ones //! Get the way brighter stars will look bigger as the fainter ones
float getRelativeStarScale() const {return starRelativeScale;} double getRelativeStarScale() const {return starRelativeScale;}
//! Set the absolute star brightness scale //! Set the absolute star brightness scale
void setAbsoluteStarScale(double b=1.0) {starAbsoluteScaleF=b;} void setAbsoluteStarScale(double b=1.0) {if(b!=starAbsoluteScaleF){ starAbsoluteScaleF=b; emit absoluteStarScaleChanged(b);}}
//! Get the absolute star brightness scale //! Get the absolute star brightness scale
float getAbsoluteStarScale() const {return starAbsoluteScaleF;} double getAbsoluteStarScale() const {return starAbsoluteScaleF;}
//! Set source twinkle amount. //! Set source twinkle amount.
void setTwinkleAmount(double b) {twinkleAmount=b;} void setTwinkleAmount(double b) {if(b!=twinkleAmount){ twinkleAmount =b; emit twinkleAmountChanged(b);}}
//! Get source twinkle amount. //! Get source twinkle amount.
float getTwinkleAmount() const {return twinkleAmount;} double getTwinkleAmount() const {return twinkleAmount;}
//! Set flag for source twinkling. //! Set flag for source twinkling.
void setFlagTwinkle(bool b) {flagStarTwinkle=b;} void setFlagTwinkle(bool b) {if(b!=flagStarTwinkle){ flagStarTwinkle =b; emit flagTwinkleChanged(b);}}
//! Get flag for source twinkling. //! Get flag for source twinkling.
bool getFlagTwinkle() const {return flagStarTwinkle;} bool getFlagTwinkle() const {return flagStarTwinkle;}
//! Set the parameters so that the stars disappear at about the limi t given by the bortle scale //! Set the parameters so that the stars disappear at about the limi t given by the bortle scale
//! The limit is valid only at a given zoom level (around 60 deg) //! The limit is valid only at a given zoom level (around 60 deg)
//! See http://en.wikipedia.org/wiki/Bortle_Dark-Sky_Scale //! @see https://en.wikipedia.org/wiki/Bortle_scale
void setBortleScaleIndex(int index); void setBortleScaleIndex(int index);
//! Get the current Bortle scale index //! Get the current Bortle scale index
//! @see https://en.wikipedia.org/wiki/Bortle_scale
int getBortleScaleIndex() const {return bortleScaleIndex;} int getBortleScaleIndex() const {return bortleScaleIndex;}
//! Get the magnitude of the currently faintest visible point source //! Get the magnitude of the currently faintest visible point source
//! It depends on the zoom level, on the eye adapation and on the po int source rendering parameters //! It depends on the zoom level, on the eye adapation and on the po int source rendering parameters
//! @return the limit V mag at which a point source will be displaye d //! @return the limit V mag at which a point source will be displaye d
float getLimitMagnitude() const {return limitMagnitude;} float getLimitMagnitude() const {return limitMagnitude;}
//! Toggle the application of user-defined star magnitude limit. //! Toggle the application of user-defined star magnitude limit.
//! If enabled, stars fainter than the magnitude set with //! If enabled, stars fainter than the magnitude set with
//! setCustomStarMagnitudeLimit() will not be displayed. //! setCustomStarMagnitudeLimit() will not be displayed.
// FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M // FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M
void setFlagStarMagnitudeLimit(bool b) {flagStarMagnitudeLimit = b;} void setFlagStarMagnitudeLimit(bool b) {if(b!=flagStarMagnitudeLimit ){ flagStarMagnitudeLimit = b; emit flagStarMagnitudeLimitChanged(b);}}
//! @return true if the user-defined star magnitude limit is in forc e. //! @return true if the user-defined star magnitude limit is in forc e.
bool getFlagStarMagnitudeLimit() const {return flagStarMagnitudeLimi t;} bool getFlagStarMagnitudeLimit() const {return flagStarMagnitudeLimi t;}
//! Toggle the application of user-defined deep-sky object magnitude limit. //! Toggle the application of user-defined deep-sky object magnitude limit.
//! If enabled, deep-sky objects fainter than the magnitude set with //! If enabled, deep-sky objects fainter than the magnitude set with
//! setCustomNebulaMagnitudeLimit() will not be displayed. //! setCustomNebulaMagnitudeLimit() will not be displayed.
// FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M // FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M
void setFlagNebulaMagnitudeLimit(bool b) {flagNebulaMagnitudeLimit = b;} void setFlagNebulaMagnitudeLimit(bool b) {if(b!=flagNebulaMagnitudeL imit){ flagNebulaMagnitudeLimit = b; emit flagNebulaMagnitudeLimitChanged(b );}}
//! @return true if the user-defined nebula magnitude limit is in fo rce. //! @return true if the user-defined nebula magnitude limit is in fo rce.
bool getFlagNebulaMagnitudeLimit() const {return flagNebulaMagnitude Limit;} bool getFlagNebulaMagnitudeLimit() const {return flagNebulaMagnitude Limit;}
//! Toggle the application of user-defined solar system object magni tude limit. //! Toggle the application of user-defined solar system object magni tude limit.
//! If enabled, planets, planetary moons, asteroids (KBO, ...) and c omets fainter than the magnitude set with //! If enabled, planets, planetary moons, asteroids (KBO, ...) and c omets fainter than the magnitude set with
//! setCustomPlanetMagnitudeLimit() will not be displayed. //! setCustomPlanetMagnitudeLimit() will not be displayed.
// FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M --- GZ: this was copy/paste. Track down BM's changes!!! // FIXME: Exposed to scripts - make sure it synchs with the GUI. --B M --- GZ: this was copy/paste. Track down BM's changes!!!
void setFlagPlanetMagnitudeLimit(bool b) {flagPlanetMagnitudeLimit = b;} void setFlagPlanetMagnitudeLimit(bool b) {if(b!=flagPlanetMagnitudeL imit){ flagPlanetMagnitudeLimit = b; emit flagPlanetMagnitudeLimitChanged(b );}}
//! @return true if the user-defined nebula magnitude limit is in fo rce. //! @return true if the user-defined nebula magnitude limit is in fo rce.
bool getFlagPlanetMagnitudeLimit() const {return flagPlanetMagnitude Limit;} bool getFlagPlanetMagnitudeLimit() const {return flagPlanetMagnitude Limit;}
//! Get the value used for forced star magnitude limiting. //! Get the value used for forced star magnitude limiting.
float getCustomStarMagnitudeLimit() const {return customStarMagLimit ;} double getCustomStarMagnitudeLimit() const {return customStarMagLimi t;}
//! Sets a lower limit for star magnitudes (anything fainter is igno red). //! Sets a lower limit for star magnitudes (anything fainter is igno red).
//! In force only if flagStarMagnitudeLimit is set. //! In force only if flagStarMagnitudeLimit is set.
void setCustomStarMagnitudeLimit(double limit) {customStarMagLimit=l imit;} void setCustomStarMagnitudeLimit(double limit) {if(limit!=customStar MagLimit){ customStarMagLimit=limit; emit customStarMagLimitChanged(limit); }}
//! Get the value used for forced nebula magnitude limiting. //! Get the value used for forced nebula magnitude limiting.
float getCustomNebulaMagnitudeLimit() const {return customNebulaMagL imit;} double getCustomNebulaMagnitudeLimit() const {return customNebulaMag Limit;}
//! Sets a lower limit for nebula magnitudes (anything fainter is ig nored). //! Sets a lower limit for nebula magnitudes (anything fainter is ig nored).
//! In force only if flagNebulaMagnitudeLimit is set. //! In force only if flagNebulaMagnitudeLimit is set.
void setCustomNebulaMagnitudeLimit(double limit) {customNebulaMagLim it=limit;} void setCustomNebulaMagnitudeLimit(double limit) {if(limit!=customNe bulaMagLimit){ customNebulaMagLimit=limit; emit customNebulaMagLimitChanged (limit);}}
//! Get the value used for forced solar system object magnitude limi ting. //! Get the value used for forced solar system object magnitude limi ting.
float getCustomPlanetMagnitudeLimit() const {return customPlanetMagL imit;} double getCustomPlanetMagnitudeLimit() const {return customPlanetMag Limit;}
//! Sets a lower limit for solar system object magnitudes (anything fainter is ignored). //! Sets a lower limit for solar system object magnitudes (anything fainter is ignored).
//! In force only if flagPlanetMagnitudeLimit is set. //! In force only if flagPlanetMagnitudeLimit is set.
void setCustomPlanetMagnitudeLimit(double limit) {customPlanetMagLim it=limit;} void setCustomPlanetMagnitudeLimit(double limit) {if(limit!=customPl anetMagLimit){ customPlanetMagLimit=limit; emit customPlanetMagLimitChanged (limit);}}
//! Get the luminance of the faintest visible object (e.g. RGB<0.05) //! Get the luminance of the faintest visible object (e.g. RGB<0.05)
//! It depends on the zoom level, on the eye adapation and on the po int source rendering parameters //! It depends on the zoom level, on the eye adapation and on the po int source rendering parameters
//! @return the limit V luminance at which an object will be visible //! @return the limit V luminance at which an object will be visible
float getLimitLuminance() const {return limitLuminance;} float getLimitLuminance() const {return limitLuminance;}
//! Set the value of the eye adaptation flag //! Set the value of the eye adaptation flag
void setFlagLuminanceAdaptation(bool b) {flagLuminanceAdaptation=b;} void setFlagLuminanceAdaptation(bool b) {if(b!=flagLuminanceAdaptati on){ flagLuminanceAdaptation=b; emit flagLuminanceAdaptationChanged(b);}}
//! Get the current value of eye adaptation flag //! Get the current value of eye adaptation flag
bool getFlagLuminanceAdaptation() const {return flagLuminanceAdaptat ion;} bool getFlagLuminanceAdaptation() const {return flagLuminanceAdaptat ion;}
//! Informing the drawer whether atmosphere is displayed. //! Informing the drawer whether atmosphere is displayed.
//! This is used to avoid twinkling/simulate extinction/refraction. //! This is used to avoid twinkling/simulate extinction/refraction.
void setFlagHasAtmosphere(bool b) {flagHasAtmosphere=b;} void setFlagHasAtmosphere(bool b) {flagHasAtmosphere=b;}
//! This is used to decide whether to apply refraction/extinction be fore rendering point sources et al. //! This is used to decide whether to apply refraction/extinction be fore rendering point sources et al.
bool getFlagHasAtmosphere() const {return flagHasAtmosphere;} bool getFlagHasAtmosphere() const {return flagHasAtmosphere;}
//! Set extinction coefficient, mag/airmass (for extinction). //! Set extinction coefficient, mag/airmass (for extinction).
void setExtinctionCoefficient(double extCoeff) {extinction.setExtinc tionCoefficient(extCoeff);} void setExtinctionCoefficient(double extCoeff) {if(extCoeff!=extinct ion.getExtinctionCoefficient()){ extinction.setExtinctionCoefficient(extCoe ff); emit extinctionCoefficientChanged(extinction.getExtinctionCoefficient( ));}}
//! Get extinction coefficient, mag/airmass (for extinction). //! Get extinction coefficient, mag/airmass (for extinction).
double getExtinctionCoefficient() const {return extinction.getExtinc tionCoefficient();} double getExtinctionCoefficient() const {return extinction.getExtinc tionCoefficient();}
//! Set atmospheric (ground) temperature in deg celsius (for refract ion). //! Set atmospheric (ground) temperature in deg celsius (for refract ion).
void setAtmosphereTemperature(double celsius) {refraction.setTempera ture(celsius);} void setAtmosphereTemperature(double celsius) {if(celsius!=refractio n.getTemperature()){refraction.setTemperature(celsius); emit atmosphereTemp eratureChanged(refraction.getTemperature());}}
//! Get atmospheric (ground) temperature in deg celsius (for refract ion). //! Get atmospheric (ground) temperature in deg celsius (for refract ion).
double getAtmosphereTemperature() const {return refraction.getTemper ature();} double getAtmosphereTemperature() const {return refraction.getTemper ature();}
//! Set atmospheric (ground) pressure in mbar (for refraction). //! Set atmospheric (ground) pressure in mbar (for refraction).
void setAtmospherePressure(double mbar) {refraction.setPressure(mbar );} void setAtmospherePressure(double mbar) {if(mbar!=refraction.getPres sure()){ refraction.setPressure(mbar); emit atmospherePressureChanged(refra ction.getPressure());}}
//! Get atmospheric (ground) pressure in mbar (for refraction). //! Get atmospheric (ground) pressure in mbar (for refraction).
double getAtmospherePressure() const {return refraction.getPressure( );} double getAtmospherePressure() const {return refraction.getPressure( );}
//! Get the current valid extinction computation object. //! Get the current valid extinction computation object.
const Extinction& getExtinction() const {return extinction;} const Extinction& getExtinction() const {return extinction;}
//! Get the current valid refraction computation object. //! Get the current valid refraction computation object.
const Refraction& getRefraction() const {return refraction;} const Refraction& getRefraction() const {return refraction;}
//! Get the radius of the big halo texture used when a 3d model is v ery bright. //! Get the radius of the big halo texture used when a 3d model is v ery bright.
float getBig3dModelHaloRadius() const {return big3dModelHaloRadius;} float getBig3dModelHaloRadius() const {return big3dModelHaloRadius;}
//! Set the radius of the big halo texture used when a 3d model is v ery bright. //! Set the radius of the big halo texture used when a 3d model is v ery bright.
void setBig3dModelHaloRadius(float r) {big3dModelHaloRadius=r;} void setBig3dModelHaloRadius(float r) {big3dModelHaloRadius=r;}
signals:
//! Emitted whenever the relative star scale changed
void relativeStarScaleChanged(double b);
//! Emitted whenever the absolute star scale changed
void absoluteStarScaleChanged(double b);
//! Emitted whenever the twinkle amount changed
void twinkleAmountChanged(double b);
//! Emitted whenever the twinkle flag is toggled
void flagTwinkleChanged(bool b);
//! Emitted whenever the Bortle scale index changed
void bortleScaleIndexChanged(int index);
//! Emitted whenever the star magnitude limit flag is toggled
void flagStarMagnitudeLimitChanged(bool b);
//! Emitted whenever the nebula magnitude limit flag is toggled
void flagNebulaMagnitudeLimitChanged(bool b);
//! Emitted whenever the planet magnitude limit flag is toggled
void flagPlanetMagnitudeLimitChanged(bool b);
//! Emitted whenever the star magnitude limit changed
void customStarMagLimitChanged(double limit);
//! Emitted whenever the nebula magnitude limit changed
void customNebulaMagLimitChanged(double limit);
//! Emitted whenever the planet magnitude limit changed
void customPlanetMagLimitChanged(double limit);
//! Emitted whenever the luminance adaptation flag is toggled
void flagLuminanceAdaptationChanged(bool b);
void extinctionCoefficientChanged(double coeff);
void atmosphereTemperatureChanged(double celsius);
void atmospherePressureChanged(double mbar);
private: private:
// Debug // Debug
float reverseComputeRCMag(float rmag) const; float reverseComputeRCMag(float rmag) const;
//! Compute the current limit magnitude by dichotomy //! Compute the current limit magnitude by dichotomy
float computeLimitMagnitude() const; float computeLimitMagnitude() const;
//! Compute the current limit luminance by dichotomy //! Compute the current limit luminance by dichotomy
float computeLimitLuminance() const; float computeLimitLuminance() const;
skipping to change at line 298 skipping to change at line 355
float findWorldLumForMag(float mag, float targetRadius); float findWorldLumForMag(float mag, float targetRadius);
StelCore* core; StelCore* core;
StelToneReproducer* eye; StelToneReproducer* eye;
Extinction extinction; Extinction extinction;
Refraction refraction; Refraction refraction;
float maxAdaptFov, minAdaptFov, lnfovFactor; float maxAdaptFov, minAdaptFov, lnfovFactor;
bool flagStarTwinkle; bool flagStarTwinkle;
float twinkleAmount; double twinkleAmount;
//! Informing the drawer whether atmosphere is displayed. //! Informing the drawer whether atmosphere is displayed.
//! This is used to avoid twinkling/simulate extinction/refraction. //! This is used to avoid twinkling/simulate extinction/refraction.
bool flagHasAtmosphere; bool flagHasAtmosphere;
//! Controls the application of the user-defined star magnitude limi t. //! Controls the application of the user-defined star magnitude limi t.
//! @see customStarMagnitudeLimit //! @see customStarMagnitudeLimit
bool flagStarMagnitudeLimit; bool flagStarMagnitudeLimit;
//! Controls the application of the user-defined nebula magnitude li mit. //! Controls the application of the user-defined nebula magnitude li mit.
//! @see customNebulaMagnitudeLimit //! @see customNebulaMagnitudeLimit
bool flagNebulaMagnitudeLimit; bool flagNebulaMagnitudeLimit;
//! Controls the application of the user-defined planet magnitude li mit. //! Controls the application of the user-defined planet magnitude li mit.
//! @see customPlanetMagnitudeLimit //! @see customPlanetMagnitudeLimit
bool flagPlanetMagnitudeLimit; bool flagPlanetMagnitudeLimit;
float starRelativeScale; double starRelativeScale;
float starAbsoluteScaleF; double starAbsoluteScaleF;
float starLinearScale; // optimization variable float starLinearScale; // optimization variable
//! Current magnitude limit for point sources //! Current magnitude limit for point sources
float limitMagnitude; float limitMagnitude;
//! Current magnitude luminance //! Current magnitude luminance
float limitLuminance; float limitLuminance;
//! User-defined magnitude limit for stars. //! User-defined magnitude limit for stars.
//! Interpreted as a lower limit - stars fainter than this value wil l not //! Interpreted as a lower limit - stars fainter than this value wil l not
//! be displayed. //! be displayed.
//! Used if flagStarMagnitudeLimit is true. //! Used if flagStarMagnitudeLimit is true.
float customStarMagLimit; double customStarMagLimit;
//! User-defined magnitude limit for deep-sky objects. //! User-defined magnitude limit for deep-sky objects.
//! Interpreted as a lower limit - nebulae fainter than this value w ill not //! Interpreted as a lower limit - nebulae fainter than this value w ill not
//! be displayed. //! be displayed.
//! Used if flagNebulaMagnitudeLimit is true. //! Used if flagNebulaMagnitudeLimit is true.
//! @todo Why the asterisks this is not in NebulaMgr? --BM //! @todo Why the asterisks this is not in NebulaMgr? --BM
// GZ To explain: we have 3 limits for stars, nebulae, planets. It' s easier to maintain the pretty similar code in 1 place. // GZ To explain: we have 3 limits for stars, nebulae, planets. It' s easier to maintain the pretty similar code in 1 place.
float customNebulaMagLimit; double customNebulaMagLimit;
//! User-defined magnitude limit for solar system objects. //! User-defined magnitude limit for solar system objects.
//! Interpreted as a lower limit - planets fainter than this value w ill not //! Interpreted as a lower limit - planets fainter than this value w ill not
//! be displayed. //! be displayed.
//! Used if flagPlanetMagnitudeLimit is true. //! Used if flagPlanetMagnitudeLimit is true.
float customPlanetMagLimit; double customPlanetMagLimit;
//! Little halo texture //! Little halo texture
StelTextureSP texHalo; StelTextureSP texHalo;
//! Load B-V conversion parameters from config file //! Load B-V conversion parameters from config file
void initColorTableFromConfigFile(class QSettings* conf); void initColorTableFromConfigFile(class QSettings* conf);
//! Contains the list of colors matching a given B-V index //! Contains the list of colors matching a given B-V index
static Vec3f colorTable[128]; static Vec3f colorTable[128];
 End of changes. 33 change blocks. 
30 lines changed or deleted 106 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/