Скрипты для Stellarium'а
19 комментариев 1 августа 2012, 22:25 • Stellarium
В конце этой недели я планирую выпустить очередную тестовую версию Stellarium'а для того, чтобы поклонники этого планетария могли проверить что мы в него добавили и насколько корректро это новое работает. В предыдущем месяце в ядре Stellarium'а мы практически не копались — так, исправляли ошибки и делали кое-какие косметические улучшения, до которых дошли руки. Среди таких вот косметических улучшений оказалось расширение набора сценариев (скриптов), которые поставляются в одном пакете со Stellarium'ом. Планировал я это сделать ещё к предыдущему релизу, но тогда до них руки так и не дошли, зато в следующем они будут.
Итак, пройдусь по всем добавленным на этот момент новым сценариям.
Тройной восход и закат на Меркурии — этот сценарий демонстирует один довольно интересных эффект на Меркурии, который получается благодаря причудам вращения планеты вокруг оси и по орбите — в определенных местах на планете Солнце восходит и заходит три раза в течении меркурианского дня.
Двойное затмение на Деймосе в 2017 и в 2031 годах — два сценария, которые демонстрируют достаточно редкие двойные затмения Солнца, которые могут происходить на спутнике Марса — Деймосе.
Затмение 10 января 2068 года с горы Олимп — этот сценарий позволит вам оказаться на самой большой вершине Солнечной системы — горе Олимп — и полюбоваться марсианским солнечным затмением.
Покрытие Земли и Юпитера в 2048 году — сами по себе покрытия Земли и Юпитера Фобосом не редкость для наблюдателя с Марса, но вот чтобы оба небесных тела оказались покрыты в течении одного дня — это действительно редкое событие!
Пятикратное затмение на Деймосе в 2027 году — этот сценарий демонстрирует поочередно серию из пяти затмений — сперва Фобос дважды затмевает Солнце, потом Солнце и Фобос оказываются за Марсом и под финал Фобос успевает попасть в тень Марса ещё раз!
События Солнечной системы — в этом сценарии в режиме хранителя экрана показано 171 различное интересное астрономическое событие, которое либо видно из Солнечной системы, либо происходит с телами оной.
Тур по созвездиям — этот сценарий будет интересным новичкам в мире астрономии, так как он в виде своеобразной экскурсии проводит зрителя по всем современным созвездиям.
Солнце с разных планет — а этот сценарий показывает как выглядит наше Солнышко с больших планет Солнечной системы и Плутона.
Прохождение Венеры — этот сценарий забросит вас в австралийский Сидней в недалёкое прошлое, чтобы посмотреть последнее в этом столетии прохождение Венеры по диску Солнца.
Если у кого-то появятся идеи относительно того, чтобы ещё такого интересного астрономического продемонстрировать или может остро не хватает каких-то функций в скриптовом движке Stellarium'а, то дайте нам знать — вполне возможно, что они появятся в следующей версии планетария.
John Doe • 3 августа 2012 г. в 17:50 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
ОК, как насчет виртуального тура на модную тему «Вселенная. Почуствуй себя ничтожеством»?)) Будет неплохо сочетаться с видеороликами, во множестве выложенными в Инет (на, ютьюб, в частности) и демонстрирующими относительные размеры небесных тел и звезд. Начиная со старушки-Земли и заканчивая гигантами и сверх-гигантами типа Бетельгейзе, Антаресом и т.п. Нельзя забыть также и ближайшие звезды (долететь к которым есть хоть какой-то шанс) — Альфу Центавра, например. Не забыть еще Шедар\Альфу Кассиопеи)) И тур по прочим знаменитым звездам. Соеденить бы это еще с аудиолекциями и презентациями ... (надеюсь, мечтать не вредно7).))
А парады планет? А знаменитые «явления» знаменитых комет — «вестников войн»?
Александр Вольф • 3 августа 2012 г. в 18:00 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Первая часть предложения больше соответствует возможностям Celestia — у нас же планетарий, он физически не умеет «летать» к звёздам, а вот в Celestia такое есть.
За парады планет спасибо, это вполне себе хорошая идея для скрипта.
С кометами идея хороша, но пока её лучше не трогать — наши кометы хвостами ещё не обзавелись.
John Doe • 7 августа 2012 г. в 15:05 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Не, не ... я имел ввиду не полеты к звездам, в том виде, в котором можно перемещаться между объектами виртуальной солнечной системы в Celestia. Я имел ввиду обычный показ перечисленных звезд на небе. Типа — «Вон, видишь вон ту звездочку на небе — это гигант ... класса, размером в ... раз больше нашего Солнца». И так по нарастающей, до вылезания глаз на лоб.)) Хотелось бы без привязки к конкретной дате, конечно ... чтоб в любой момент можно было сопоставить положение объектов в виртуальном планетарии и на небе. Ну, уж как получится!
Да, шорт побьери, надо пойти дальше — распространять виртуальный планетарий с подобными скриптами в виде комбинированного продукта — аудиовизуальных лекций. Навроде популярных лекций для любопытствующих и школьников. Как в свое время было в московском планетарии до его разгона.)
Александр Вольф • 7 августа 2012 г. в 17:17 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Да, в таком виде это хорошая идея для сценария и она вполне реализуема для Stellarium'а.
В теории Stellarium умеет воспроизводить видео и аудио, но на практике очень многое упирается в драйвера на соответствующее оборудование, из-за чего аудио может воспроизводится только на 32-битных Windows (если речь идёт только о Windows-порте) на примерно 20% аудиокарточек.
John Doe • 8 августа 2012 г. в 14:36 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Извините за назойливость любопытствующего. А не предусмотрена ли возможность в информации об объектах, всплывающей в окне Stellarium, при указании на оные, иметь ссылку, скажем, на внешние интернет-источники (Wikipedia и etс.), базы знаний (в онлайн или локальные, скачиваемые и подключаемые к Stellarium)?
Или смысла особого нет? Проще в браузере воспользоваться поиском? Просто копание в ссылках на страницах результатов поиска в поисковых системах иногда затягивается ... а тут, вроде как, компетентные люди могут дать ссылку на проверенную информацию.
Александр Вольф • 8 августа 2012 г. в 14:40 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Нет, такой возможности нет и в ближайшем будущем не планируется. Когда-то такое обсуждали в команде разработчиков, но потом отложили в долгий ящик.
ivan • 8 сентября 2012 г. в 16:44 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
такой вопрос по стеллариуму: хочу иметь возможность расставлять произвольное количество геостационарных меток по небу. скажем, пометить положение солнца 1 сентября в 12 часов UTC (над 8.03 северной широты и 0.04 западной долготы), причем чтобы метку можно было нарисовать произвольного размера и цвета. соответственно, чтобы при перемещении точки наблюдения по земле эта метка смещалась по небу, оставаясь над заданными координатами земли.
это можно сделать как-то типа сценариями или вроде того?
Александр Вольф • 8 сентября 2012 г. в 17:01 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Нет, такого Stellarium не умеет и сценариями такого точно не сделать. На вскидку я бы предположил написание плагина для расстановки меток.
ivan • 8 сентября 2012 г. в 23:09 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
а как писать плагин? нужно ставить среду разработки (какую?), писать по ихнему API, компилировать динамические библиотеки?
Александр Вольф • 8 сентября 2012 г. в 23:23 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
IDE можно использовать почти любую, но мы предпочитаем QtCreator. Плагины пишутся на C++ — причем можно делать как статические, так и динамические плагины. Подробности есть в нашей вики.
ivan • 9 сентября 2012 г. в 03:22 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
спасибо
Di • 20 февраля 2015 г. в 18:03 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Здравствуйте, никто не подскажет литературы по созданию скриптов для stellarium?
Александр Вольф • 21 февраля 2015 г. в 01:38 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
специальной литературы по созданию скриптов в Stellarium'е нет, но есть документация разработчиков на сайте планетария, где написано как делать скрипты. Если что-то не получается, то нужна какая-то конкретика, иначе помочь проблематично.
Di • 26 февраля 2015 г. в 05:01 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Спасибо большое) Например, как в zodiac сделать задержку на каждом из созвездий? И можно как-нибудь качественно сделать захват видео из stellarium'а, чтобы получался как видеофильм?
P.s. буду ОЧЕНЬ благодарна за ответ!
Александр Вольф • 26 февраля 2015 г. в 11:01 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Задержка делается при помощи функции core.wait ();, где в качестве параметра указывается время задержки в миллисекундах. Качественный захват видео — один из вариантов — делать скриншоты (прямо из скрипта) и потом из них собрать ролик.
Di • 4 марта 2015 г. в 16:06 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Спасибо))
А не подскажите еще одну вещь? Как задать положение созвездия на экране? И его размер. Мне нужно чтобы оно было в центре экрана.
Александр Вольф • 4 марта 2015 г. в 22:29 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Это всё делается масштабированием. В качестве примера можете взять скрипт Constellations Tour — он довольно короткий и простой для понимания.
Di • 22 апреля 2015 г. в 17:29 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Спасибо огромное!!! А не подскажете функцию которая меняет частоту кадров?
Александр Вольф • 22 апреля 2015 г. в 17:38 edit_comment_link(__('Edit', 'sandbox'), ' ', ''); ?>
Очевидный метод — stellarium.org/doc/head/c...3c9544ab30f50ede