# Інструмент «Майстер сценаріїв»

Програмами &kde; можна керувати з інших програм, термінала або скрипту командної оболонки за допомогою протоколу обміну інформацією між процесами (&DBus;). У &kstars; цю можливість використано, щоб надати вам змогу записувати сценарії поведінки програми, які можна буде згодом за потреби відтворити. Такі сценарії можна використовувати, наприклад, для створення методичних сюжетів з ілюстраціями певних астрономічних концепцій.

Проблема зі сценаріями &DBus; полягає в тому, що для їх написання вам потрібні будуть навички програміста, а це, певно, поставить у досить складне становище тих, хто не має досвіду у програмуванні. Майстер сценаріїв надає вам доступ до графічного інтерфейсу, у якому ви крок за кроком зможете створювати сценарії &DBus; для &kstars; за допомогою миші, таким чином значно спрощується процес створення складних сценаріїв.

## Вступ до «Майстра сценаріїв»

Перш ніж перейти до пояснень щодо користування Майстром сценаріїв, ми здійснимо коротенький огляд всіх компонентів його графічного інтерфейсу; щоб дізнатися про них більше, скористайтеся функціональною кнопкою «Що це?».

Інструмент «Майстер сценаріїв»
Інструмент «Майстер сценаріїв»

Вище, на знімку екрана показано вікно Майстра сценаріїв. Панель ліворуч — це Панель поточного сценарію; на ній показано команди, що містяться у поточному робочому сценарії. Панель праворуч — Переглядач функцій; тут показано список всіх доступних функцій сценаріїв. Під панеллю переглядача функцій розташовано невеличку панель, де показано коротку довідку щодо функції сценарію, яку позначено на панелі переглядача функцій. Панель, розташована під панеллю поточного сценарію є Панеллю параметрів функції: коли позначено якусь з функцій на панелі поточного сценарію, ця панель відображає елементи, за допомогою яких ви можете вказати значення всіх параметрів, які передаються позначеній функції.

Вздовж верхнього краю вікна розташовано ряд кнопок за допомогою яких можна працювати зі сценарієм. Зліва праворуч це: Створити сценарій, Відкрити сценарій…, Зберегти сценарій, Зберегти сценарій як… і Тестувати сценарій. Про призначення цих кнопок легко здогадатися з їх назв, окрім, можливо, останньої кнопки. Після натискання кнопки Тестувати сценарій буде зроблено спробу запустити поточний сценарій у головному вікні &kstars;. Перед тим, як натиснути кнопку, вам слід відсунути вікно Майстра сценаріїв, щоб ви мали змогу спостерігати за результатами виконання сценарію.

У центрі вікна розміщено стовпчик кнопок, призначених для роботи з окремими функціями сценарію. Згори вниз, це: Додати функцію, Вилучити функцію, Копіювати функцію, Пересунути вгору і Пересунути вниз. Кнопка Додати функцію додає поточну позначену функцію з панелі переглядача функцій на панель поточного сценарію (додати функцію можна також наведенням на неї вказівника миші з наступним подвійним клацанням лівою кнопкою). Решта кнопок виконують дії з позначеною на панелі поточного сценарію функцією, зокрема, вилучають, дублюють або змінюють її розташування у поточному сценарії.

## Користування «Майстром сценаріїв»

Щоб проілюструвати використання Майстра сценаріїв, розглянемо невеличкий навчальний приклад з побудови сценарію, який відстежуватиме розташування Місяця за пришвидшеного ходу годинника.

Якщо ми маємо намір стежити за Місяцем, спершу нам слід розташувати його у центрі зображення. Для цього скористаємося функцією lookToward. Позначте цю функцію у Переглядачі функцій і вивчіть документацію щодо неї, показану на панелі під Переглядачем. Натисніть кнопку Додати функцію, щоб додати цю функцію на панель поточного сценарію. Тепер панель параметрів функції показує спадний список з підписом Напр., скорочення від «напрямок». Це напрямок, у якому слід розташувати центр зображення. У спадному списку будуть лише румби компаса, але не Місяць або інші об’єкти. Ви можете або напряму ввести у поле для введення Місяць, або натиснути кнопку Об’єкт…, щоб скористатися вікном Пошук об’єкта… для вибору Місяця серед об’єктів з відомими назвами. Зауважте, що у цьому випадку, як і завжди, розташування об’єкта у центрі зображення автоматично вмикає режим стеження за об’єктом, отже додавати у сценарій після функції lookTowards ще і функцію setTracking немає ніякого сенсу.

Тепер, коли ми вже потурбувалися про фокусування Місяця, нашою наступною метою буде змусити час у програмі йти у пришвидшеному темпі. Для цього скористаємося функцією setClockScale. Додайте її до поточного сценарію наведенням на її запис у Переглядачі функцій вказівника миші з наступним подвійним клацання лівою кнопкою. Після цього на панелі параметрів функції з’явиться елемент для встановлення бажаного кроку за часом годинника моделювання. Змініть крок за часом на 3 години.

Ну, гаразд, ми спрямували погляд програми на Місяць і прискорили годинник. Тепер потрібно лише наказати сценарію почекати декілька секунд, доки на екрані буде показано стеження за розташуванням Місяця. Для цього додайте у сценарій функцію waitFor, а потім скористайтеся панеллю параметрів функції, щоб вказати, що для продовження роботи слід зачекати 20 секунд.

На завершення, повернемо крок за часом до його звичайного значення у 1 секунду. Ще раз додайте у сценарій функцію setClockScale, а потім встановіть значення її параметра у 1 секунду.

Насправді, це ще не все. Перед тим, як почати стеження за Місяцем у пришвидшеному темпі, нам слід переконатися, що для показу використовуються екваторіальні координати. У іншому випадку, якщо для показу використано горизонтальні координати, відбуватиметься швидке перестрибування на великі кути під час сходів та заходів Місяця. Такі стрибки дуже псують враження від перегляду, для їх уникнення потрібно встановити параметр перегляду UseAltAz у значення false. Щоб змінити будь-який з параметрів перегляду, скористайтеся функцією changeViewOption. Додайте цю функцію до сценарію, а потім зверніть увагу на панель параметрів функції. Там знаходитиметься список всіх параметрів, які можна змінити за допомогою changeViewOption. Оскільки нам потрібен саме параметр UseAltAz, ми можемо просто вибрати його зі списку. Але список є досить довгим, а його пункти ніяким чином не пояснено. Тому може бути зручнішим натиснути кнопку Ієрархічний список…, яка відкриє вікно з ієрархічним деревом усіх можливих параметрів, впорядкованим за призначенням цих параметрів. Крім того, кожен пункт цього списку супроводжується коротеньким пояснення щодо призначення параметра і типу даних його значення. UseAltAz можна знайти серед Параметрів зоряної карти. Просто позначте відповідний запис і натисніть кнопку Гаразд, після цього параметр буде позначено у списку на панелі параметрів функції. Щоб завершити справу, зробіть його значенням false або 0.

Ще одне: зміна UseAltAz наприкінці сценарію не дасть нам бажаного результату — цей параметр слід змінити перед тим, як буде виконано всі інші дії. Отже, переконайтеся, що функцію позначено на панелі поточного сценарію, а потім декілька разів натисніть кнопку Пересунути вгору, щоб відповідна команда стала першою у списку.

Тепер, коли ми завершили написання сценарію, нам слід зберегти його на диск. Щоб це зробити, натисніть кнопку Зберегти сценарій. Після цього буде відкрито вікно, у якому ви зможете ввести назву сценарію і вказати себе у якості автора. Введіть Стеження за Місяцем у поле назви і ваше ім’я у поле автора, а потім натисніть кнопку Гаразд. У результаті відкриється звичайне діалогове вікно збереження файлів у &kde;. Вкажіть у ньому назву файла сценарію і натисніть кнопку Гаразд, щоб зберегти сценарій. Майте на увазі, що, якщо введена вами назва файла не завершуватиметься на .kstars, цей суфікс буде додано автоматично. Якщо вам цікаво, що саме було записано до файла, ви можете переглянути його у текстовому редакторі.

Тепер у нас є готовий сценарій, його можна виконати у декілька способів. Якщо запущено основну програму &kstars;, ви можете виконати цей сценарій у консолі. Іншим способом виконання сценарію безпосередньо з &kstars; є використання пункту Запустити сценарій… з меню Файл.