GridLinesMgr.cpp   GridLinesMgr.cpp 
skipping to change at line 79 skipping to change at line 79
enum SKY_POINT_TYPE enum SKY_POINT_TYPE
{ {
CELESTIALPOLES_J2000, CELESTIALPOLES_J2000,
CELESTIALPOLES_OF_DATE, CELESTIALPOLES_OF_DATE,
ZENITH_NADIR, ZENITH_NADIR,
ECLIPTICPOLES_J2000, ECLIPTICPOLES_J2000,
ECLIPTICPOLES_OF_DATE, ECLIPTICPOLES_OF_DATE,
GALACTICPOLES, GALACTICPOLES,
SUPERGALACTICPOLES, SUPERGALACTICPOLES,
EQUINOXES_J2000, EQUINOXES_J2000,
EQUINOXES_OF_DATE EQUINOXES_OF_DATE,
SOLSTICES_J2000,
SOLSTICES_OF_DATE
}; };
// Create and precompute positions of a SkyGrid // Create and precompute positions of a SkyGrid
SkyPoint(SKY_POINT_TYPE _point_type = CELESTIALPOLES_J2000); SkyPoint(SKY_POINT_TYPE _point_type = CELESTIALPOLES_J2000);
virtual ~SkyPoint(); virtual ~SkyPoint();
void draw(StelCore* core) const; void draw(StelCore* core) const;
void setColor(const Vec3f& c) {color = c;} void setColor(const Vec3f& c) {color = c;}
const Vec3f& getColor() {return color;} const Vec3f& getColor() {return color;}
void update(double deltaTime) {fader.update((int)(deltaTime*1000));} void update(double deltaTime) {fader.update((int)(deltaTime*1000));}
void setFadeDuration(float duration) {fader.setDuration((int)(durati on*1000.f));} void setFadeDuration(float duration) {fader.setDuration((int)(durati on*1000.f));}
void setDisplayed(const bool displayed){fader = displayed;} void setDisplayed(const bool displayed){fader = displayed;}
skipping to change at line 355 skipping to change at line 357
double angleDeg = std::atan2(-direc[1], -direc[0])*180./M_PI; double angleDeg = std::atan2(-direc[1], -direc[0])*180./M_PI;
float xshift=6.f; float xshift=6.f;
if (angleDeg>90. || angleDeg<-90.) if (angleDeg>90. || angleDeg<-90.)
{ {
angleDeg+=180.; angleDeg+=180.;
xshift=-d->sPainter->getFontMetrics().width(text)-6.f; xshift=-d->sPainter->getFontMetrics().width(text)-6.f;
} }
d->sPainter->drawText(screenPos[0], screenPos[1], text, angleDeg, xs hift, 3); d->sPainter->drawText(screenPos[0], screenPos[1], text, angleDeg, xs hift, 3);
d->sPainter->setColor(tmpColor[0], tmpColor[1], tmpColor[2], tmpColo r[3]); d->sPainter->setColor(tmpColor[0], tmpColor[1], tmpColor[2], tmpColo r[3]);
glDisable(GL_TEXTURE_2D); d->sPainter->setBlending(true);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
} }
//! Draw the sky grid in the current frame //! Draw the sky grid in the current frame
void SkyGrid::draw(const StelCore* core) const void SkyGrid::draw(const StelCore* core) const
{ {
const StelProjectorP prj = core->getProjection(frameType, frameType! =StelCore::FrameAltAz ? StelCore::RefractionAuto : StelCore::RefractionOff) ; const StelProjectorP prj = core->getProjection(frameType, frameType! =StelCore::FrameAltAz ? StelCore::RefractionAuto : StelCore::RefractionOff) ;
if (!fader.getInterstate()) if (!fader.getInterstate())
return; return;
bool withDecimalDegree = StelApp::getInstance().getFlagShowDecimalDe grees();; bool withDecimalDegree = StelApp::getInstance().getFlagShowDecimalDe grees();;
skipping to change at line 409 skipping to change at line 409
lon2 = gridStepMeridianRad*((int)(lon2/gridStepMeridianRad+0.5)); lon2 = gridStepMeridianRad*((int)(lon2/gridStepMeridianRad+0.5));
lat2 = gridStepParallelRad*((int)(lat2/gridStepParallelRad+0.5)); lat2 = gridStepParallelRad*((int)(lat2/gridStepParallelRad+0.5));
Vec3d firstPoint; Vec3d firstPoint;
StelUtils::spheToRect(lon2, lat2, firstPoint); StelUtils::spheToRect(lon2, lat2, firstPoint);
firstPoint.normalize(); firstPoint.normalize();
// Q_ASSERT(viewPortSphericalCap.contains(firstPoint)); // Q_ASSERT(viewPortSphericalCap.contains(firstPoint));
// Initialize a painter and set OpenGL state // Initialize a painter and set OpenGL state
StelPainter sPainter(prj); StelPainter sPainter(prj);
glEnable(GL_BLEND); sPainter.setBlending(true);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); // Normal transpa sPainter.setLineSmooth(true);
rency mode
// OpenGL ES 2.0 doesn't have GL_LINE_SMOOTH
#ifdef GL_LINE_SMOOTH
if (QOpenGLContext::currentContext()->format().renderableType()==QSu
rfaceFormat::OpenGL)
glEnable(GL_LINE_SMOOTH);
#endif
// make text colors just a bit brighter. (But if >1, QColor::setRgb fails and makes text invisible.) // make text colors just a bit brighter. (But if >1, QColor::setRgb fails and makes text invisible.)
Vec4f textColor(qMin(1.0f, 1.25f*color[0]), qMin(1.0f, 1.25f*color[1 ]), qMin(1.0f, 1.25f*color[2]), fader.getInterstate()); Vec4f textColor(qMin(1.0f, 1.25f*color[0]), qMin(1.0f, 1.25f*color[1 ]), qMin(1.0f, 1.25f*color[2]), fader.getInterstate());
sPainter.setColor(color[0],color[1],color[2], fader.getInterstate()) ; sPainter.setColor(color[0],color[1],color[2], fader.getInterstate()) ;
sPainter.setFont(font); sPainter.setFont(font);
ViewportEdgeIntersectCallbackData userData(&sPainter); ViewportEdgeIntersectCallbackData userData(&sPainter);
userData.textColor = textColor; userData.textColor = textColor;
userData.frameType = frameType; userData.frameType = frameType;
skipping to change at line 612 skipping to change at line 607
middlePoint*=-1.; middlePoint*=-1.;
middlePoint+=rotCenter; middlePoint+=rotCenter;
} }
sPainter.drawSmallCircleArc(p1, middlePoint, rotCent er, viewportEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(p1, middlePoint, rotCent er, viewportEdgeIntersectCallback, &userData);
sPainter.drawSmallCircleArc(p2, middlePoint, rotCent er, viewportEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(p2, middlePoint, rotCent er, viewportEdgeIntersectCallback, &userData);
fpt.transfo4d(rotLon); fpt.transfo4d(rotLon);
} }
} }
// OpenGL ES 2.0 doesn't have GL_LINE_SMOOTH
#ifdef GL_LINE_SMOOTH sPainter.setLineSmooth(false);
if (QOpenGLContext::currentContext()->format().renderableType()==QSu
rfaceFormat::OpenGL)
glDisable(GL_LINE_SMOOTH);
#endif
} }
SkyLine::SkyLine(SKY_LINE_TYPE _line_type) : line_type(_line_type), color(0 .f, 0.f, 1.f) SkyLine::SkyLine(SKY_LINE_TYPE _line_type) : line_type(_line_type), color(0 .f, 0.f, 1.f)
{ {
// Font size is 14 // Font size is 14
font.setPixelSize(StelApp::getInstance().getBaseFontSize()+1); font.setPixelSize(StelApp::getInstance().getBaseFontSize()+1);
updateLabel(); updateLabel();
} }
skipping to change at line 717 skipping to change at line 709
return; return;
StelProjectorP prj = core->getProjection(frameType, frameType!=StelC ore::FrameAltAz ? StelCore::RefractionAuto : StelCore::RefractionOff); StelProjectorP prj = core->getProjection(frameType, frameType!=StelC ore::FrameAltAz ? StelCore::RefractionAuto : StelCore::RefractionOff);
// Get the bounding halfspace // Get the bounding halfspace
const SphericalCap& viewPortSphericalCap = prj->getBoundingCap(); const SphericalCap& viewPortSphericalCap = prj->getBoundingCap();
// Initialize a painter and set openGL state // Initialize a painter and set openGL state
StelPainter sPainter(prj); StelPainter sPainter(prj);
sPainter.setColor(color[0], color[1], color[2], fader.getInterstate( )); sPainter.setColor(color[0], color[1], color[2], fader.getInterstate( ));
glEnable(GL_BLEND); sPainter.setBlending(true);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); // Normal transpa sPainter.setLineSmooth(true);
rency mode
#ifdef GL_LINE_SMOOTH
if (QOpenGLContext::currentContext()->format().renderableType()==QSu
rfaceFormat::OpenGL)
glEnable(GL_LINE_SMOOTH);
#endif
Vec4f textColor(color[0], color[1], color[2], 0); Vec4f textColor(color[0], color[1], color[2], 0);
textColor[3]=fader.getInterstate(); textColor[3]=fader.getInterstate();
ViewportEdgeIntersectCallbackData userData(&sPainter); ViewportEdgeIntersectCallbackData userData(&sPainter);
sPainter.setFont(font); sPainter.setFont(font);
userData.textColor = textColor; userData.textColor = textColor;
userData.text = label; userData.text = label;
///////////////////////////////////////////////// /////////////////////////////////////////////////
// Draw the line // Draw the line
skipping to change at line 776 skipping to change at line 765
const double lon1=0.0; const double lon1=0.0;
const double lon2=120.0*M_PI/180.0; const double lon2=120.0*M_PI/180.0;
const double lon3=240.0*M_PI/180.0; const double lon3=240.0*M_PI/180.0;
StelUtils::spheToRect(lon1, lat, pt1); pt1.n ormalize(); StelUtils::spheToRect(lon1, lat, pt1); pt1.n ormalize();
StelUtils::spheToRect(lon2, lat, pt2); pt2.n ormalize(); StelUtils::spheToRect(lon2, lat, pt2); pt2.n ormalize();
StelUtils::spheToRect(lon3, lat, pt3); pt3.n ormalize(); StelUtils::spheToRect(lon3, lat, pt3); pt3.n ormalize();
sPainter.drawSmallCircleArc(pt1, pt2, rotCen ter, viewportEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(pt1, pt2, rotCen ter, viewportEdgeIntersectCallback, &userData);
sPainter.drawSmallCircleArc(pt2, pt3, rotCen ter, viewportEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(pt2, pt3, rotCen ter, viewportEdgeIntersectCallback, &userData);
sPainter.drawSmallCircleArc(pt3, pt1, rotCen ter, viewportEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(pt3, pt1, rotCen ter, viewportEdgeIntersectCallback, &userData);
#ifdef GL_LINE_SMOOTH
if (QOpenGLContext::currentContext()->format
().renderableType()==QSurfaceFormat::OpenGL)
glDisable(GL_LINE_SMOOTH);
#endif
glDisable(GL_BLEND);
return;
}
else
{
#ifdef GL_LINE_SMOOTH
if (QOpenGLContext::currentContext()->format
().renderableType()==QSurfaceFormat::OpenGL)
glDisable(GL_LINE_SMOOTH);
#endif
glDisable(GL_BLEND);
return;
} }
sPainter.setLineSmooth(false);
sPainter.setBlending(false);
return;
} }
// Draw the arc in 2 sub-arcs to avoid lengths > 180 deg // Draw the arc in 2 sub-arcs to avoid lengths > 180 deg
Vec3d middlePoint = p1-rotCenter+p2-rotCenter; Vec3d middlePoint = p1-rotCenter+p2-rotCenter;
middlePoint.normalize(); middlePoint.normalize();
middlePoint*=(p1-rotCenter).length(); middlePoint*=(p1-rotCenter).length();
middlePoint+=rotCenter; middlePoint+=rotCenter;
if (!viewPortSphericalCap.contains(middlePoint)) if (!viewPortSphericalCap.contains(middlePoint))
{ {
middlePoint-=rotCenter; middlePoint-=rotCenter;
middlePoint*=-1.; middlePoint*=-1.;
middlePoint+=rotCenter; middlePoint+=rotCenter;
} }
sPainter.drawSmallCircleArc(p1, middlePoint, rotCenter,viewp ortEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(p1, middlePoint, rotCenter,viewp ortEdgeIntersectCallback, &userData);
sPainter.drawSmallCircleArc(p2, middlePoint, rotCenter, view portEdgeIntersectCallback, &userData); sPainter.drawSmallCircleArc(p2, middlePoint, rotCenter, view portEdgeIntersectCallback, &userData);
// OpenGL ES 2.0 doesn't have GL_LINE_SMOOTH sPainter.setLineSmooth(false);
#ifdef GL_LINE_SMOOTH sPainter.setBlending(false);
if (QOpenGLContext::currentContext()->format().renderableTyp
e()==QSurfaceFormat::OpenGL)
glDisable(GL_LINE_SMOOTH);
#endif
glDisable(GL_BLEND);
return; return;
} }
// All the other "lines" are Great Circles // All the other "lines" are Great Circles
SphericalCap meridianSphericalCap(Vec3d(0,0,1), 0); SphericalCap meridianSphericalCap(Vec3d(0,0,1), 0);
Vec3d fpt(1,0,0); Vec3d fpt(1,0,0);
if ((line_type==MERIDIAN) || (line_type==COLURE_1)) if ((line_type==MERIDIAN) || (line_type==COLURE_1))
{ {
meridianSphericalCap.n.set(0,1,0); meridianSphericalCap.n.set(0,1,0);
skipping to change at line 871 skipping to change at line 844
Vec3d middlePoint = p1+p2; Vec3d middlePoint = p1+p2;
middlePoint.normalize(); middlePoint.normalize();
if (!viewPortSphericalCap.contains(middlePoint)) if (!viewPortSphericalCap.contains(middlePoint))
middlePoint*=-1.; middlePoint*=-1.;
// Draw the arc in 2 sub-arcs to avoid lengths > 180 deg // Draw the arc in 2 sub-arcs to avoid lengths > 180 deg
sPainter.drawGreatCircleArc(p1, middlePoint, NULL, viewportEdgeInter sectCallback, &userData); sPainter.drawGreatCircleArc(p1, middlePoint, NULL, viewportEdgeInter sectCallback, &userData);
sPainter.drawGreatCircleArc(p2, middlePoint, NULL, viewportEdgeInter sectCallback, &userData); sPainter.drawGreatCircleArc(p2, middlePoint, NULL, viewportEdgeInter sectCallback, &userData);
// OpenGL ES 2.0 doesn't have GL_LINE_SMOOTH sPainter.setLineSmooth(false);
#ifdef GL_LINE_SMOOTH sPainter.setBlending(false);
if (QOpenGLContext::currentContext()->format().renderableType()==QSu
rfaceFormat::OpenGL)
glDisable(GL_LINE_SMOOTH);
#endif
glDisable(GL_BLEND);
// // Johannes: use a big radius as a dirty workaround for the bug that the // // Johannes: use a big radius as a dirty workaround for the bug that the
// // ecliptic line is not drawn around the observer, but around the su n: // // ecliptic line is not drawn around the observer, but around the su n:
// const Vec3d vv(1000000,0,0); // const Vec3d vv(1000000,0,0);
} }
SkyPoint::SkyPoint(SKY_POINT_TYPE _point_type) : point_type(_point_type), c olor(0.f, 0.f, 1.f) SkyPoint::SkyPoint(SKY_POINT_TYPE _point_type) : point_type(_point_type), c olor(0.f, 0.f, 1.f)
{ {
// Font size is 14 // Font size is 14
skipping to change at line 984 skipping to change at line 952
southernLabel = QChar(0x264E); // Autumnal equinox southernLabel = QChar(0x264E); // Autumnal equinox
break; break;
} }
case EQUINOXES_OF_DATE: case EQUINOXES_OF_DATE:
{ {
frameType = StelCore::FrameEquinoxEqu; frameType = StelCore::FrameEquinoxEqu;
northernLabel = QChar(0x2648); // Vernal equinox northernLabel = QChar(0x2648); // Vernal equinox
southernLabel = QChar(0x264E); // Autumnal equinox southernLabel = QChar(0x264E); // Autumnal equinox
break; break;
} }
case SOLSTICES_J2000:
{
frameType = StelCore::FrameObservercentricEclipticJ2
000;
northernLabel = QChar(0x264B); // Summer solstice
southernLabel = QChar(0x2651); // Winter solstice
break;
}
case SOLSTICES_OF_DATE:
{
frameType = StelCore::FrameObservercentricEclipticOf
Date;
northernLabel = QChar(0x264B); // Summer solstice
southernLabel = QChar(0x2651); // Winter solstice
break;
}
default: default:
Q_ASSERT(0); Q_ASSERT(0);
} }
} }
void SkyPoint::draw(StelCore *core) const void SkyPoint::draw(StelCore *core) const
{ {
if (!fader.getInterstate()) if (!fader.getInterstate())
return; return;
skipping to change at line 1010 skipping to change at line 992
textColor[3]=fader.getInterstate(); textColor[3]=fader.getInterstate();
sPainter.setFont(font); sPainter.setFont(font);
///////////////////////////////////////////////// /////////////////////////////////////////////////
// Draw the point // Draw the point
texCross->bind(); texCross->bind();
float size = 0.00001*M_PI/180.*sPainter.getProjector()->getPixelPerR adAtCenter(); float size = 0.00001*M_PI/180.*sPainter.getProjector()->getPixelPerR adAtCenter();
float shift = 4.f + size/1.8f; float shift = 4.f + size/1.8f;
sPainter.setBlending(true, GL_ONE, GL_ONE);
switch (point_type) switch (point_type)
{ {
case CELESTIALPOLES_J2000: case CELESTIALPOLES_J2000:
case CELESTIALPOLES_OF_DATE: case CELESTIALPOLES_OF_DATE:
case ZENITH_NADIR: case ZENITH_NADIR:
case ECLIPTICPOLES_J2000: case ECLIPTICPOLES_J2000:
case ECLIPTICPOLES_OF_DATE: case ECLIPTICPOLES_OF_DATE:
case GALACTICPOLES: case GALACTICPOLES:
case SUPERGALACTICPOLES: case SUPERGALACTICPOLES:
{ {
// North Pole // North Pole
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
sPainter.drawSprite2dMode(Vec3d(0,0,1), 5.f); sPainter.drawSprite2dMode(Vec3d(0,0,1), 5.f);
sPainter.drawText(Vec3d(0,0,1), northernLabel, 0, sh ift, shift, false); sPainter.drawText(Vec3d(0,0,1), northernLabel, 0, sh ift, shift, false);
// South Pole // South Pole
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
sPainter.drawSprite2dMode(Vec3d(0,0,-1), 5.f); sPainter.drawSprite2dMode(Vec3d(0,0,-1), 5.f);
sPainter.drawText(Vec3d(0,0,-1), southernLabel, 0, s hift, shift, false); sPainter.drawText(Vec3d(0,0,-1), southernLabel, 0, s hift, shift, false);
break; break;
} }
case EQUINOXES_J2000: case EQUINOXES_J2000:
case EQUINOXES_OF_DATE: case EQUINOXES_OF_DATE:
{ {
// Vernal equinox // Vernal equinox
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
sPainter.drawSprite2dMode(Vec3d(1,0,0), 5.f); sPainter.drawSprite2dMode(Vec3d(1,0,0), 5.f);
sPainter.drawText(Vec3d(1,0,0), northernLabel, 0, sh ift, shift, false); sPainter.drawText(Vec3d(1,0,0), northernLabel, 0, sh ift, shift, false);
// Autumnal equinox // Autumnal equinox
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
sPainter.drawSprite2dMode(Vec3d(-1,0,0), 5.f); sPainter.drawSprite2dMode(Vec3d(-1,0,0), 5.f);
sPainter.drawText(Vec3d(-1,0,0), southernLabel, 0, s hift, shift, false); sPainter.drawText(Vec3d(-1,0,0), southernLabel, 0, s hift, shift, false);
break; break;
} }
case SOLSTICES_J2000:
case SOLSTICES_OF_DATE:
{
// Summer solstice
sPainter.drawSprite2dMode(Vec3d(0,1,0), 5.f);
sPainter.drawText(Vec3d(0,1,0), northernLabel, 0, sh
ift, shift, false);
// Winter solstice
sPainter.drawSprite2dMode(Vec3d(0,-1,0), 5.f);
sPainter.drawText(Vec3d(0,-1,0), southernLabel, 0, s
hift, shift, false);
break;
}
default: default:
Q_ASSERT(0); Q_ASSERT(0);
} }
} }
GridLinesMgr::GridLinesMgr() GridLinesMgr::GridLinesMgr()
{ {
setObjectName("GridLinesMgr"); setObjectName("GridLinesMgr");
equGrid = new SkyGrid(StelCore::FrameEquinoxEqu); equGrid = new SkyGrid(StelCore::FrameEquinoxEqu);
equJ2000Grid = new SkyGrid(StelCore::FrameJ2000); equJ2000Grid = new SkyGrid(StelCore::FrameJ2000);
skipping to change at line 1089 skipping to change at line 1077
circumpolarCircleS = new SkyLine(SkyLine::CIRCUMPOLARCIRCLE_S); circumpolarCircleS = new SkyLine(SkyLine::CIRCUMPOLARCIRCLE_S);
celestialJ2000Poles = new SkyPoint(SkyPoint::CELESTIALPOLES_J2000); celestialJ2000Poles = new SkyPoint(SkyPoint::CELESTIALPOLES_J2000);
celestialPoles = new SkyPoint(SkyPoint::CELESTIALPOLES_OF_DATE); celestialPoles = new SkyPoint(SkyPoint::CELESTIALPOLES_OF_DATE);
zenithNadir = new SkyPoint(SkyPoint::ZENITH_NADIR); zenithNadir = new SkyPoint(SkyPoint::ZENITH_NADIR);
eclipticJ2000Poles = new SkyPoint(SkyPoint::ECLIPTICPOLES_J2000); eclipticJ2000Poles = new SkyPoint(SkyPoint::ECLIPTICPOLES_J2000);
eclipticPoles = new SkyPoint(SkyPoint::ECLIPTICPOLES_OF_DATE); eclipticPoles = new SkyPoint(SkyPoint::ECLIPTICPOLES_OF_DATE);
galacticPoles = new SkyPoint(SkyPoint::GALACTICPOLES); galacticPoles = new SkyPoint(SkyPoint::GALACTICPOLES);
supergalacticPoles = new SkyPoint(SkyPoint::SUPERGALACTICPOLES); supergalacticPoles = new SkyPoint(SkyPoint::SUPERGALACTICPOLES);
equinoxJ2000Points = new SkyPoint(SkyPoint::EQUINOXES_J2000); equinoxJ2000Points = new SkyPoint(SkyPoint::EQUINOXES_J2000);
equinoxPoints = new SkyPoint(SkyPoint::EQUINOXES_OF_DATE); equinoxPoints = new SkyPoint(SkyPoint::EQUINOXES_OF_DATE);
solsticeJ2000Points = new SkyPoint(SkyPoint::SOLSTICES_J2000);
solsticePoints = new SkyPoint(SkyPoint::SOLSTICES_OF_DATE);
} }
GridLinesMgr::~GridLinesMgr() GridLinesMgr::~GridLinesMgr()
{ {
delete equGrid; delete equGrid;
delete equJ2000Grid; delete equJ2000Grid;
delete eclJ2000Grid; delete eclJ2000Grid;
delete eclGrid; delete eclGrid;
delete galacticGrid; delete galacticGrid;
delete supergalacticGrid; delete supergalacticGrid;
skipping to change at line 1125 skipping to change at line 1115
delete circumpolarCircleS; delete circumpolarCircleS;
delete celestialJ2000Poles; delete celestialJ2000Poles;
delete celestialPoles; delete celestialPoles;
delete zenithNadir; delete zenithNadir;
delete eclipticJ2000Poles; delete eclipticJ2000Poles;
delete eclipticPoles; delete eclipticPoles;
delete galacticPoles; delete galacticPoles;
delete supergalacticPoles; delete supergalacticPoles;
delete equinoxJ2000Points; delete equinoxJ2000Points;
delete equinoxPoints; delete equinoxPoints;
delete solsticeJ2000Points;
delete solsticePoints;
} }
/************************************************************************* /*************************************************************************
Reimplementation of the getCallOrder method Reimplementation of the getCallOrder method
*************************************************************************/ *************************************************************************/
double GridLinesMgr::getCallOrder(StelModuleActionName actionName) const double GridLinesMgr::getCallOrder(StelModuleActionName actionName) const
{ {
if (actionName==StelModule::ActionDraw) if (actionName==StelModule::ActionDraw)
return StelApp::getInstance().getModuleMgr().getModule("Nebu laMgr")->getCallOrder(actionName)+10; return StelApp::getInstance().getModuleMgr().getModule("Nebu laMgr")->getCallOrder(actionName)+10;
return 0; return 0;
} }
void GridLinesMgr::init() void GridLinesMgr::init()
{ {
QSettings* conf = StelApp::getInstance().getSettings(); QSettings* conf = StelApp::getInstance().getSettings();
Q_ASSERT(conf); Q_ASSERT(conf);
// Upgrade config keys
if (conf->contains("color/longitude_color"))
{
conf->setValue("color/oc_longitude_color", conf->value("colo
r/longitude_color", "0.2,0.4,0.4").toString());
conf->remove("color/longitude_color");
}
setFlagAzimuthalGrid(conf->value("viewing/flag_azimuthal_grid").toBo ol()); setFlagAzimuthalGrid(conf->value("viewing/flag_azimuthal_grid").toBo ol());
setFlagEquatorGrid(conf->value("viewing/flag_equatorial_grid").toBoo l()); setFlagEquatorGrid(conf->value("viewing/flag_equatorial_grid").toBoo l());
setFlagEquatorJ2000Grid(conf->value("viewing/flag_equatorial_J2000_g rid").toBool()); setFlagEquatorJ2000Grid(conf->value("viewing/flag_equatorial_J2000_g rid").toBool());
setFlagEclipticJ2000Grid(conf->value("viewing/flag_ecliptic_J2000_gr id").toBool()); setFlagEclipticJ2000Grid(conf->value("viewing/flag_ecliptic_J2000_gr id").toBool());
setFlagEclipticGrid(conf->value("viewing/flag_ecliptic_grid").toBool ()); setFlagEclipticGrid(conf->value("viewing/flag_ecliptic_grid").toBool ());
setFlagGalacticGrid(conf->value("viewing/flag_galactic_grid").toBool ()); setFlagGalacticGrid(conf->value("viewing/flag_galactic_grid").toBool ());
setFlagSupergalacticGrid(conf->value("viewing/flag_supergalactic_gri d").toBool()); setFlagSupergalacticGrid(conf->value("viewing/flag_supergalactic_gri d").toBool());
setFlagEquatorLine(conf->value("viewing/flag_equator_line").toBool() ); setFlagEquatorLine(conf->value("viewing/flag_equator_line").toBool() );
setFlagEquatorJ2000Line(conf->value("viewing/flag_equator_J2000_line ").toBool()); setFlagEquatorJ2000Line(conf->value("viewing/flag_equator_J2000_line ").toBool());
setFlagEclipticLine(conf->value("viewing/flag_ecliptic_line").toBool ()); setFlagEclipticLine(conf->value("viewing/flag_ecliptic_line").toBool ());
skipping to change at line 1171 skipping to change at line 1170
setFlagCircumpolarCircles(conf->value("viewing/flag_circumpolar_circ les").toBool()); setFlagCircumpolarCircles(conf->value("viewing/flag_circumpolar_circ les").toBool());
setFlagCelestialJ2000Poles(conf->value("viewing/flag_celestial_J2000 _poles").toBool()); setFlagCelestialJ2000Poles(conf->value("viewing/flag_celestial_J2000 _poles").toBool());
setFlagCelestialPoles(conf->value("viewing/flag_celestial_poles").to Bool()); setFlagCelestialPoles(conf->value("viewing/flag_celestial_poles").to Bool());
setFlagZenithNadir(conf->value("viewing/flag_zenith_nadir").toBool() ); setFlagZenithNadir(conf->value("viewing/flag_zenith_nadir").toBool() );
setFlagEclipticJ2000Poles(conf->value("viewing/flag_ecliptic_J2000_p oles").toBool()); setFlagEclipticJ2000Poles(conf->value("viewing/flag_ecliptic_J2000_p oles").toBool());
setFlagEclipticPoles(conf->value("viewing/flag_ecliptic_poles").toBo ol()); setFlagEclipticPoles(conf->value("viewing/flag_ecliptic_poles").toBo ol());
setFlagGalacticPoles(conf->value("viewing/flag_galactic_poles").toBo ol()); setFlagGalacticPoles(conf->value("viewing/flag_galactic_poles").toBo ol());
setFlagSupergalacticPoles(conf->value("viewing/flag_supergalactic_po les").toBool()); setFlagSupergalacticPoles(conf->value("viewing/flag_supergalactic_po les").toBool());
setFlagEquinoxJ2000Points(conf->value("viewing/flag_equinox_J2000_po ints").toBool()); setFlagEquinoxJ2000Points(conf->value("viewing/flag_equinox_J2000_po ints").toBool());
setFlagEquinoxPoints(conf->value("viewing/flag_equinox_points").toBo ol()); setFlagEquinoxPoints(conf->value("viewing/flag_equinox_points").toBo ol());
setFlagSolsticeJ2000Points(conf->value("viewing/flag_solstice_J2000_
points").toBool());
setFlagSolsticePoints(conf->value("viewing/flag_solstice_points").to
Bool());
// Load colors from config file // Load colors from config file
QString defaultColor = conf->value("color/default_color").toString() ; QString defaultColor = conf->value("color/default_color").toString() ;
setColorEquatorGrid(StelUtils::strToVec3f(conf->value("color/equator ial_color", defaultColor).toString())); setColorEquatorGrid(StelUtils::strToVec3f(conf->value("color/equator ial_color", defaultColor).toString()));
setColorEquatorJ2000Grid(StelUtils::strToVec3f(conf->value("color/eq uatorial_J2000_color", defaultColor).toString())); setColorEquatorJ2000Grid(StelUtils::strToVec3f(conf->value("color/eq uatorial_J2000_color", defaultColor).toString()));
setColorEclipticJ2000Grid(StelUtils::strToVec3f(conf->value("color/e cliptical_J2000_color", defaultColor).toString())); setColorEclipticJ2000Grid(StelUtils::strToVec3f(conf->value("color/e cliptical_J2000_color", defaultColor).toString()));
setColorEclipticGrid(StelUtils::strToVec3f(conf->value("color/eclipt ical_color", defaultColor).toString())); setColorEclipticGrid(StelUtils::strToVec3f(conf->value("color/eclipt ical_color", defaultColor).toString()));
setColorGalacticGrid(StelUtils::strToVec3f(conf->value("color/galact ic_color", defaultColor).toString())); setColorGalacticGrid(StelUtils::strToVec3f(conf->value("color/galact ic_color", defaultColor).toString()));
setColorSupergalacticGrid(StelUtils::strToVec3f(conf->value("color/s upergalactic_color", defaultColor).toString())); setColorSupergalacticGrid(StelUtils::strToVec3f(conf->value("color/s upergalactic_color", defaultColor).toString()));
setColorAzimuthalGrid(StelUtils::strToVec3f(conf->value("color/azimu thal_color", defaultColor).toString())); setColorAzimuthalGrid(StelUtils::strToVec3f(conf->value("color/azimu thal_color", defaultColor).toString()));
setColorEquatorLine(StelUtils::strToVec3f(conf->value("color/equator _color", defaultColor).toString())); setColorEquatorLine(StelUtils::strToVec3f(conf->value("color/equator _color", defaultColor).toString()));
setColorEquatorJ2000Line(StelUtils::strToVec3f(conf->value("color/eq uator_J2000_color", defaultColor).toString())); setColorEquatorJ2000Line(StelUtils::strToVec3f(conf->value("color/eq uator_J2000_color", defaultColor).toString()));
setColorEclipticLine(StelUtils::strToVec3f(conf->value("color/eclipt ic_color", defaultColor).toString())); setColorEclipticLine(StelUtils::strToVec3f(conf->value("color/eclipt ic_color", defaultColor).toString()));
setColorEclipticJ2000Line(StelUtils::strToVec3f(conf->value("color/e cliptic_J2000_color", defaultColor).toString())); setColorEclipticJ2000Line(StelUtils::strToVec3f(conf->value("color/e cliptic_J2000_color", defaultColor).toString()));
setColorPrecessionCircles(StelUtils::strToVec3f(conf->value("color/p recession_circles_color", defaultColor).toString())); setColorPrecessionCircles(StelUtils::strToVec3f(conf->value("color/p recession_circles_color", defaultColor).toString()));
setColorMeridianLine(StelUtils::strToVec3f(conf->value("color/meridi an_color", defaultColor).toString())); setColorMeridianLine(StelUtils::strToVec3f(conf->value("color/meridi an_color", defaultColor).toString()));
setColorHorizonLine(StelUtils::strToVec3f(conf->value("color/horizon _color", defaultColor).toString())); setColorHorizonLine(StelUtils::strToVec3f(conf->value("color/horizon _color", defaultColor).toString()));
setColorGalacticEquatorLine(StelUtils::strToVec3f(conf->value("color /galactic_equator_color", defaultColor).toString())); setColorGalacticEquatorLine(StelUtils::strToVec3f(conf->value("color /galactic_equator_color", defaultColor).toString()));
setColorSupergalacticEquatorLine(StelUtils::strToVec3f(conf->value(" color/supergalactic_equator_color", defaultColor).toString())); setColorSupergalacticEquatorLine(StelUtils::strToVec3f(conf->value(" color/supergalactic_equator_color", defaultColor).toString()));
setColorLongitudeLine(StelUtils::strToVec3f(conf->value("color/longi tude_color", defaultColor).toString())); setColorLongitudeLine(StelUtils::strToVec3f(conf->value("color/oc_lo ngitude_color", defaultColor).toString()));
setColorPrimeVerticalLine(StelUtils::strToVec3f(conf->value("color/p rime_vertical_color", defaultColor).toString())); setColorPrimeVerticalLine(StelUtils::strToVec3f(conf->value("color/p rime_vertical_color", defaultColor).toString()));
setColorColureLines(StelUtils::strToVec3f(conf->value("color/colures _color", defaultColor).toString())); setColorColureLines(StelUtils::strToVec3f(conf->value("color/colures _color", defaultColor).toString()));
setColorCircumpolarCircles(StelUtils::strToVec3f(conf->value("color/ circumpolar_circles_color", defaultColor).toString())); setColorCircumpolarCircles(StelUtils::strToVec3f(conf->value("color/ circumpolar_circles_color", defaultColor).toString()));
setColorCelestialJ2000Poles(StelUtils::strToVec3f(conf->value("color /celestial_J2000_poles_color", defaultColor).toString())); setColorCelestialJ2000Poles(StelUtils::strToVec3f(conf->value("color /celestial_J2000_poles_color", defaultColor).toString()));
setColorCelestialPoles(StelUtils::strToVec3f(conf->value("color/cele stial_poles_color", defaultColor).toString())); setColorCelestialPoles(StelUtils::strToVec3f(conf->value("color/cele stial_poles_color", defaultColor).toString()));
setColorZenithNadir(StelUtils::strToVec3f(conf->value("color/zenith_ nadir_color", defaultColor).toString())); setColorZenithNadir(StelUtils::strToVec3f(conf->value("color/zenith_ nadir_color", defaultColor).toString()));
setColorEclipticJ2000Poles(StelUtils::strToVec3f(conf->value("color/ ecliptic_J2000_poles_color", defaultColor).toString())); setColorEclipticJ2000Poles(StelUtils::strToVec3f(conf->value("color/ ecliptic_J2000_poles_color", defaultColor).toString()));
setColorEclipticPoles(StelUtils::strToVec3f(conf->value("color/eclip tic_poles_color", defaultColor).toString())); setColorEclipticPoles(StelUtils::strToVec3f(conf->value("color/eclip tic_poles_color", defaultColor).toString()));
setColorGalacticPoles(StelUtils::strToVec3f(conf->value("color/galac tic_poles_color", defaultColor).toString())); setColorGalacticPoles(StelUtils::strToVec3f(conf->value("color/galac tic_poles_color", defaultColor).toString()));
setColorSupergalacticPoles(StelUtils::strToVec3f(conf->value("color/ supergalactic_poles_color", defaultColor).toString())); setColorSupergalacticPoles(StelUtils::strToVec3f(conf->value("color/ supergalactic_poles_color", defaultColor).toString()));
setColorEquinoxJ2000Points(StelUtils::strToVec3f(conf->value("color/ equinox_J2000_points_color", defaultColor).toString())); setColorEquinoxJ2000Points(StelUtils::strToVec3f(conf->value("color/ equinox_J2000_points_color", defaultColor).toString()));
setColorEquinoxPoints(StelUtils::strToVec3f(conf->value("color/equin ox_points_color", defaultColor).toString())); setColorEquinoxPoints(StelUtils::strToVec3f(conf->value("color/equin ox_points_color", defaultColor).toString()));
setColorSolsticeJ2000Points(StelUtils::strToVec3f(conf->value("color
/solstice_J2000_points_color", defaultColor).toString()));
setColorSolsticePoints(StelUtils::strToVec3f(conf->value("color/sols
tice_points_color", defaultColor).toString()));
StelApp& app = StelApp::getInstance(); StelApp& app = StelApp::getInstance();
connect(&app, SIGNAL(languageChanged()), this, SLOT(updateLineLabels ())); connect(&app, SIGNAL(languageChanged()), this, SLOT(updateLineLabels ()));
QString displayGroup = N_("Display Options"); QString displayGroup = N_("Display Options");
addAction("actionShow_Equatorial_Grid", displayGroup, N_("Equatorial grid"), "equatorGridDisplayed", "E"); addAction("actionShow_Equatorial_Grid", displayGroup, N_("Equatorial grid"), "equatorGridDisplayed", "E");
addAction("actionShow_Azimuthal_Grid", displayGroup, N_("Azimuthal g rid"), "azimuthalGridDisplayed", "Z"); addAction("actionShow_Azimuthal_Grid", displayGroup, N_("Azimuthal g rid"), "azimuthalGridDisplayed", "Z");
addAction("actionShow_Ecliptic_Line", displayGroup, N_("Ecliptic lin e"), "eclipticLineDisplayed", ","); addAction("actionShow_Ecliptic_Line", displayGroup, N_("Ecliptic lin e"), "eclipticLineDisplayed", ",");
addAction("actionShow_Ecliptic_J2000_Line", displayGroup, N_("Eclipt ic J2000 line"), "eclipticJ2000LineDisplayed"); addAction("actionShow_Ecliptic_J2000_Line", displayGroup, N_("Eclipt ic J2000 line"), "eclipticJ2000LineDisplayed");
addAction("actionShow_Equator_Line", displayGroup, N_("Equator line" ), "equatorLineDisplayed", "."); addAction("actionShow_Equator_Line", displayGroup, N_("Equator line" ), "equatorLineDisplayed", ".");
skipping to change at line 1237 skipping to change at line 1240
addAction("actionShow_Circumpolar_Circles", displayGroup, N_("Circum polar Circles"), "circumpolarCirclesDisplayed"); addAction("actionShow_Circumpolar_Circles", displayGroup, N_("Circum polar Circles"), "circumpolarCirclesDisplayed");
addAction("actionShow_Celestial_J2000_Poles", displayGroup, N_("Cele stial J2000 poles"), "celestialJ2000PolesDisplayed"); addAction("actionShow_Celestial_J2000_Poles", displayGroup, N_("Cele stial J2000 poles"), "celestialJ2000PolesDisplayed");
addAction("actionShow_Celestial_Poles", displayGroup, N_("Celestial poles"), "celestialPolesDisplayed"); addAction("actionShow_Celestial_Poles", displayGroup, N_("Celestial poles"), "celestialPolesDisplayed");
addAction("actionShow_Zenith_Nadir", displayGroup, N_("Zenith and na dir"), "zenithNadirDisplayed"); addAction("actionShow_Zenith_Nadir", displayGroup, N_("Zenith and na dir"), "zenithNadirDisplayed");
addAction("actionShow_Ecliptic_J2000_Poles", displayGroup, N_("Eclip tic J2000 poles"), "eclipticJ2000PolesDisplayed"); addAction("actionShow_Ecliptic_J2000_Poles", displayGroup, N_("Eclip tic J2000 poles"), "eclipticJ2000PolesDisplayed");
addAction("actionShow_Ecliptic_Poles", displayGroup, N_("Ecliptic po les"), "eclipticPolesDisplayed"); addAction("actionShow_Ecliptic_Poles", displayGroup, N_("Ecliptic po les"), "eclipticPolesDisplayed");
addAction("actionShow_Galactic_Poles", displayGroup, N_("Galactic po les"), "galacticPolesDisplayed"); addAction("actionShow_Galactic_Poles", displayGroup, N_("Galactic po les"), "galacticPolesDisplayed");
addAction("actionShow_Supergalactic_Poles", displayGroup, N_("Superg alactic poles"), "supergalacticPolesDisplayed"); addAction("actionShow_Supergalactic_Poles", displayGroup, N_("Superg alactic poles"), "supergalacticPolesDisplayed");
addAction("actionShow_Equinox_J2000_Points", displayGroup, N_("Equin ox J2000 points"), "equinoxJ2000PointsDisplayed"); addAction("actionShow_Equinox_J2000_Points", displayGroup, N_("Equin ox J2000 points"), "equinoxJ2000PointsDisplayed");
addAction("actionShow_Equinox_Points", displayGroup, N_("Equinox poi nts"), "equinoxPointsDisplayed"); addAction("actionShow_Equinox_Points", displayGroup, N_("Equinox poi nts"), "equinoxPointsDisplayed");
addAction("actionShow_Solstice_J2000_Points", displayGroup, N_("Sols
tice J2000 points"), "solsticeJ2000PointsDisplayed");
addAction("actionShow_Solstice_Points", displayGroup, N_("Solstice p
oints"), "solsticePointsDisplayed");
} }
void GridLinesMgr::update(double deltaTime) void GridLinesMgr::update(double deltaTime)
{ {
// Update faders // Update faders
equGrid->update(deltaTime); equGrid->update(deltaTime);
equJ2000Grid->update(deltaTime); equJ2000Grid->update(deltaTime);
eclJ2000Grid->update(deltaTime); eclJ2000Grid->update(deltaTime);
eclGrid->update(deltaTime); eclGrid->update(deltaTime);
galacticGrid->update(deltaTime); galacticGrid->update(deltaTime);
skipping to change at line 1274 skipping to change at line 1279
circumpolarCircleS->update(deltaTime); circumpolarCircleS->update(deltaTime);
celestialJ2000Poles->update(deltaTime); celestialJ2000Poles->update(deltaTime);
celestialPoles->update(deltaTime); celestialPoles->update(deltaTime);
zenithNadir->update(deltaTime); zenithNadir->update(deltaTime);
eclipticJ2000Poles->update(deltaTime); eclipticJ2000Poles->update(deltaTime);
eclipticPoles->update(deltaTime); eclipticPoles->update(deltaTime);
galacticPoles->update(deltaTime); galacticPoles->update(deltaTime);
supergalacticPoles->update(deltaTime); supergalacticPoles->update(deltaTime);
equinoxJ2000Points->update(deltaTime); equinoxJ2000Points->update(deltaTime);
equinoxPoints->update(deltaTime); equinoxPoints->update(deltaTime);
solsticeJ2000Points->update(deltaTime);
solsticePoints->update(deltaTime);
} }
void GridLinesMgr::draw(StelCore* core) void GridLinesMgr::draw(StelCore* core)
{ {
galacticGrid->draw(core); galacticGrid->draw(core);
supergalacticGrid->draw(core); supergalacticGrid->draw(core);
eclJ2000Grid->draw(core); eclJ2000Grid->draw(core);
// While ecliptic of J2000 may be helpful to get a feeling of the Z= 0 plane of VSOP87, // While ecliptic of J2000 may be helpful to get a feeling of the Z= 0 plane of VSOP87,
// ecliptic of date is related to Earth and does not make much sense for the other planets. // ecliptic of date is related to Earth and does not make much sense for the other planets.
// Of course, orbital plane of respective planet would be better, bu t is not implemented. // Of course, orbital plane of respective planet would be better, bu t is not implemented.
skipping to change at line 1318 skipping to change at line 1325
circumpolarCircleS->draw(core); circumpolarCircleS->draw(core);
celestialJ2000Poles->draw(core); celestialJ2000Poles->draw(core);
celestialPoles->draw(core); celestialPoles->draw(core);
zenithNadir->draw(core); zenithNadir->draw(core);
eclipticJ2000Poles->draw(core); eclipticJ2000Poles->draw(core);
eclipticPoles->draw(core); eclipticPoles->draw(core);
galacticPoles->draw(core); galacticPoles->draw(core);
supergalacticPoles->draw(core); supergalacticPoles->draw(core);
equinoxJ2000Points->draw(core); equinoxJ2000Points->draw(core);
equinoxPoints->draw(core); equinoxPoints->draw(core);
solsticeJ2000Points->draw(core);
solsticePoints->draw(core);
} }
void GridLinesMgr::updateLineLabels() void GridLinesMgr::updateLineLabels()
{ {
equatorJ2000Line->updateLabel(); equatorJ2000Line->updateLabel();
equatorLine->updateLabel(); equatorLine->updateLabel();
eclipticLine->updateLabel(); eclipticLine->updateLabel();
eclipticJ2000Line->updateLabel(); eclipticJ2000Line->updateLabel();
precessionCircleN->updateLabel(); precessionCircleN->updateLabel();
precessionCircleS->updateLabel(); precessionCircleS->updateLabel();
skipping to change at line 1347 skipping to change at line 1356
circumpolarCircleS->updateLabel(); circumpolarCircleS->updateLabel();
celestialJ2000Poles->updateLabel(); celestialJ2000Poles->updateLabel();
celestialPoles->updateLabel(); celestialPoles->updateLabel();
zenithNadir->updateLabel(); zenithNadir->updateLabel();
eclipticJ2000Poles->updateLabel(); eclipticJ2000Poles->updateLabel();
eclipticPoles->updateLabel(); eclipticPoles->updateLabel();
galacticPoles->updateLabel(); galacticPoles->updateLabel();
supergalacticPoles->updateLabel(); supergalacticPoles->updateLabel();
equinoxJ2000Points->updateLabel(); equinoxJ2000Points->updateLabel();
equinoxPoints->updateLabel(); equinoxPoints->updateLabel();
solsticeJ2000Points->updateLabel();
solsticePoints->updateLabel();
} }
//! Set flag for displaying Azimuthal Grid //! Set flag for displaying Azimuthal Grid
void GridLinesMgr::setFlagAzimuthalGrid(const bool displayed) void GridLinesMgr::setFlagAzimuthalGrid(const bool displayed)
{ {
if(displayed != aziGrid->isDisplayed()) { if(displayed != aziGrid->isDisplayed()) {
aziGrid->setDisplayed(displayed); aziGrid->setDisplayed(displayed);
emit azimuthalGridDisplayedChanged(displayed); emit azimuthalGridDisplayedChanged(displayed);
} }
} }
skipping to change at line 2099 skipping to change at line 2110
return equinoxPoints->getColor(); return equinoxPoints->getColor();
} }
void GridLinesMgr::setColorEquinoxPoints(const Vec3f& newColor) void GridLinesMgr::setColorEquinoxPoints(const Vec3f& newColor)
{ {
if(newColor != equinoxPoints->getColor()) { if(newColor != equinoxPoints->getColor()) {
equinoxPoints->setColor(newColor); equinoxPoints->setColor(newColor);
emit equinoxPointsColorChanged(newColor); emit equinoxPointsColorChanged(newColor);
} }
} }
//! Set flag for displaying solstice points of J2000
void GridLinesMgr::setFlagSolsticeJ2000Points(const bool displayed)
{
if(displayed != solsticeJ2000Points->isDisplayed()) {
solsticeJ2000Points->setDisplayed(displayed);
emit solsticeJ2000PointsDisplayedChanged(displayed);
}
}
//! Get flag for displaying solstice points of J2000
bool GridLinesMgr::getFlagSolsticeJ2000Points(void) const
{
return solsticeJ2000Points->isDisplayed();
}
Vec3f GridLinesMgr::getColorSolsticeJ2000Points(void) const
{
return solsticeJ2000Points->getColor();
}
void GridLinesMgr::setColorSolsticeJ2000Points(const Vec3f& newColor)
{
if(newColor != solsticeJ2000Points->getColor()) {
solsticeJ2000Points->setColor(newColor);
emit solsticeJ2000PointsColorChanged(newColor);
}
}
//! Set flag for displaying solstice points
void GridLinesMgr::setFlagSolsticePoints(const bool displayed)
{
if(displayed != solsticePoints->isDisplayed()) {
solsticePoints->setDisplayed(displayed);
emit solsticePointsDisplayedChanged(displayed);
}
}
//! Get flag for displaying solstice points
bool GridLinesMgr::getFlagSolsticePoints(void) const
{
return solsticePoints->isDisplayed();
}
Vec3f GridLinesMgr::getColorSolsticePoints(void) const
{
return solsticePoints->getColor();
}
void GridLinesMgr::setColorSolsticePoints(const Vec3f& newColor)
{
if(newColor != solsticePoints->getColor()) {
solsticePoints->setColor(newColor);
emit solsticePointsColorChanged(newColor);
}
}
 End of changes. 27 change blocks. 
69 lines changed or deleted 82 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/