Очередное графическое отображение числа Пи

в 18:15, , рубрики: графическое отображение, Инфографика, условный цвет, число пи, метки: , ,

Тема не нова, достаточно набрать в поиске «графическое изображение Пи», чтобы убедиться в этом.

А вот публикация на эту тему на этом ресурсе. Для отображения цифр здесь используется условный цвет, при этом кодировка предельно простая — палитра 10 цветов, каждому произвольно выбранному цвету соответствует своя цифра.

Для заполнения досуга поставил себе задачу отобразить миллион десятичных знаков Пи в условном цвете, таким образом, чтобы (почти) каждый знак был (условно) различим по цвету, на графическом образе без специального увеличения, а в выборе способа кодировки была хоть какая то логика.

В стандартной модели RGB для кодирования одного пиксела используется три байта, по одному на каждый цвет. Воспользуемся этим обстоятельством и определим условный цвет следующим образом — каждые 9 последовательных цифр определяют цвет одного пиксела, три первых R-компоненту, три следующих G-компоненту, три последних из девяти B-компоненту. Далее аналогично кодируется следующий пиксел. Поскольку максимальное значение трехзначного десятичного числа 999, а восьмизначного двоичного 255, произведем масштабирование к диапазону 0 — 255. Теперь стало понятно почему в предыдущем абзаце присутствует слово «почти» в скобках. Разместим точки в квадратном растре. Определимся с количеством точек: 334 х 334 х 9 = 1 004 004 достаточно для миллиона знаков. Но число 334 (абсолютно субъективно) число некрасивое, другое дело 333 — душа радуется, правда до миллиона не доберем: 333 х 333 х 9 = 998001, не будем мелочиться.

Программирование создания картинки несложная задача, поскольку отображение нужного количества знаков в двоично-десятичном виде легко нашлось в интернете. Изначально создал файл в формате bmp, потом в графическом редакторе перевел в jpg.

Растр начинается с нижней левой точки. Для удобства просмотра на экране монитора каждый рассчитанный пиксел представлен на картинке квадратом 3х3, т.е. размерность картинки 999х999. А вот и изображение:

Автор: algrizik

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js