Представляю вашему вниманию обработку для расчета во времени некоторых положений солнца в течении дня. Входные параметры: дата, часовой пояс, долгота, широта.
Алгоритмы и формулы для расчета были позаимствованы у Владимира Агафонкина из:
https://github.com/mourner/suncalc
Сам солнечный калькулятор:
https://habr.com/ru/post/90164/
https://habr.com/ru/post/127101/
Для наглядности (а также для сверки расчетов JavaScript, далее JS) оригинальные алгоритмы (почти без изменений) оставил в обработке. Некоторые формулы и промежуточные вычисления JS приводятся в левом поле: Расшифровка расчета (JS). Соответственно с права, тоже самое, но написанное ПЕРЕписанное на встроенном языке 1с.
Результаты расчетов несколько отличаются от того, что можно найти в сети. Но для меня разница в пределах 5 минут была нормальной.
Для трансляции кода JS использовал материалы статьи:
//infostart.ru/public/398366/
Тестировал на БСП (2.1.2.34). Платформа 8.3.16.1148
Для чего это нужно? Сложно придумать пример использования в 1с-ных задачах. Возможно, в каких-нибудь вычислениях (табелей, графиков и проч. "зарплатных" моментов ), где длительность светового дня является одним и входных параметров.
Мне же понадобились время восхода, когда решил плотно заняться своим графиком утренних подъемов и продолжительности сна. Вставать рано мне очень тяжело :) По этому времени я коррелировал свои утренние подъемы и положение солнца во время пробуждения. Статистика занятная, но сильно в решение этого вопроса не продвинулся :) Положение солнца влияет на степень тяжести подъемов лишь косвенно, но влияние это совершенно точно есть.
Следующий этап моих заморочек - это сбор наиболее продуктивного времени в течении дня, и опять же корреляция этого времени с положением солнца на горизонте.
Другие возможные применения этих расчетов можно найти на хабре.
Чтобы решить эту задачу, не обязательно писать код на 1с, можно воспользоваться API-сервисами. Но чего-нибудь толкового на тот момент не нашел.
P.S. На авторство не претендую, т.к. по сути транслировал код JS на встроенный язык 1с.
В обработке работают не все показатели, мне они не показались существенными, пока решил оставить так.
Заранее выражаю благодарность за конструктивные комментарии и пожелания.