Если выкладывать квадратную плитку с одним простым рисунком — диагональю или парой дуг — в случайных поворотах, вместо ожидаемой каши возникают бесконечные извилистые дорожки, петли и лабиринты. Такие плитки встречаются в паркете и изразцах, на обложках и в логотипах, а программисты знают их по однострочной программе для Commodore 64 — 10 PRINT CHR$(205.5+RND(1)); : GOTO 10. Она печатает вперемешку прямые и обратные косые черты, и экран заполняется бесконечным лабиринтом. Этой строчке даже посвящена книга (MIT Press, 2012).
Как это устроено
Полотно делится на квадратную сетку; «Плиток» — сколько клеток ложится по короткой стороне. Для каждой клетки генератор бросает монетку: с вероятностью «Перекос» плитка ложится в одном положении, иначе — в другом. Что это значит, зависит от «Плитки». Дуги — две четверти окружности с центрами в противоположных углах, каждая соединяет середины соседних сторон. Концы дуг у соседних плиток всегда совпадают, поэтому линии нигде не обрываются: они замыкаются в петли или уходят за край. Диагонали — тот самый лабиринт «10 PRINT». Треугольники — исходная плитка Труше: квадрат, разрезанный диагональю, с закрашенной половиной в одном из четырёх положений (они выбираются равновероятно, и «Перекос» здесь не действует). Шестиугольники несут по три дуги вокруг чередующихся вершин и складываются в плавные кольца и «пузыри».
В режиме тайла число клеток округляется до целого, и случайные повороты ложатся на тор: правый край продолжает левый. «Обводка» рисует под каждой линией полосу пошире «Цветом обводки» — линии превращаются в ленты. Слой векторный — его можно выгрузить в SVG для плоттера.
Немного истории
В 1704 году французский монах Себастьен Труше — инженер, изобретатель и один из создателей шрифта Romain du Roi — опубликовал в записках Парижской академии наук «Мемуар о сочетаниях». Он разглядывал керамические плитки, разделённые диагональю на две цветные половины, и перечислял узоры, которые дают их повороты. Почти через три века, в 1987 году, металловед Сирил Стэнли Смит вернулся к этому мемуару в журнале Leonardo и предложил вариант с двумя дугами — именно его сегодня обычно и называют плитками Труше. Смита занимала топология: дуги складываются в кривые, которые никогда не пересекаются и не кончаются.
Что покрутить
- «Дуги», «Толщина линии» около 0,5 и «Обводка» 0,3 — узор из переплетённых лент, как плетёная тесьма.
- «Перекос» 0,1–0,2 выпрямляет узор в почти правильные диагональные волны с редкими петлями.
- «Раскраска» «случайно» при палитре из 5–7 цветов даёт лоскутное одеяло, «градиент» плавно перекрашивает поле из угла в угол.
- «Треугольники» без обводки в двух контрастных цветах — плитка Труше 1704 года.
- Положите сверху «Симметрию обоев» с группой p4m или p4g — случайный лабиринт станет строгим орнаментом (стопка «Орнамент из Труше»).