{ # ... Начало сценария #**************************************************************************** # * # START.CEL - Сценарий запуска для Celestia * # (версия 2.1) * # Автор перевода: Леонов С.А. * #---------------------------------------------------------------------------* # * # Этот сценарий выполняется при каждом запуске Celestia. * # * # ПРИМЕЧАНИЕ: Не удаляйте фигурные скобки вначале и в конце этого файла. * # Они являются указателями того, что этот файл является * # сценарием CEL. * # * # Вы можете изменять этот файл так как вам необходимо, соблюдая синтаксис * # CEL сценариев. Обратите внимание, строки, начинающиеся с символа "#", * # обозначают строки комментариев. Это означает, что при выполнения этого * # файла обработчик скриптового языка будет пропускать эти строки. Так * # можно давать краткие пояснения к тем или иным командам или действиям. * # Строки, не имеющие вначале "#" расцениваются как командные, вследствие * # чего будут выполнены программным процессором. * # * # Далее дается краткое пояснение всем командам, описанными в этом сценарии.* # Чтобы включить соответствующую команду на выполнение, удалите перед ней * # символ "#", как показано чуть ниже. * # * # Пожалуйста, помните, прежде чем вносить изменения в файл, создайте * # сначала его резервную копию, чтобы в случае ошибок вы смогли вернуться * # к исходному файлу. * # * #**************************************************************************** overlay { duration 5.0 fadeafter 4.0 colortop "#9999ff" colorbottom "#ccccff" filename "logo.png" } preloadtex { object "Sol/Earth" } preloadtex { object "Sol/Earth/Moon" } select {object "Sol"} goto {time 3.0 distance 30} wait {duration 3.0} select {object "Sol/Earth"} follow {} goto {time 3.0 distance 6.0} wait {duration 2.0} print {text "Добро пожаловать!" row -3 column 1 duration 3} wait {duration 3.0} #**************************************************************************** # Командные строки, расположенные выше, выполняются при запуске Celestia. * # Что же они делают? Сначала на экране отображается Солнце, затем мы * # перемещаемся к планете Земля и останавливаемся напротив её дневной * # стороны, независимо от местного времени... * # * # А теперь, назначение команд: * # * # preloadtex: Предварительная загрузка текстур указанных объектов в память * # компьютера. Если этого не сделать, то объекты будут показаны * # на экране с некоторой задержкой, очень заметной на слабых * # компьютерах. * # * # select: Выбор необходимого объекта (планеты, спутника, астероида, * # кометы, космического корабля и т.д.). "Sol" говорит о том, * # это Солнечная система или звезда Солнце, символ "/" является * # простым разделителем объектов, "Earth" - планета Земля. * # В итоге, получается: выбрать планету Земля из состава * # Солнечной системы. Если требуется выбрать спутник Земли * # Луну, то поставьте после слова "Earth" символ "/" и напишите * # слово "Moon". У вас должно получиться примерно так: * # * # select {object "Sol/Earth/Moon"} * # * # goto: Перемещение к выбранному объекту. При работе с программой, * # чтобы переместиться к выбранному объекту вы используете * # клавиатурную команду "G". Так вот, действие этих команд * # одинаково. Только в сценарии она ещё имеет параметры. Первый * # это время (time), указывается в секундах и обозначает * # длительность перемещения. Второй - расстояние (distance) до * # объекта, на которое необходимо переместиться. Величина * # расстояния указывается в единицах радиуса выбранного объекта * # плюс один (1). Например, радиус объекта составляет 10000 км, * # а Вы указываете расстояние distance 6.0, тогда камера * # переместится на расстояние 50000 км от его центра. * # * # wait: Установка паузы с необходимой длительностью (duration) в * # секундах. Когда в сценарии встречается эта команда, его * # выполнение приостанавливается на указанное время. Применятся * # в основном в связке с другими командами или для достижения * # определенного эффекта. * # * # Многие команды имеют один из параметров - время (time) или * # длительность (duration). Вы уже знакомы с одной такой * # командой. Это "goto". Чтобы она успешно выполнилась, после * # неё нужно ставить команду "wait" с таким же значением * # времени, как и у параметра "time". Посмотрите на строки * # сценария выше. Мы выбрали Солнце и дали команду на * # перемещение к нему в течение 9 секунд. Теперь, пока будет * # идти это время, нужно приостановить выполнение сценария * # примерно на такое же время, т.е. на 9 секунд. Что мы и * # сделали следующей командой "wait". * # * # follow: Установка Системы координат - Эклиптика. При выполнении * # этой команды (на клавиатуре ей соответствует клавиша "F") * # камера (наблюдатель) следует за выбранным объектом. Так как * # объект перемещается в пространстве, то и камера перемещается * # вместе с ним. При этом расстояние до объекта и широта, на * # которой находится наблюдатель, остаются постоянными, * # изменяется только долгота. * # * # print: Команда позволяет выводить на экран поясняющий текст во * # время выполнения сценария. Текст может располагаться в любой * # части экрана: сверху, снизу, с отступом слева или справа. * # Вместе с командой "print" нужно применять команду "wait" * # со временем равным или большим значения времени отображения * # текста. Здесь текст сообщения "Добро пожаловать!" написан * # в шестнадцатеричных значениях юникода для совместимости с * # более ранними версиями Celestia. Начиная с Celestia v1.6.0 * # все тексты сообщений можно писать кириллицей (на русском). * #**************************************************************************** #**************************************************************************** # Если вы хотите, чтобы при перемещении к Земле камера (наблюдатель) * # останавливалась над определёнными географическими координатами, например * # над точкой вашего местожительства, используйте команду "gotolonglat". * # * # Вот пошаговая инструкция, как это сделать... * # * # * Скопируйте всю строку с этой командой (см. ниже). * # * # * Вставьте её после команды "goto". * # * # * Удалите символ "#" в начале строки, чтобы включить команду. * # * # * Добавьте символ "#" в начале строки с командой "goto". Это отключит * # команду и она выполнена НЕ будет. Теперь строка стала комментарием. * # * # * Измените значения параметров longitude (долгота) и latitude (широта) * # на те, которые соответствуют вашему местоположению. * # * # * Так как вы перемещаетесь в определённую позицию на Земле, и не можете * # с уверенностью сказать, какое там будет время суток (день или ночь), * # то поставьте знак комментария напротив каждой из следующих строк... * # * # select {object "Sol"} * # goto {time 3.0 distance 30} * # wait {duration 3.0} * # * # Если вы хотите, чтобы ваше местоположение всегда было показано в * # дневное время суток, используйте команду установки даты и времени * # "time", описание которой даётся ниже. * #**************************************************************************** # gotolonglat {time 5.0 distance 4.0 longitude 0.0 latitude 0.0} #**************************************************************************** # Если вы хотите, чтобы Celestia всегда запускалась с определенными * # установками даты и времени, используйте команду "time". * # * # ВНИМАНИЕ! Чтобы сбросить установленную дату и время и вернуться к * # текущим значениям, соответствующим системному времени на вашем * # компьютере, нажмите на клавиатуре "!" (восклицательный знак) * # (обычно для этого нужно одновременно нажать клавиши "Shift" и * # "1/!"). * # * # Пошаговая инструкция... * # * # * Выберите желаемую дату и время и укажите его в одном из следующих * # форматов: * # 1. UTC (Всемирное время) - YYYY-MM-DDTHH:MM:SS.SSSSS, * # где YYYY - год; * # MM - месяц; * # DD - день; * # T - обязательный разделитель; * # HH - часы; * # MM - минуты; * # SS - секунды; * # SSSSS- миллисекунды; * # 2. Юлианский (можно рассчитать с помощью конвертера дат, * # например, на этой Интернет страничке * # http://www.usno.navy.mil/USNO/astronomical-applications/data-services/cal-to-jd-conv) # * # * Скопируйте строку с выбранным по желанию форматом (см. ниже). * # * # * Вставьте её выше команды "goto". * # * # * Удалите символы "#" в начале строки, чтобы включить команду. * # * # * Измените значение даты согласно вашим предпочтениям. * #**************************************************************************** # Строка установки даты и времени в формате UTC... # time { utc "2003-08-11T09:29:24.0000" } # Строка установки даты и времени в Юлианском формате... # time { jd JulianDate } # Вместо JulianDate подставьте числовое значение рассчитанное конвертером. #**************************************************************************** # Перечисленные ниже команды позволяют управлять некоторыми настройками * # Celestia, которые будут установлены всякий раз при её запуске. Вы можете * # использовать их на свое усмотрение. Чтобы включить команду, удалите * # символ "#" в начале строки. * #**************************************************************************** # Поле зрения (FOV)... # По умолчанию составляет 25 градусов при разрешении экрана 1024 x 768. # Для включения команды удалите символ "#". # set {name "FOV" value 25.0} # Уровень рассеянного света... # Наилучшие значения лежат в диапазоне от 0.0 до 0.5. # Для включения команды удалите символ "#". # set {name "AmbientLightLevel" value 0.1} # Управление видимой величиной звёзд... # Диапазон звёздных величин лежит в пределах от 0.8 до 15.2. # По умолчанию используется 6.0. # Для включения команды удалите символ "#". # setvisibilitylimit {magnitude 6.0} # Автонастройка количества звёзд в зависимости от заданной видимой величины # и изменении поля зрения до 45 градусов. По умолчанию равно 8.5... # Для включения команды удалите символ "#". # setfaintestautomag45deg {magnitude 8.5} # Отображение элементов небесной сферы (визуализация): # ОТКЛЮЧИТЬ отображение следующих элементов... # Для включения команды удалите символ "#". # renderflags {clear "atmospheres"} # renderflags {clear "automag"} # renderflags {clear "boundaries"} # renderflags {clear "cloudmaps"} # renderflags {clear "comettails"} # renderflags {clear "constellations"} # renderflags {clear "eclipseshadows"} # renderflags {clear "galaxies"} # renderflags {clear "grid"} # renderflags {clear "markers"} # renderflags {clear "nightmaps"} # renderflags {clear "orbits"} # renderflags {clear "planets"} # renderflags {clear "pointstars"} # renderflags {clear "ringshadows"} # renderflags {clear "stars"} # renderflags {clear "partialtrajectories"} # Отображение элементов небесной сферы (визуализация): # ВКЛЮЧИТЬ отображение следующих элементов... # Для включения команды удалите символ "#". # renderflags {set "atmospheres"} # renderflags {set "automag"} # renderflags {set "boundaries"} # renderflags {set "cloudmaps"} # renderflags {set "comettails"} # renderflags {set "constellations"} # renderflags {set "eclipseshadows"} # renderflags {set "galaxies"} # renderflags {set "grid"} # renderflags {set "markers"} # renderflags {set "nightmaps"} # renderflags {set "orbits"} # renderflags {set "planets"} # renderflags {set "pointstars"} # renderflags {set "ringshadows"} # renderflags {set "stars"} # renderflags {set "partialtrajectories"} # Отображение названий объектов: # ОТКЛЮЧИТЬ отображение следующих названий... # Для включения команды удалите символ "#". # labels {clear "asteroids"} # labels {clear "constellations"} # labels {clear "galaxies"} # labels {clear "moons"} # labels {clear "planets"} # labels {clear "spacecraft"} # labels {clear "stars"} # Отображение названий объектов: # ВКЛЮЧИТЬ отображение следующих названий... # Для включения команды удалите символ "#". # labels {set "asteroids"} # labels {set "constellations"} # labels {set "galaxies"} # labels {set "moons"} # labels {set "planets"} # labels {set "spacecraft"} # labels {set "stars"} # Управление метками: # Отключить все метки на экране... # Для включения команды удалите символ "#". # unmarkall { } # Отрисовка минимального размера орбиты (в пикселях)... # Для включения команды удалите символ "#". # set {name "MinOrbitSize" value 1.0} # Минимальное количество звёзд в зависимости от расстояния до них. # По умолчанию расстояние равно 1000000 световых лет... # Для включения команды удалите символ "#". # set {name "StarDistanceLimit" value 1000000} # Установка множителя времени (1x, 100x, 1000x, и т.д.)... # Отрицательные значения = Замедление времени # 0 = Приостановить время (пауза) # 1.0 = Текущая скорость времени (по умолчанию) # 1000.0 = Рекомендуется для наблюдения за орбитальным # движением Луны. # Для включения команды удалите символ "#". # timerate {rate 1.0} #**************************************************************************** # При использовании текстур высокого разрешения рекомендуется выполнять их * # предварительную загрузку в память компьютера, чтобы исключить задержки * # во время визуализации тех или иных объектов. * #**************************************************************************** # Например... # preloadtex {object "earth.*"} # preloadtex {object "earth.png"} #**************************************************************************** # Перемещение по орбите вокруг выбранного объекта в текущей системе * # координат относительно указанной оси координат [X Y Z]. * # Каждая ось координат может иметь только одно значение 0 или 1. * # Угловая скорость перемещения по орбите в град/с - rate. * # Время в секундах на перемещение по орбите вокруг объекта - duration. * # Перед применением данной команды Вы должны сначала выбрать объект. * # Для включения команды удалите символ "#". * #**************************************************************************** # orbit {axis [0 1 0] rate 10.0 duration 7.0} #**************************************************************************** # Более подробные сведения по написанию сценариев для Celestia вы * # можете получить, посетив следующие Интернет ресурсы: * # * # * Форум по сценариям: (http://www.shatters.net/forum/viewforum.php?f=9) * # * Страничка Don G's : (http://www.donandcarla.com/Celestia/) * # * Страничка Harald's: (http://www.h-schmidt.net/celestia/) * # * # На страничке Don G's вы найдете руководство пользователя по * # сценариям CEL. А страничке Harald's - подробное описание CELX (Lua) * # сценариев. Обе странички содержат различные примеры и шаблоны сценариев. * #**************************************************************************** # Конец сценария... }