1// Author: Qam1 2// Version: 12.0 3// License: Public Domain 4// Name: Earth best views from other bodies 5// Description: Best views of Earth from other Solar System bodies in the 21st Century. 6 7// Made on Stellarium 0.20.2 8 9//basics 10var spd = 5; // speed for screen saver mode in seconds 11StelSkyDrawer.setFlagLuminanceAdaptation(false); 12var o = 1; 13var i = 1; 14var sl = StarMgr.getLabelsAmount(); 15var pk = 0 16 17 18 19 20LabelMgr.deleteAllLabels(); 21var ss = -1; 22 23// Labels 24var txt1 = LabelMgr.labelScreen("Press N for next outer body", 470, 60, false, 35, "#FF0000"); 25LabelMgr.setLabelShow(txt1, true); 26 27txt1 = LabelMgr.labelScreen("Press B to go back to the last inner body", 470, 120, false, 35, "#FF0000"); 28LabelMgr.setLabelShow(txt1, true); 29 30txt1 = LabelMgr.labelScreen("Press F to toggle flags and labels", 470, 180, false, 35, "#FF0000"); 31LabelMgr.setLabelShow(txt1, true); 32 33txt1 = LabelMgr.labelScreen("Press S toggle screen saver mode", 470, 240, false, 35, "#FF0000"); 34LabelMgr.setLabelShow(txt1, true); 35 36txt1 = LabelMgr.labelScreen("By Qam1", 770, 140, false, 15, "#FF0000"); 37LabelMgr.setLabelShow(txt1, true); 38 39spd = spd * 4; 40 41// program 42var q = 0; 43while (q == 0) 44{ 45 if (o == 1) 46 { 47 core.selectObjectByName("Earth", pointer = true); 48 StelMovementMgr.setFlagTracking(true); 49 50 SolarSystem.setFlagOrbits(true); 51 52 SolarSystem.setLabelsAmount(20); 53 StarMgr.setLabelsAmount(sl); 54 ConstellationMgr.setFlagLines(true); 55 ConstellationMgr.setFlagLabels(true); 56 GridLinesMgr.setFlagEclipticLine(true); 57 GridLinesMgr.setFlagEquatorLine(true); 58 } 59 60 if (o == -1) 61 { 62 core.selectObjectByName("Earth", pointer = false); 63 StelMovementMgr.setFlagTracking(true); 64 65 SolarSystem.setFlagOrbits(false); 66 67 SolarSystem.setLabelsAmount(-20); 68 StarMgr.setLabelsAmount(-20); 69 ConstellationMgr.setFlagLines(false); 70 ConstellationMgr.setFlagLabels(false); 71 GridLinesMgr.setFlagEclipticLine(false); 72 GridLinesMgr.setFlagEquatorLine(false); 73 } 74 75 if (i == 1) 76 { 77 LandscapeMgr.setFlagAtmosphere(false); 78 LandscapeMgr.setFlagFog(false); 79 LandscapeMgr.setCurrentLandscapeID("moon"); 80 81 core.setDate("2061-05-31T01:04:47", "utc"); 82 core.setObserverLocation(91.80, 44.24, 7, 1, "", "Mercury"); 83 StelMovementMgr.zoomTo(64, 1); 84 85 SolarSystem.setFlagOrbits(false); 86 87 sd = 176 88 sw = 1232; 89 90 91 } 92 93 if (i == 2) 94 { 95 LandscapeMgr.setFlagAtmosphere(true); 96 LandscapeMgr.setFlagFog(true); 97 LandscapeMgr.setCurrentLandscapeID("moon"); 98 99 core.setDate("2093-12-17T12:04:47", "utc"); 100 core.setObserverLocation(6.7, 40.3, 50000, 1, "", "Venus"); 101 StelMovementMgr.zoomTo(90, 1); 102 103 SolarSystem.setFlagOrbits(false); 104 105 sd = 116; 106 sw = 1709; 107 } 108 109 110 111 112 113 if (i == 3) 114 { 115 116 117 118 LandscapeMgr.setFlagAtmosphere(false); 119 LandscapeMgr.setFlagFog(false); 120 LandscapeMgr.setCurrentLandscapeID("moon"); 121 122 core.setDate("2049-01-04T01:10:00", "utc"); 123 core.setObserverLocation(0.7, 0.0, 50, 1, "", "Moon"); 124 StelMovementMgr.zoomTo(12, 1); 125 126 SolarSystem.setFlagOrbits(false); 127 128 sd = 1; 129 sw = 7; 130 } 131 132 133 134 135 136 if (i == 4) 137 { 138 LandscapeMgr.setFlagAtmosphere(true); 139 LandscapeMgr.setFlagFog(true); 140 LandscapeMgr.setCurrentLandscapeID("mars"); 141 142 core.setObserverLocation(-175.399994, -14.48, 17, 1, "", "Mars"); 143 core.setDate("2099-07-26T04:16:00", "utc"); 144 LandscapeMgr.setFlagAtmosphere(true); 145 146 StelMovementMgr.zoomTo(62, 1); 147 148SolarSystem.setFlagOrbits(true); 149 150 151 sd = 1; 152 sw = 7; 153 154 155 } 156 157 if (i == 5) 158 { 159 LandscapeMgr.setFlagAtmosphere(false); 160 LandscapeMgr.setFlagFog(false); 161 LandscapeMgr.setCurrentLandscapeID("ocean"); 162 163 core.setDate("2082-10-19T21:08:21", "utc"); 164 core.setObserverLocation(-179.71, 44.24, 17, 1, "", "(1) Ceres"); 165 StelMovementMgr.zoomTo(42, 1); 166 167 sd = 1; 168 sw = 7; 169 } 170 171 if (i == 6) 172 { 173 LandscapeMgr.setFlagAtmosphere(true); 174 LandscapeMgr.setFlagFog(true); 175 LandscapeMgr.setCurrentLandscapeID("jupiter"); 176 177 core.setDate("2058-07-15T11:52:00", "utc"); 178 core.setObserverLocation(121.71, 27.24, 71492000, 1, "", "Jupiter"); 179 StelMovementMgr.zoomTo(34, 1); 180 181 txt1 = LabelMgr.labelScreen("Elongation: 11.849 degrees", 350, 10, false, 25, "#AAFFAA"); 182 LabelMgr.setLabelShow(txt1, true); 183 } 184 185 if (i == 7) 186 { 187 LandscapeMgr.setFlagAtmosphere(true); 188 LandscapeMgr.setFlagFog(true); 189 LandscapeMgr.setCurrentLandscapeID("saturn"); 190 191 core.setDate("2031-09-16T10:48:57", "utc"); 192 core.setObserverLocation(-73.71, 9.24, 200000, 1, "", "Saturn"); 193 core.wait(0.1); 194 StelMovementMgr.zoomTo(28, 1); 195 196 txt1 = LabelMgr.labelScreen("Elongation: 6.390 degrees", 350, 10, false, 25, "#AAFFAA"); 197 LabelMgr.setLabelShow(txt1, true); 198 } 199 200 if (i == 8) 201 { 202 LandscapeMgr.setFlagAtmosphere(true); 203 LandscapeMgr.setFlagFog(true); 204 LandscapeMgr.setCurrentLandscapeID("uranus"); 205 206 core.setDate("2052-06-16T11:00:00", "utc"); 207 core.setObserverLocation(57.73, 60.0, 30268000, 1, "", "Uranus"); 208 StelMovementMgr.zoomTo(15.6, 1); 209 210 txt1 = LabelMgr.labelScreen("Elongation: 3.186 degrees", 350, 10, false, 25, "#AAFFAA"); 211 LabelMgr.setLabelShow(txt1, true); 212 213 214 sd = 1; 215 sw = 7; 216 } 217 218 if (i == 9) 219 { 220 LandscapeMgr.setFlagAtmosphere(true); 221 LandscapeMgr.setFlagFog(true); 222 LandscapeMgr.setCurrentLandscapeID("neptune"); 223 224 core.setDate("2035-07-17T15:00:00", "utc"); 225 core.setObserverLocation(94.71, 11.24, 24764000, 1, "", "Neptune"); 226 StelMovementMgr.zoomTo(10.6, 1); 227 228 txt1 = LabelMgr.labelScreen("Elongation: 1.952 degrees", 350, 10, false, 25, "#AAFFAA"); 229 LabelMgr.setLabelShow(txt1, true); 230 231 sd = 1; 232 sw = 7; 233 } 234 235 if (i == 10) 236 { 237 LandscapeMgr.setFlagAtmosphere(false); 238 LandscapeMgr.setFlagFog(false); 239 LandscapeMgr.setCurrentLandscapeID("moon"); 240 241 core.setDate("2000-09-01T12:35:49", "utc"); 242 core.setObserverLocation(38.49, 62.04, 76, 1, "", "Pluto"); 243 StelMovementMgr.zoomTo(25, 1); 244 245 txt1 = LabelMgr.labelScreen("Elongation: 1.908 degrees", 500, 10, false, 25, "#AAFFAA"); 246 LabelMgr.setLabelShow(txt1, true); 247 248 249 250 } 251 252 253 254 if (i == 11) 255 { 256 LandscapeMgr.setFlagAtmosphere(false); 257 LandscapeMgr.setFlagFog(false); 258 LandscapeMgr.setCurrentLandscapeID("moon"); 259 260 core.setDate("2073-09-28T06:44:16", "utc"); 261 core.setObserverLocation(1.49, 1.04, 76, 1, "", "Sedna"); 262 StelMovementMgr.zoomTo(3.14, 1); 263 264 txt1 = LabelMgr.labelScreen("Elongation: 0.756 degrees", 500, 10, false, 25, "#AAFFAA"); 265 LabelMgr.setLabelShow(txt1, true); 266 267 268 269 } 270 271 272 if (i == 12) 273 { 274 LandscapeMgr.setFlagAtmosphere(false); 275 LandscapeMgr.setFlagFog(false); 276 LandscapeMgr.setCurrentLandscapeID("moon"); 277 278 core.setDate("2099-08-06T07:47:31", "utc"); 279 core.setObserverLocation(38.49, 31.04, 76, 1, "", "Eris"); 280 StelMovementMgr.zoomTo(25, 1); 281 282 txt1 = LabelMgr.labelScreen("Elongation: 0.692 degrees", 500, 10, false, 25, "#AAFFAA"); 283 LabelMgr.setLabelShow(txt1, true); 284 285 286 287 } 288 289 290 291 292var d = 1 293 294ob = ConstellationMgr.getFlagBoundaries(); 295od = NebulaMgr.getFlagHints(); 296 297of = LandscapeMgr.getFlagFog(); 298os = StarMgr.getFlagStars(); 299 300oq = LandscapeMgr.getFlagCardinalsPoints(); 301 302 303while (d == 1) 304{ 305 306 307core.wait(0.25); 308pk = pk + 1 309 310if (ss == -1) 311{ 312pk = 0 313} 314 315 316cb = ConstellationMgr.getFlagBoundaries(); 317 318 319if (cb != ob) 320{ 321i = i-1 322d =2 323 324ConstellationMgr.setFlagBoundaries(ob); 325 326} 327 328cd = NebulaMgr.getFlagHints(); 329 330 331if (cd != od) 332{ 333i = i+1 334d =2 335NebulaMgr.setFlagHints(od); 336 337} 338 339 340cf = LandscapeMgr.getFlagFog(); 341 342 343if (cf != of) 344{ 345o = o * -1 346d =2 347LandscapeMgr.setFlagFog(ob); 348} 349 350 351cs = StarMgr.getFlagStars(); 352 353 354if (cs != os) 355{ 356ss = ss * -1 357d =2 358 359StarMgr.setFlagStars(os); 360 361LabelMgr.deleteAllLabels(); 362 363//toggle screen saver 364 365if (ss == -1) 366{ 367txt1 = LabelMgr.labelScreen("Screensaver Mode off", 400, 20, false, 25, "#F6A101"); 368LabelMgr.setLabelShow(txt1, true); 369core.wait(1); 370} 371else 372{ 373txt1 = LabelMgr.labelScreen("Screensaver Mode on", 400, 20, false, 25, "#F6A101"); 374LabelMgr.setLabelShow(txt1, true); 375} 376core.wait(1); 377 378 379} //ss 380 381 382if (pk > spd) 383{ 384i = i + 1 385d = 2 386pk = 0 387} 388 389 390 391} //d 392 393 394ConstellationMgr.setFlagBoundaries(ob); 395NebulaMgr.getFlagHints(od); 396 397LandscapeMgr.getFlagFog(of); 398StarMgr.getFlagStars(os); 399 400 401 402if (i > 12) 403{ 404i = 1 405} 406 407 408if (i < 1) 409{ 410i = 12 411} 412 413 414 415 416 417 LabelMgr.deleteAllLabels(); 418} 419 420