1{
2# ... Beginning of script
3
4#****************************************************************************
5#                                                                           *
6#                 START.CEL - Startup script for Celestia                   *
7#                             (version 2.1)                                 *
8#                                                                           *
9#---------------------------------------------------------------------------*
10#                                                                           *
11#  This script is run automatically, every time you run Celestia.           *
12#                                                                           *
13#  NOTE: Do not remove the curly braces located as the first and last       *
14#        characters of this file. They define this file as a CEL script.    *
15#                                                                           *
16#  You can modify this script in many ways, to suit your specific needs.    *
17#  Simply uncomment one or more of the lines below, as noted. Each line or  *
18#  section of code contains comments describing what it does. To UNcomment  *
19#  a line of code, simply remove the "#" character from the beginning of    *
20#  that line.                                                               *
21#                                                                           *
22#  If you decide to modify this script, please copy it to a safe place      *
23#  BEFORE you begin, so you will have it to refer to at a later date.       *
24#                                                                           *
25#****************************************************************************
26
27  preloadtex { object "Sol/Earth" }
28  preloadtex { object "Sol/Earth/Moon" }
29
30  select {object "Sol"}
31  goto   {time 3.0 distance 30}
32  wait   {duration 3.0}
33
34  select {object "Sol/Earth"}
35  follow {}
36  goto   {time 3.0  distance 6.0}
37  wait   {duration 2.0}
38
39  print  {text "Ласкаво просимо до Celestia!"  row -3  column 1  duration 3}
40  wait   {duration 3.0}
41
42#****************************************************************************
43#  The lines of code above are the entire start.cel script. Below, is a     *
44#  description of what each command does. We go to Sol first, so that when  *
45#  we go to Earth, it will be displaying it's sunny side, regardless of     *
46#  what your local time might be...                                         *
47#                                                                           *
48#  preloadtex: Tells Celestia to load the textures for the named object.    *
49#          Otherwise Celestia would load the texture when the object        *
50#          comes into view, which would be noticeable as a small delay.     *
51#                                                                           *
52#  select: Tells Celestia what object (planet, moon, spacecraft, etc.) to   *
53#          define as the currently selected object. Sol defines our solar   *
54#          system, the "/" character is merely a hierarchy divider, Earth   *
55#          is the object we want to select. If you wanted to select our     *
56#          Moon, the select command would look like the following:          *
57#            select {object "Sol/Earth/Moon"}                               *
58#                                                                           *
59#  goto:   Tells Celestia to travel to the currently selected object, just  *
60#          like pressing the "G" key on the keyboard. The time parameter    *
61#          defines how many seconds it should take to travel there. The     *
62#          distance parameter defines how far away from the object to be    *
63#          positioned, in units of the object's radius, plus 1. For         *
64#          example, if the object's radius is 10000 km, and you specify     *
65#          6.0 for distance, you will be positioned 50000 km from the       *
66#          center of the object.                                            *
67#                                                                           *
68#  wait:   Since the goto command is telling Celestia to take some time to  *
69#          do something, we need to give Celestia that same amount of time  *
70#          to actually DO it. When going to Sol, the wait command tells     *
71#          Celestia to wait for 3 seconds while the goto takes place (for   *
72#          3 seconds). The duration parameter value is normally the same    *
73#          as the time parameter in the goto command. However, there are    *
74#          always exceptions (grin).                                        *
75#                                                                           *
76#          When we are going to Earth, the wait command after the goto,     *
77#          waits for only 2 seconds. The next command is a print command,   *
78#          which displays some text on the screen and has another wait      *
79#          command after it, that waits for another 3 seconds. It's all     *
80#          just a matter of timing. The goto command allows us to display   *
81#          some text on-screen WHILE it is executing. So, we simply make    *
82#          sure that the total number of wait duration values, listed       *
83#          after a goto, adds up to AT LEAST the time value specified in    *
84#          the goto command. It can be longer, if desired.                  *
85#                                                                           *
86#  follow: Tells Celestia to follow the selected object through space,      *
87#          just like pressing the "F" key on the keyboard. You could        *
88#          replace the follow {} command with synchronous {}, which allows  *
89#          you to remain in a stationary, or geosynchronous orbit above     *
90#          the selected object.                                             *
91#                                                                           *
92#   print: Tells Celestia to display (print) some text on the screen. The   *
93#          text parameter defines the text to be displayed. The row         *
94#          parameter defines how many rows from the bottom of the window to *
95#          start displaying the text at. The column parameter defines how   *
96#          many columns from the left edge of the window to start           *
97#          displaying the text. The duration parameter defines how many     *
98#          seconds the text should be displayed on the screen. Which is     *
99#          then followed by the wait command, as described above.           *
100#****************************************************************************
101
102
103#****************************************************************************
104#  If you want to be positioned above YOUR specific location on Earth, use  *
105#  the gotolonglat command shown below. Step-by-step instructions...        *
106#                                                                           *
107#  * Copy the entire line of code.                                          *
108#                                                                           *
109#  * Paste it below the "goto" command above.                               *
110#                                                                           *
111#  * Remove the "#" character at the beginning of the line. This UNcomments *
112#    the line of code so it will be executed.                               *
113#                                                                           *
114#  * Add a "#" character to the beginning of the original goto command.     *
115#    This turns the line of code into a comment, so it will NOT be run.     *
116#                                                                           *
117#  * Change the longitude and latitude values to those of your location.    *
118#                                                                           *
119#  * Since you are going to a specific position on the Earth, it might not  *
120#    be daytime there, so you could comment-out the following lines of      *
121#    code by adding a "#" character to the beginning of each line...        *
122#      select {object "Sol"}                                                *
123#      goto   {time 3.0 distance 30}                                        *
124#      wait   {duration 3.0}                                                *
125#    If you WANT to display your location in the daytime, use the time      *
126#    command described next.                                                *
127#****************************************************************************
128
129#  gotolonglat {time 5.0  distance 4.0  longitude 0.0  latitude 0.0}
130
131
132#****************************************************************************
133#  If you would like Celestia to always start at a specific date/time, use  *
134#  the time command, as shown below.                                        *
135#                                                                           *
136#  WARNING: Starting Celestia with a pre-determined date/time requires that *
137#           you physically press the "!" (exclamation mark) key in order to *
138#           RESET the time to "current time", whenever you want to do some  *
139#           exploring -- IF the actual time makes a difference.             *
140#                                                                           *
141#  Step-by-step instructions...                                             *
142#                                                                           *
143#  * Determine if you want to set the date via a calendar UTC date/time     *
144#    string, or a Julian day (see below).                                   *
145#                                                                           *
146#  * Copy the one line of code with the time command you want to use.       *
147#                                                                           *
148#  * Paste it above the "goto" command above (top of file).                 *
149#                                                                           *
150#  * Remove the "#" character at the beginning of the line. This UNcomments *
151#    the line of code so it will be executed.                               *
152#                                                                           *
153#  * Change the date/time value to YOUR required date/time.                 *
154#****************************************************************************
155
156# Set the time via a calendar UTC date/time string...
157#  time { utc "2003-08-11T09:29:24.0000" }
158#              YYYY-MM-DDTHH:MM:SS.SSSS
159#  Note the "T" .........^ ... (this is required)
160
161# Set the time via a Julian day value...
162#  time { jd JulianDate }
163#    U.S. Navy Calendar Date/Time to Julian Date/Time converter:
164#    http://aa.usno.navy.mil/data/docs/JulianDate.html
165
166
167#****************************************************************************
168#  The commands listed below allow you to define several of Celestia's      *
169#  settings, that will be set every time you start Celestia. Modify any of  *
170#  the settings you want to.                                                *
171#****************************************************************************
172
173# Field of View (UNcomment / modify to meet your needs)...
174# Default is 25 degrees, at a screen resolution of 1024 x 768
175#  set {name "FOV" value 25.0}
176
177
178# Ambient light level (UNcomment / modify to meet your needs)...
179# 0.0 to 0.5 is a good Lo-Hi range
180#  set {name "AmbientLightLevel" value 0.1}
181
182
183# Faintest visible star magnitude (brightness)...
184# (UNcomment / modify to meet your needs)
185# Celestia UI: 0.8 to 15.2, default is 6.0
186#
187#  setvisibilitylimit {magnitude 6.0}
188
189
190# Faintest auto-magnitude brightness, at 45 degrees, Default is 8.5...
191# (UNcomment / modify to meet your needs)
192#  setfaintestautomag45deg {magnitude 8.5}
193
194
195# Items to be displayed (rendered):
196# Do NOT render the following objects (UNcomment to suit your needs)...
197#  renderflags {clear "atmospheres"}
198#  renderflags {clear "automag"}
199#  renderflags {clear "boundaries"}
200#  renderflags {clear "cloudmaps"}
201#  renderflags {clear "comettails"}
202#  renderflags {clear "constellations"}
203#  renderflags {clear "eclipseshadows"}
204#  renderflags {clear "galaxies"}
205#  renderflags {clear "grid"}
206#  renderflags {clear "markers"}
207#  renderflags {clear "nightmaps"}
208#  renderflags {clear "orbits"}
209#  renderflags {clear "planets"}
210#  renderflags {clear "pointstars"}
211#  renderflags {clear "ringshadows"}
212#  renderflags {clear "stars"}
213#  renderflags {clear "partialtrajectories"}
214
215
216# Items to be displayed (rendered):
217# DO render the following objects (UNcomment to suit your needs)...
218#  renderflags {set "atmospheres"}
219#  renderflags {set "automag"}
220#  renderflags {set "boundaries"}
221#  renderflags {set "cloudmaps"}
222#  renderflags {set "comettails"}
223#  renderflags {set "constellations"}
224#  renderflags {set "eclipseshadows"}
225#  renderflags {set "galaxies"}
226#  renderflags {set "grid"}
227#  renderflags {set "markers"}
228#  renderflags {set "nightmaps"}
229#  renderflags {set "orbits"}
230#  renderflags {set "planets"}
231#  renderflags {set "pointstars"}
232#  renderflags {set "ringshadows"}
233#  renderflags {set "stars"}
234#  renderflags {set "partialtrajectories"}
235
236
237# Text labels:
238# Do NOT label the following objects (UNcomment to suit your needs)...
239#  labels {clear "asteroids"}
240#  labels {clear "constellations"}
241#  labels {clear "galaxies"}
242#  labels {clear "moons"}
243#  labels {clear "planets"}
244#  labels {clear "spacecraft"}
245#  labels {clear "stars"}
246
247
248# Text labels:
249# DO label the following objects (UNcomment to suit your needs)...
250#  labels {set "asteroids"}
251#  labels {set "constellations"}
252#  labels {set "galaxies"}
253#  labels {set "moons"}
254#  labels {set "planets"}
255#  labels {set "spacecraft"}
256#  labels {set "stars"}
257
258
259# Marker control:
260# Unmark any objects that are currently Marked and disable Marker display...
261# (UNcomment to suit your needs)
262#  unmarkall { }
263
264
265# Minimum orbit diameter to be rendered (in pixels)...
266# (UNcomment / modify  to suit your needs)
267#  set {name "MinOrbitSize"  value 1.0}
268
269
270# Furthest visible star distance, default is 1000000...
271# (UNcomment / modify to suit your needs)
272#  set {name "StarDistanceLimit"  value 1000000}
273
274
275# Time rate (1x, 100x, 1000x, etc.)...
276# (UNcomment / modify to suit your needs)
277#    Negative value = Reverse Time
278#               0   = Pause Time
279#               1.0 = Real Time (default)
280#            1000.0 = Good moon orbit motion
281#
282#  timerate {rate 1.0}
283
284
285#****************************************************************************
286#  If you are using large textures, you can have Celestia pre-load them     *
287#  into your graphics card memory by listing them below.                    *
288#****************************************************************************
289# Examples...
290#  preloadtex {object "earth.*"}
291#  preloadtex {object "earth.png"}
292
293
294#****************************************************************************
295#  orbit is a fun command to play with. The axis is specified in [X Y Z]    *
296#  order, and each axis can be either 0 or 1. rate = how fast, duration =   *
297#  number of seconds. Just make sure you have an object selected.           *
298#****************************************************************************
299#  orbit {axis [0 1 0]  rate 10.0  duration 7.0}
300
301
302#****************************************************************************
303#  To learn more about scripting in Celestia, visit:                        *
304#                                                                           *
305#   * Scripting forum: (http://www.shatters.net/forum/viewforum.php?f=9)    *
306#   * Don G's Celestia page: (http://www.donandcarla.com/Celestia/)         *
307#   * Harald's Celestia page: (http://www.h-schmidt.net/celestia/)          *
308#                                                                           *
309#  Don G's page includes a guide for CEL scripting. Harald's page includes  *
310#  a guide for CELX (Lua) scripting. Both also have example scripts and     *
311#  other goodies.                                                           *
312#****************************************************************************
313
314
315# End of script...
316}
317