//////////////////////////////////////////////////////////////////////////////// // Increment time void StelCore::updateTime(double deltaTime) { JDay+=timeSpeed*deltaTime; // Fix time limits to -100000 to +100000 to prevent bugs if (JDay>38245309.499988) JDay = 38245309.499988; if (JDay<-34803211.500012) JDay = -34803211.500012; if (position->isObserverLifeOver()) { // Unselect if the new home planet is the previously selected object StelObjectMgr* objmgr = GETSTELMODULE(StelObjectMgr); Q_ASSERT(objmgr); if (objmgr->getWasSelected() && objmgr->getSelectedObject()[0].data()==position->getHomePlanet()) { objmgr->unSelect(); } StelObserver* newObs = position->getNextObserver(); delete position; position = newObs; } position->update(deltaTime); // Position of sun and all the satellites (ie planets) SolarSystem* solsystem = (SolarSystem*)StelApp::getInstance().getModuleMgr().getModule("SolarSystem"); solsystem->computePositions(getJDay(), position->getHomePlanet()->getHeliocentricEclipticPos()); }
void SolarSystemEditor::resetSolarSystemToDefault() { if (isInitialized) { if (resetSolarSystemConfigurationFile()) { //Deselect all currently selected objects StelObjectMgr * objectManager = GETSTELMODULE(StelObjectMgr); //TODO objectManager->unSelect(); solarSystemManager->reloadPlanets(); emit solarSystemChanged(); } } }
void Pulsars::reloadCatalog(void) { bool hasSelection = false; StelObjectMgr* objMgr = GETSTELMODULE(StelObjectMgr); // Whether any pulsar are selected? Save the current selection... const QList<StelObjectP> selectedObject = objMgr->getSelectedObject("Pulsar"); if (!selectedObject.isEmpty()) { // ... unselect current pulsar. hasSelection = true; objMgr->unSelect(); } readJsonFile(); if (hasSelection) { // Restore selection... objMgr->setSelectedObject(selectedObject); } }