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