Ниже приведён скрипт - симулятор движения солнца. Но сначала приведу управляющие клавиши (все буквенные клавиши - латинские):
* "Стрелка вправо": прибавить один час. "Влево" - минус 1 час. С shift'ом - медленно (по минутам). Автоматически включается функция автослежения камерой. * "Стрелка вверх": прибавить один месяц (перейти на 22 число следующего месяца). "Вниз" - минус 1 месяц. С Shift'ом - ходить по числам 1, 8, 15, 22. * E (от англ. Equation of time) - вкл/выкл уравнение времени. Соответственно, это переход от среднего времени к истинному солнечному, аналеммы превращаются в ровные часовые метки и обратно. * A (от англ. Azimuth) - вкл/выкл азимутальной сетки координат. * I (от англ. Invisible) - вкл/выкл часовые метки. * S (от русского Shirota, не хотел путаться в английских latitude & longitude) - увеличение широты (перемещаемся на Север), с Shift'ом - уменьшение широты (на Юг). * D (от русского Dolgota) - увеличение долготы (перемещаемся на Восток), с Shift'ом - уменьшение (на Запад). * U (от UTC) - увеличение часового пояса на +1 (с Shift'ом - минус 1). Фактически - просто перемещается метка полуденной аналеммы, чтобы было проще ориентироваться во времени. * K, L - камера влево/вправо (автослежение отключается) * R (от англ. Reset) - выставить начальные параметры. Почти то же самое что F5 (перезагрузка страницы), только быстрее. * "7" - запомнить состояние (с помощью cookies браузера), "8" - воспроизвести его.
Мышью можно "схватить" и таскать панораму во все стороны (автослежение за солнцем отключается). Скролл мыши работает как zoom (увеличение/уменьшение масштаба).
Наконец доделал. Подробный рассказ о тонкостях суточного и годового хода солнца по небосклону.
Идея визуализации хода солнца по небу зрела несколько лет. Никак не мог подобрать инструментарий. Наткнулся на отличный по своим простоте и функционалу трёхмерный движок threejs в августе 2015 года, и вот результат.
Пока я вожусь с темой солнечных часов (а это уже лет 10), Москва дважды поменяла способ исчисления времени. Сначала был сезонный переход на летнее и зимнее время. Затем, в 2011 году, сезонный переход отменили, остановившись на бывшем летнем времени. И вот год назад перешли на постоянное "зимнее" время (на всякий случай прямо в тексте отмечу, что сегодня 24 октября 2015 года, а то мало ли куда текст перекочует).
Ниже представлена моя давняя картинка хода солнца по московскому небу (в виде 24 аналемм), отредактированная в соответствии с текущим часовым поясом Москвы, UTC+3. Пояснения перенесу (и подправлю) из своего жж-поста пятилетней давности (23 декабря 2010 года).
Раскрыть
На этом графике представлено положение солнца (азимут и высота) для Москвы в течение года. Каждая аналемма-"восьмерка" соответствует определённому гражданскому времени, соответствующее время подписано синим над каждой третьей аналеммой. На аналемме, соответствующей 15 часам, показаны 2 даты солнцестояний (июнь и декабрь), а также точка для 22 января, чтобы было понятно, в какую сторону "движется" солнце по "восьмёрке". Например, если проследить за самой верхней точкой (красного цвета) всех восьмерок, то можно увидеть ход солнца в Москве в течение всего дня 22 июня. В частности, видно, что в этот день солнце восходит почти в 4 часа утра примерно на 45 азимуте (северо-восток).
На днях дошло, что солнечные часы из Останкинской телебашни, про которые я писал пару лет назад, получаются не очень наглядные, поскольку всем надо объяснять, что нас интересует только лишь тень от ресторана, а не от всей башни, а сама башня при этом задаёт нам неверное направление, и соответственно только сбивает с толку.
Мне пришло в голову, что можно избавиться от этого эффекта, воспользовавшись северным углом любого здания. Ну например возьмём спальный район Москвы, Коньково, выберем там первый попавшийся дом, его высота примерно 50 метров, и привяжем разметку часовых линий к северному углу этого здания (помечено толстыми красными линиями). Снимок, если верить гуглу, сделан 26 мая (хотя безоговорочно верить ему не стоит).
(кликайте для увеличения)
Тонкими красными линиями показаны продолжения стен этого здания - видно, что они не мешают часовой разметке, и именно из этих соображений выбрано и здание (его ориентация относительно сторон света), и этот угол.
В качестве дополнительной иллюстрации приведен спутниковый снимок от другой даты, 12 апреля (см. врезку в рисунок). Тень от угла здания помечена красной точкой.
Как видно, недостаток, присущий вертикальной башне (и любому другому вертикальному столбу, подробнее это обсуждалось здесь), в данном случае устраняется - не надо всем объяснять, что дескать "смотрите только на эту часть тени, а на всю тень - не смотрите". Достаточно сказать - смотрите на тень от этого угла. И всё.
Это же решение можно использовать для дачных строений - выбрать северный угол кровли и, например, проложить тропинки в соответствии с часовыми линиями и линиями склонений. Либо пометить часовые метки точечно, несколько меток на линию, как это показано, например, для 14 часов на рисунке выше. Единственное - надо учесть, что кровля дачного дома может быть сложнее, чем крыша угловато-перпендикулярной высотки из Коньково.
Честно сказать, я уж и позабыл, что писал про эти часы. В памяти отложилось только то, что с этими часами всё в порядке. Но вот решил повторить изыскания, после севастопольского разочарования. В основном - чтобы лишний раз убедиться, что светлогорские часы можно использовать в качестве примера "как надо делать солнечные часы". Убедился.