Pull to refresh

Делаем календари в разных системах счисления

Reading time 2 min
Views 31K
DIY
image Каждый год, 31 декабря, уважаемый хабраюзер anatoly_rr выкладывает вот такой календарик. В этом году мне понадобился подобный календарь немного более заблаговременно, поэтому пришлось постараться самому. Процесс баловства со скриптом на python увлек меня и получился небольшой генератор календарей на свой вкус и цвет. Мне столько не нужно, поэтому решил поделиться :)
Сразу отмечу, что с Анатолием я связывался и по-поводу использования его скрипта, и по-поводу данной публикации.

Теперь немного подробнее


Генератор умеет несколько систем счисления:
  • Шестнадцатеричная
  • Десятичная
  • Девятеричная (симметричная)
  • Восьмеричная
  • Троичная (симметричная)
  • Двоичная

Дополнительно

  • Можно задать цвета фона, года, дня недели, выходных и прочего. Есть несколько предустановленных вариантов расцветок для совсем ленивых.
  • Форматы вывода SVG, PNG, PDF.
  • Генерируемые года — 2011-2015.
  • Язык русский и английский (перевод заказывал фрилансеру).
  • Можно дать кому-нибудь прямую ссылку на результат.
Так же можно сгенерировать шаблоны для вырезки и склейки куба и додекаэдра. На кубе располагаются сразу 6 календарей на выбранный год во всех имеющихся системах счисления. По одному на каждую сторону. А на додекаэдре по одному месяцу выбранного года на каждой стороне. Честно сказать, кубик мне не очень понравился — мелковато все как-то (зато компактный), а вот додекаэдр порадовал. С учетом того, что он клеится из двух частей — можно эти части сделать разного цвета. На мой взгляд, выходит красиво.

А еще сделал «Календарь Майя». Статья на Ферре о данном генераторе календариков несколько раз напоминает нам о том, что 2012-й год является достаточно значимым в контексте очередного конца света. Заинтересовался данной темой. Цитирую из википедии: «Исходной точкой зрения для рассуждений по поводу «конца света» служит длинный счёт календаря майя, по которому на декабрь 2012 года приходится окончание текущего бактуна». Т.е. всему виной является этот календарь. Слегка углубившись все в ту же википедию, выяснил, что каледарь майя основывался на двацатеричной системе счисления и это неплохо вписывается в концепцию генератора. Конечно же, вместо привычных нам цифр, используются свои символы. Но надо понимать, что в реальности календарь майя был совсем другим и у меня представлен наш обычный календарь, просто в системе счисления майя.

Как это работает


Изначально календари генерил непосредственно скрипт на python. Потом немного переделал и теперь это просто несколько шаблонов, где изменяются нужные цвета перед выводом. С PNG и PDF все чуть-чуть сложнее — генерацией файлов в этом формате занимается inkscape. Сервер вроде как без проблем справляется, не тупит.

Как это не работает


Не работает отображение SVG для предпросмотра результата в IE и старых версиях браузеров.

Использованные материалы


Шестнадцатеричная система
Десятичная система
Девятеричная (симметричная) система
Восьмеричная система
Троичная (симметричная) система
Двоичная система
trinary.ru
Конец света
Цифры майя

Ну и немного фоток моего рукодельничества


Выбор блога для публикации («Сделай Сам») обусловлен именно наличием вот этих вещественных результатов. Магнитики на холодильник, карманные календари, напечатанные на пластике с помощью специального принтера Eltron P310 Card Printer — демонстрировать не буду, а вот бумажными фигурами похвастаюсь:

image

image

image

image


Еще раз ссылка, чтобы не крутить вверх.
Tags:
Hubs:
Total votes 73: ↑66 and ↓7 +59
Comments 32
Comments Comments 32

Posts