Как рисовать лабиринты. Садовый лабиринт – делаем своими руками

По традиции, еще со времен Древних Египта и Греции, под лабиринтом понимают участок местности с дорожками, тропинками, которые создают замысловатый рисунок и при этом ведут к центральной части. Изгородь из растений, высаженных в подобной форме, стала появляться в средневековых садах к середине XV в. Наверняка все любители Джерома К. Джерома помнят, как его герои блуждали по лабиринту (кстати, немаленькому – длина аллей ок. 500 м), находящемуся в Хемпптон-корте. Интересно, что хоть он был создан аж в 1690 году, но пройти по следам веселых персонажей из «Трое в лодке, не считая собаки» можно и сегодня.

Не чужда изгородь в подобной форме и русским садам, в усадьбах Архангельское, Кусково, Петергофе аллеи из аккуратно подстриженных кустов формировали четкий рисунок. Со временем композиции из живой изгороди усложнялись, создавая запутанные конструкции. Переменчивая мода на какое-то время забыла о лабиринтах, но в наши дни они снова стали объектом интереса ландшафтных дизайнеров.

Лабиринт у себя на участке

Если размеры участка позволяют, то вполне можно создать садовый лабиринт, и у этой идеи есть много достоинств:

  • это оригинальное, нетрадиционное обустройство сада;
  • великолепное средство развлечения для домашних и гостей;
  • полезно для развития детей.

Лабиринты бывают разных видов, например, гармоничной частью пейзажного сада станет фантазийный или цветочный, в регулярный сад органично впишется практически любой вариант. Посадочный материал для создания такого элемента ландшафта достать не проблема, ассортимент растений на рынке очень широкий, поэтому всегда можно подобрать растения, подходящие для запланированной высоты бордюра или стенки.


Растения, формирующие изгородь, определяют размеры композиции, можно создать детский мини-вариант диаметром до 2 метров, а можно и с поперечников в 10-20 м, из которых далеко не сразу найдешь выход.

Растения для сада-лабиринта

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

Для декоративной композиции средних размеров выбирают растения высотой до 50 см, например можно посоветовать спирею низкорослую, чашечковый зверобой, самшит, альпийскую смородину. Перечисленные виды растут в средней полосе. Если же замахнуться на большой лабиринт, в котором и взрослые люди проплутают некоторое время, то придется подбирать деревья, вырастающие до 3 м. Дизайнеры рекомендуют в этих целях использовать шиповник, барбарис Тунберга, граб, магонию, клен татарский, тис. Подойдет и уже упоминавшийся выше самшит, еще можно взять боярышник, иргу, форзицию среднюю.

Стоит постараться и подобрать сочетания видов кустарников таким образом, чтобы периоды цветения у них не совпадали, тогда ваш садовый лабиринт будет в цвету большую часть года.


Традиционная форма композиции - круг, но вполне допустимо устроить сад-лабиринт в форме квадрата, треугольника или в виде букв – инициалов человека. Вариантов интересных можно придумать множество, подключите к этому своих детей, чтобы и они поучаствовали в процессе. Простая схема включает вход, пару поворотов, выход. Среди простых форм можно назвать спираль, в которой все тропинки смыкаются в центре. Можно выбрать сквозную схему без выраженного центра, а если он будет, то расположить в нем фонтан или уютную беседку, а то и пруд или патио.

Лабиринтные формы

Помимо эстетической ценности, лабиринт является отличным средством для проведения досуга, устройства всевозможных конкурсов, соревнований, что будет особенно привлекательно для детей. В тупичках для детей родители могут сделать тайник с призами, фантами. А взрослые участники получат шанс отыскать здесь томик стихов, рюмку коньяка, гитару и т.п. В общем, при желании и некоторой креативности лабиринт можно превратить в прекрасное место для развлечений.

Выбор места для композиции

Окинуть взглядом лабиринт можно только сверху, поэтому целесообразно устраивать его рядом с возвышенностью, с которой будет возможно насладиться его видом сверху. Точкой обзора может стать и второй этаж дома. Обычно лабиринт располагают в зоне отдыха, неподалеку от детской площадки, так как для детей он обладает притягательной силой и становится любимым местом их игр.


Территориально этот элемент ландшафта можно устроить и между домом и садом, огородом. Впрочем, советуем предусмотреть и более короткую обходную дорожку с интересным покрытием.

Садовый лабиринт из живой изгороди

В ландшафтном дизайне различают несколько типов лабиринта по основному «строительному материалу». Живая изгородь до 3 метров высотой – идеальный материал. Но помните, что внешняя красота такого лабиринта сопряжена с необходимостью уделять изрядно сил и времени поддержанию деревьев в надлежащем виде, в том числе стрижке, обрезанию веток. Конечно, под устройство этого варианта требуется довольно большая площадь, но если уж вы можете себе такое позволить, то получите чудесное место для прогулок, а ваши дети – для игр.

Лабиринт из изгороди отличается долговечностью (при хорошем уходе, конечно). Быстро создать такой можно методом высадки однолетников, например кохии веничной, которая достигает 1 метра, обрастает густой листвой и хорошо формуется. Естественно на будущий год придется высаживать растения снова или все же приступать к сооружению композиции из многолетних кустарников.

Цветочный лабиринт

Это очень оригинальная организация цветника, цветы в данном случае высаживаются обычно по спирали. Лучше всего подойдут компактные цветы с прямыми стеблями и правильной формой. Так как цветочный лабиринт невысок и его можно охватить взглядом без проблем, то его форма должна быть эстетичной. Поэтому от чересчур раскидистых цветов придется отказаться, а также тех, что склонны к самосеву (мак, эшшольции). Из-за самосева композиция рискует быстро потерять изначально задуманную форму, контуры смажутся и рисунок потеряет в эстетичности.

Хорошие варианты для оформления – львиный зев, роза бордюрная, кустовая петуния.

Чтобы получить эстетичный вид, необходимо соблюдать однородную гамму оттенков и строгость в контурах, дабы границы клумб не размазывались. Можно устроить лабиринт не из одной, а из двух спиралей или линий, которые в определенном месте будут смыкаться. В таком можно высаживать растения двух контрастирующих окрасок.

Лабиринт может стать оригинальной клумбой, от созерцания которой всегда можно будет получить эстетическое. Но цветочную конструкцию можно приспособить и для прогулок. В этом случае между лентами из цветов прокладываются мощеные или присыпанные гравием дорожки, повторяющие лабиринтные проходы.

Каменный лабиринт

Свое обаяние имеет и композиция из камней, напоминающая руины некогда величественных культовых построек. План тот же – спираль, вдоль которой выкладываются небольшие камни приблизительно равного размера. Такой вариант предназначен, скорее, для созерцания, для пеших прогулок возводят каменные стены или используя крупные глыбы. Внести некоторое оживление в серый, несколько мрачноватый тон камней можно растениями.

На каменных стенах будут интересно смотреться лианы, ампельные виды (плющ, ипомея, клематис и др.), а в лабиринте из небольших камней можно высадить очитки, молодилу.

Фантазийная композиция

Этот тип наиболее близок к исконной сущности лабиринта – сооружения с крайне запутанными тропинками, по которым можно блуждать очень долго в поисках верной дороги. В фентезийном лабиринте не акцентируется центр, его просто нет, зато в изобилии присутствуют многочисленные тропинки, оканчивающиеся тупиком, множество похожих друг на друга поворотов и перекрестков. Войдя в такой, поневоле начинаешь ощущать себя искателем приключении.

Фантазийная композиция может охватить собой весь сад вместе с зоной отдыха, площадкой для детей и прочими дорожками. Только надо делать переходы делать короткими и часто чередовать их с поворотами, петлями. Тогда в поле зрения будет лишь пара-тройка метров. Такой эффект запутанности достигается за счет использования пергол, вьющихся растений на трельяжах, арок.

Каменный лабиринт в саду (видео)

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

Прогулка по лабиринту будет особенно приятна, если за поворотом путника будет ждать красивая скамья, изящная клумба или оригинальная скульптура.

Создание лабиринта своими руками - процесс крайне увлекательный и творческий, периодически в него можно вносить изменения и воплощать новые идеи, так что это может стать любимым занятием, а выстроенный самостоятельно объект — наглядным свидетельством вашей креативности и законным поводом для гордости. Рекомендуем прочесть статью о

Пожалуй, все владельцы дачных участков пытаются сделать во дворе что-то необычное и оригинальное, что-то такое, что выделяло бы его из остальных. Это может быть небольшой , спрятанная между развесистыми деревьями, другие варианты. Это все классика, но есть и другие, более таинственные садовые элементы – вспомните, к примеру, лабиринты во времена Средневековья, который обрамляли роскошные дворцы! И нечто подобное (в более скромных масштабах, разумеется) может сделать любой владелец загородного участка, если у него есть возможности и желание. И о том, как сделать садовый лабиринт своими руками , мы и расскажем в сегодняшней статье.

Интересно! Знаете ли вы, что существует несколько способов корчевания пней? Если желаете узнать об этом поподробнее, то для вас!

Но чем хорош лабиринт в саду? Вы удивитесь, но у данной затеи есть многочисленные преимущества:

  • сад будет обустроен нетрадиционно, оригинально;
  • детишкам это будет полезно в плане развития;
  • домашние и гости смогут отлично развлечься.

Определяемся, что собой представляет садовый лабиринт

Сразу оговоримся, что любой лабиринт является крайне сложной системой, которая состоит из запутанных проходов и дорожек, идущих к единой цели, а именно к центру всей композиции. Вовсе не обязательно, чтобы лабиринт в саду был большим – есть среди них и относительно маленькие, отличающиеся подчеркнутой простотой выполнения. Помимо этого, для создания композиции можно использовать самые разные материалы – от традиционной живой изгороди до оригинальных дорожек из камня.

А если у вас есть дети, то помните, что такой лабиринт очень быстро станет их любимым местом для игр, ведь там так интересно играть в прятки! Для взрослых же это – отличная возможность не спеша прогуляться, увлекшись своими мечтами и мыслями.

Обратите внимание! Если говорить о регулярном саде, то для него подойдет практически любой тип лабиринта, в то время как для пейзажного лучше использовать фантазийный или каменный.

Теперь – непосредственно к процессу создания лабиринта!

Этап первый. Месторасположение, композиция

До того как начинать что-то делать, определитесь с тем, где будет располагаться композиция. Очевидно, что практически все лабиринты увидеть полностью возможно только сверху, по этой причине очень хорошо, если у вас на участке есть какая-то возвышенность или дом с двумя этажами (со второго этажа можно будет любоваться прелестями композиции). А что же касается места размещения, то лучше обустроить лабиринт рядом с детской площадкой или зоной отдыха.

Самым примитивным вариантом лабиринта является закрученная спираль, дорожки которой соединяются по центру. А вот с композициями, в которых есть несколько выходов или тупик, все намного сложнее. И отличным тому примером может являться любой парковый лабиринт Европы, а если его упростить, то можно получить и собственную оригинальную схему.

При создании лабиринта следует уделять внимание как переплетению дорожек, так и «сердцу» композиции, то есть центральной части. Там рекомендуется обустроить зону отдыха, для чего можно, например, поставить столик с креслами, соорудить перголу и так далее. «Сердцем» может стать даже красивая скульптура, клумба, водоем или даже солнечные часы.

Этап второй. Выбираем растения

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

При создании среднего лабиринта используются растения высотой не более 0,5 метра (это может быть низкорослая спирея, альпийская смородина, самшит). Все указанные культуры произрастают в средней полосе. А если вы затеваете действительно что-то масштабное – композицию, в котором и взрослые некоторое время будут блудить, то оптимальным вариантом будут деревья высотой до 3-х метров. По мнению опытных специалистов, для этого больше всего подходит тис, шиповник, татарский клен, граб, другие.

Обратите внимание! Сочетание видов культур должно быть подобрано так, чтобы те имели разные периоды цветения, то есть цвели не в одно время. Только в таком случае садовый лабиринт будет выглядеть великолепно большую часть года!

Как уже отмечалось, традиционно садовые лабиринты выполняются в виде круга, хотя при желании можно использовать любую другую форму – треугольника, квадрата, его можно даже сделать в виде инициалов. Словом, вариантов масса, поэтому можете смело подключать к процессу детей – она с огромным удовольствием в нем поучаствуют. Самый примитивный вариант композиции состоит из:

  • входа;
  • нескольких поворотов;
  • выхода.

Что же касается форм, то самыми простыми из них являются спиралевидные композиции, где все дорожки соединяются по центру. Существует также сквозная схема, в которой отсутствует ярко выраженное «сердце». А теперь разберемся, какие виды лабиринтов самые популярные в ландшафтном дизайне.

Этап третий. Беремся за дело – несколько возможных вариантов действий

Существует четыре основных видов композиции, и дальнейшие ваши действия будут зависеть от того, какой именно из них вы выбрали. Итак, вкратце со всеми ознакомимся.

Вариант №1. Композиция из живой изгороди

Самым привлекательным, а оттого и заманчивым вариантом является садовый лабиринт, выполненный из живой изгороди. Вполне очевидно, что этот вариант является еще и самым трудоемким и сложным в выполнении. Культуры (это могут быть как деревья, так и кусты), образующие ходы в такого рода композиции, нуждаются в постоянном уходе и частой стрижке. Более того, площадь такой вот прелести будет немалой – никакие 6 соток в данном случае уже не спасут.

Хотя если площадь участка достаточно большая, а вы сами преисполнены желанием поддерживать живую изгородь «в форме», то такая конструкция превратится в ваше любимое место для прогулок! Скорее всего, не только дети, но и внуки смогут играть в запутанных ходах, так как при должном уходе композиция будет все так же привлекательной десятки лет.

Если планируете использовать в качестве «стройматериала» живую изгородь, то советуем прибегнуть к:

  • кизильнику блестящему;
  • лавру;
  • бирючине;
  • вечнозеленому самшиту.

А ежели желания ждать того, когда вырастут многолетние кусты, у вас нет, можете сделать все по-быстрому, используя быстрорастущие однолетние культуры (это может быть, к примеру, веничная кохия, которая вырастает не выше 1-го метра). Она в рекордно короткие сроки образует плотную зеленую массу, к тому же, ее достаточно легко стричь. Хотя есть и существенный минус – такой лабиринт из однолетних культур придется восстанавливать каждый год, по этой причине он – скорее временный вариант.

Вариант №2. Лабиринт из камня

Для создания лабиринта также можете использовать камень – в таком случае готовая композиция будет внешне напоминать руины древнего сказочного строения. Безусловно, она будет предназначаться исключительно для обзора и, может быть, для пеших прогулок, поскольку использовать ее для «блуждания» едва ли получится. Для выкладывания декоративной спирали берите маленькие камешки, имеющие одинаковые размеры, либо же кладку-бортик. А если использовать большие камни, то это поможет сделать своего рода прогулочный вариант композиции.

При желании или же, к примеру, если вам кажется, что лабиринт из камня выглядит чересчур мрачно, можете «оживить» его с помощью растений, высаженных между валунами. В данном случае если использовались маленькие камешки, то отлично подойдут «альпийские» культуры (молодило, очиток). А вот для преображения каменной стены специалисты советуют брать плющ, кобею, жимолость или же дихондру.

Вариант №3. Композиция из цветов

Лабиринт в виде спиралевидных цветочных посадок пользуется огромной популярностью. Важно, чтобы были подобраны компактные цветы, стебли у которых прямостоячие. Культуры должны с четкостью повторять все очертания данной композиции, из-за чего раскидистые цветы вряд ли подойдут (они, как известно, «любят» разрастаться). Пересеивающиеся культуры также нежелательно использовать для создания садового лабиринта (это может быть эшшольция или мак), поскольку они, как видно из названия, склонны к самосеву.

Обратите внимание! Если эти самосеющиеся культуры все же использовать, то композиция потеряет четкость и станет расплывчатым пятном. Поэтому лучше брать для этого компактные растения – розу бордюрную, например, или же кустовую петунию.

Что же касается цвета, то лабиринт в этом плане должен быть максимально четким и однородным, в противном случае очертания смажутся и не будут восприниматься целостно. А если композиция будет состоять из двух спиралей, соединенных по центру, то можете использовать два цвета, контрастирующих друг к другу. К слову, цветочная композиция может выступать в роли только обычной клумбы, то есть ее можно лишь осматривать или же использовать для прогулок. Если были выбраны прогулки, то между посадками проложите дорожки из гравия, четко повторяющие все проходы.

Вариант №4. Фантазийная композиция

Данный вариант является наиболее непредсказуемым, так как он находится в стороне от четких линий и геометрических законов. Никакая планировка схемы здесь не требуется, равно как и наличие «сердца»; основной упор здесь делают на предельной запутанности ходов, максимальном количестве поворотов, тупиках в неожиданных местах. И, прогуливаясь по такому лабиринту, человек сможет принять участие в увлекательном путешествии, в ходе которого не будет знать, что ожидает его за следующим перекрестком.

Лабиринты фантазийного типа интересны тем, что могут являться не только строго очерченной зоной загородного участка, как описанные выше варианты, а расположиться на всей территории сада, включая игровую зону, зону для отдыха и проч. Необходимо лишь, чтобы переходы были незначительными и «перемешивались» с различными перекрестками и поворотами. Только в таком случае человек, находящийся внутри композиции, не будет знать о том, что ждет его всего в нескольких метрах впереди. И для этого могут использоваться перголы, трельяжи или арки, украшенные вьющимися растениями.

Все растительные культуры, в том числе живая изгородь, будут здесь свободно произрастать, разрастаться так, как «захочется», дабы скрыть от человека все, что находится в нескольких шагах. И после каждого поворота посетителя будет ждать что-то необычное и в то же время приятное: прекрасная клумба, удобная скамья для отдыха, гипсовая скульптура и т. д.

Подводя итоги

Если вы сделаете садовый лабиринт своими руками, то жалеть о своей затее вы однозначно не будете, так как данный элемент оформления сада всегда будет привлекать внимание, а вы, в свою очередь, будете гордиться своим творением! И не стоит опасаться того, что путь к мечте может оказаться чересчур запутанным. В лабиринтах выход имеется всегда, необходимо лишь приложить усилия и найти его!

Вам понадобится

  • Фанера, инструменты для работы с деревом, материал для обшивки, звуковая составляющая, провода, лампы для подсветки, игрушки и аксессуары.

Инструкция

Для начала необходимо определиться с тем, каким именно будет ваш . В городской довольно-таки трудно его сделать, если только у вас не двухъярусная квартира. Лучше всего для создания лабиринт а подойдет загородный дом или дача. Подумайте о том, где вы хотите разместить будущий лабиринт . Это может быть подвальное помещение вашего дома. Это придаст вашему лабиринт у больше таинственности и загадочности. Также можно сделать небольшой лабиринт , в котором будут играть ваши дети. Разместив его под второго этажа, вы сможете сверху наблюдать за тем, как ваш ребенок пытается найти единственно правильный путь.

Допустим, что вы выбрали местом для будущего лабиринт а подвальное помещение. теперь самое время подумать о чертеже. Это одна из самых главных частей постройки лабиринт а. Лабиринты бывают разного типа и разной сложности. Лучше всего в доме лабиринт прямоугольной или квадратной формы. Такой лабиринт прост в постройке. Разработайте подробный лабиринт а на бумаге. Можно взять уже готовую схему из какого-либо источника, а можно использовать собственную фантазию. Помните, что у лабиринт а должен быть только один правильный выход. Также старайтесь не делать слишком сложных путей. Все-таки это небольшое развлечение для ваших гостей, а не пытка. После изготовления эскиза сделайте точный чертеж с размерами. Ширина должна быть достаточной, чтобы в нем спокойно перемещался взрослый человек, но и не очень широкой, чтобы создавал впечатление замкнутого пространства.

Теперь, когда готов подробный чертеж, можно приступать непосредственно к подготовке помещения. Необходимо полностью очистить его от лишних предметов. Также исследуйте пол, стены и на наличие неровностей. Их необходимо удалить. Теперь нужно закупить материал, из которого вы будете делать коридоры будущего лабиринт а. Лучше всего использовать нетолстые листы и фанеры. Они легки в обработке и не занимают много места. Материал нужно взять с запасом на тот случай, если вы испортите часть заготовок.

Из купленного материала сделайте заготовки лабиринт а. Их будет очень много, поэтому следует по мере изготовления собирать их, начиная от дальней стены. Крепить между собой детали рекомендуется шурупами. Следите за тем, чтобы снизу детали плотно прилегали к полу и не оставалось маленьких щелей, через которые может проникать свет. Когда все заготовки будут установлены, нужно продумать освещение. Здесь все зависит только от вашей фантазии. Лучше всего установить небольшие лампы в разных частях лабиринт а, но делать это нужно равномерно, чтобы не выделить правильного пути выхода.

После установки освещения нужно позаботиться о внешнем украшении. Можно покрасить стенки лабиринт а в какой-то цвет или имитировать поверхность дубовых досок. Но лучше всего обшить стены лабиринт а тканью, например, материалом, похожим на бархат. Также задумайтесь об аксессуарах. Установите стилизованные игрушки с таинственной тускловатой подсветкой. Красиво будут смотреться летучие мыши со светящимися глазами. Также можно повесить портреты магов или колдунов, слегка подсветив их. Будет очень реалистично, если вы добавите ко всем еще и звуковое сопровождение. Для этого установите несколько

В этой статье речь пойдет о самом простом в реализации алгоритме генерации «идеального» лабиринта и его применении для поиска пути.

Мы рассмотрим алгоритм, основанный на бэктрекинге, позволяющий создавать лабиринты без циклов, имеющие единственный путь между двумя точками. Алгоритм не самый быстрый, довольно требователен к ресурсам, по сравнению с алгоритмом Эйлера или Крускала, но очень прост в реализации и позволяет создавать ветвистые лабиринты с очень длинными тупиковыми ответвлениями.

Заинтересовавшихся - прошу под кат.

В русскоязычном интернете очень мало информации по алгоритмам генерации лабиринтов, что и стало причиной для написания этой статьи.
Примеры кода на языке Си, а также полный исходный код проекта на GitHub доступны под лицензией GNU GPLv3.
Ссылки на англоязычные ресурсы и проект вы найдете в конце статьи.

Описание алгоритма
Замечание: предполагается, что изначально у каждой клетки есть стенки со всех четырех сторон, которые отделяют ее от соседних клеток.


2. Пока есть непосещенные клетки



    3. Уберите стенку между текущей клеткой и выбранной
    4. Сделайте выбранную клетку текущей и отметьте ее как посещенную.
  2. Иначе если стек не пуст

    2. Сделайте ее текущей
  3. Иначе
    1. Выберите случайную непосещенную клетку, сделайте ее текущей и отметьте как посещенную.

Вы, вероятно, заметили что при выполнении условия 3, готовый лабиринт вероятнее всего будет иметь изолированную область.
Это условие включено в алгоритм в порядке исключения, на практике при нормальной работе алгоритма и правильных исходных данных, оно не выполняется никогда.

Реализация
Как уже сказано выше, предполагается, что при начале работы алгоритма все клетки отделены стенками.
Иллюстрация работы алгоритма
 0.    < - Начальная матрица.

1.    < - Выбираем начальную точку стартовой.

2.1.   < - Перемещаемся к случайному непосещенному соседу, пока таковые есть.

2.2.   < - Непосещенных соседей нет. Возвращаемся назад по стеку, пока нет непосещенных соседей.

2.1.   < - Непосещенные соседи есть. Перемещаемся к случайному непосещенному соседу.

2.    < - Нет непосещенных клеток. Лабиринт сгенерирован.

Программный код
Приступаем к самому интересному.

Начнем действовать по порядку и сначала сгенерируем начальную матрицу, с которой будет работать алгоритм.
Для удобства условимся, что все типы клеток заданы в перечислении.

Int maze; //создаем матрицу - двумерный массив for(i = 0; i < height; i++){ for(j = 0; j < width; j++){ if((i % 2 != 0 && j % 2 != 0) && //если ячейка нечетная по x и y, (i < height-1 && j < width-1)) //и при этом находится в пределах стен лабиринта maze[i][j] = CELL; //то это КЛЕТКА else maze[i][j] = WALL; //в остальных случаях это СТЕНА. } }
Теперь, когда все приготовления сделаны, можно приступать к генерации.

Typedef struct cell{ //структура, хранящая координаты клетки в матрице unsigned int x; unsigned int y; } cell; typedef struct cellString{ cell* cells; unsigned int size; } cellString;
Структуры значительно упростят жизнь при обмене информацией между функциями.

Отрывок кода, отвечающий за генерацию:

Cell startCell = {1, 1} cell currentCell = startCell; cell neighbourCell; do{ cellString Neighbours = getNeighbours(width, height, maze, startPoint, 2); if(Neighbours.size != 0){ //если у клетки есть непосещенные соседи randNum = randomRange(0, Neighbours.size-1); neighbourCell = cellStringNeighbours.cells; //выбираем случайного соседа push(d.startPoint); //заносим текущую точку в стек maze = removeWall(currentCell, neighbourCell, maze); //убираем стену между текущей и сосендней точками currentCell = neighbourCell; //делаем соседнюю точку текущей и отмечаем ее посещенной maze = setMode(d.startPoint, d.maze, VISITED); free(cellStringNeighbours.cells); } else if(stackSize > 0){ //если нет соседей, возвращаемся на предыдущую точку startPoint = pop(); } else{ //если нет соседей и точек в стеке, но не все точки посещены, выбираем случайную из непосещенных cellString cellStringUnvisited = getUnvisitedCells(width, height, maze); randNum = randomRange(0, cellStringUnvisited.size-1); currentCell = cellStringUnvisited.cells; free(cellStringUnvisited.cells); } while(unvisitedCount() > 0);
Как видно, реализация алгоритма проста и абстрактна от теории, как говорится, «справится даже ребенок».
Чтобы не перегружать статью, код функций, используемых в вышеприведенном отрывке, под спойлером.

Код функций

Функция getNeighbours возвращает массив непосещенных соседей клетки

CellString getNeighbours(unsigned int width, unsigned int height, int** maze, cell c){ unsigned int i; unsigned int x = c.x; unsigned int y = c.y; cell up = {x, y - distance}; cell rt = {x + distance, y}; cell dw = {x, y + distance}; cell lt = {x - distance, y}; cell d = {dw, rt, up, lt}; unsigned int size = 0; cellString cells; cells.cells = malloc(4 * sizeof(cell)); for(i = 0; i < 4; i++){ //для каждого направдения if(d[i].x > 0 && d[i].x < width && d[i].y > 0 && d[i].y < height){ //если не выходит за границы лабиринта unsigned int mazeCellCurrent = maze.y].x]; cell cellCurrent = d[i]; if(mazeCellCurrent != WALL && mazeCellCurrent != VISITED){ //и не посещена\является стеной cells.cells = cellCurrent; //записать в массив; size++; } } } cells.size = size; return cells;
Функция removeWall убирает стенку между двумя клетками:

MazeMatrix removeWall(cell first, cell second, int** maze){ short int xDiff = second.x - first.x; short int yDiff = second.y - first.y; short int addX, addY; cell target; addX = (xDiff != 0) ? (xDiff / abs(xDiff)) : 0; addY = (yDiff != 0) ? (yDiff / abs(yDiff)) : 0; target.x = first.x + addX; //координаты стенки target.y = first.y + addY; maze = VISITED; return maze; }
Сначала вычисляется значение разности координат второй и первой точек. Очевидно, значение может быть либо отрицательное, либо положительное, либо 0.

Надо найти такие координаты xy, чтобы при сложении их с координатами первой точки получались координаты стенки.

Так как мы точно знаем, что вектор разности между координатами стенки и первой точке равен либо (|1|, 0) либо (0, |1|), мы можем этим воспользоваться.

Таким образом, аддитив для x координаты при xDiff != 0 будет равен xDiff / |xDiff|, при xDiff = 0, нулю. Для y соответственно.
Получив аддитивы для x и y, мы легко вычисляем координаты стенки между первой и второй клетками и назначаем клетку по этим координатам посещенной.


Итак, теперь у нас есть генератор лабиринтов, который может строить запутанные лабиринты, размер которых ограничен только размером оперативной памяти.

В итоге, мы можем получить что-то такое:

Лабиринты. Осторожно, трафик!

100x100


  500x500



Генерация работает, теперь дело за малым: найти в таком лабиринте выход.

Алгоритмов поиска пути несколько больше, чем алгоритмов генерации, и некоторые из них, если будет интерес читателей, я освещу в следующих статьях, но пока что будем довольствоваться тем, что есть, и «пройдем» лабиринт тем же алгоритмом.

И все еще сильнее упрощается, так как нам больше не надо убирать стенки.

Алгоритм поиска пути бэктрекингом:
1. Сделайте начальную клетку текущей и отметьте ее как посещенную.
2. Пока не найден выход
  1. Если текущая клетка имеет непосещенных «соседей»
    1. Протолкните текущую клетку в стек
    2. Выберите случайную клетку из соседних
    3. Сделайте выбранную клетку текущей и отметьте ее как посещенную.
  2. Иначе если стек не пуст
    1. Выдерните клетку из стека
    2. Сделайте ее текущей
  3. Иначе выхода нет

Выходной точкой, как и стартовой, может выступать любая точка лабиринта, не являющаяся стенкой.
Традиционно, выход должен быть «прижат» к одной из стенок, но по сути может находиться где угодно.
Все таки, в данном случае, «вход» и «выход» - всего лишь две точки, между которыми надо найти путь.

Критерий нахождения «выхода» очень прост: достаточно сравнить координаты текущей точки и координаты «выхода»: если они равны, путь между стартовой и выходной точками найден.

Посмотрим что вышло:

Вот и все, что нужно для самой простой реализации генератора случайных лабиринтов.

Для тех, кто заинтересовался, полный исходный код проекта на GitHub.

Наверное, каждый владелец загородного участка стремится создать на нем нечто оригинальное и выдающееся, то, что отличало бы его от соседских владений. Что же это может быть? Фонтан уже раскидывает прозрачные капли в небольшой прудик, между деревьями притаилась альпийская горка… Наряду с этими, уже традиционными, для сада элементами, существуют и другие – необычные, таинственные, а потому и чрезвычайно притягательные. Вспомним хотя бы средневековые садовые лабиринты, обрамляющие дорожки роскошных дворцов и домов знати. Подобный лабиринт (пускай и довольно скромных размеров) может позволить себе любой ценитель прекрасного, имеющий в своем распоряжении собственный участок земли. Как сделать лабиринт в саду своими руками мы и хотим вам рассказать.

Любой лабиринт представляет собой сложный по строению участок с запутанными дорожками, проходами, ведущими к определенной цели – центру всей композиции. Садовые лабиринты не обязательно должны быть огромных размеров, существуют и довольно маленькие, подчеркнуто простой формы. Кроме того, для их создания могут использоваться различные материалы, начиная, от традиционной живой изгороди до необычных каменных дорожек.

Если в вашей семье подрастают дети, то будьте уверены, что лабиринт отныне станет любимым местом для их игр – в нем так интересно прятаться и догонять друг друга! Ну а взрослые смогут неспешно прогуливаться по запутанным ходам, погрузившись в мысли и мечты.

Изогнутые линии и контрастность цветов придают этому лабиринту особой очарование

В регулярный сад абсолютно органично впишутся переплетения ходов любого вида, в пейзажном саду лучше всего организовать каменный или фантазийный лабиринт.

Определяем композицию лабиринта

Прежде, чем приступать к созданию лабиринта, следует определиться с его месторасположением. Композицию большинства лабиринтов можно просмотреть полностью только с высоты, поэтому замечательно, если на участке есть возвышенность с беседкой или двухэтажный дом, со второго этажа которого можно будет любоваться окружающими красотами. Что касается размещения самого лабиринта, то лучшим местом для него будет участок возле зоны отдыха или детской площадки.

Наипростейшая форма лабиринта – это закрученная спираль, где все дорожки смыкаются в центре. Более сложно создаются композиции с тупиками и несколькими выходами. В качестве наглядного примера можно взять любой рисунок с европейским парковым лабиринтом и, немного упростив его, создать свою собственную схему.

При создании композиции, уделите внимание не только переплетению ходов и мощению дорожек, а и центральной площадке – «сердцу» лабиринта. Здесь желательно расположить зону отдыха, например, поставить уютную перголу или плетеные кресла со столиком, растения в контейнерах. Центром также может стать интересная клумба, скульптура, небольшой пруд с фонтаном, солнечные часы.

Европейский сад-лабиринт — пример для подражания

Рассмотрим наиболее распространенные в ландшафтном дизайне типы лабиринтов.

Сад-лабиринт из живой изгороди

Лабиринт из высокой живой изгороди, несомненно, самый заманчивый вариант, однако и наиболее трудоемкий. Кустарники или деревья, формирующие ходы в таком лабиринте, потребуют постоянного ухода и регулярной стрижки. Да и площадь для подобной роскоши потребуется немалая, явно, что шестью сотками обойтись не получится. Однако, если участок у вас немаленький, а желание поддерживать форму изгороди присутствует, то подобный лабиринт обязательно станет излюбленным местом ваших прогулок. Наверняка, не только ваши дети, но и внуки смогут играть в салочки, бегая по запутанным ходам, ведь живая изгородь, высаженная правильно, при должном уходе не теряет своей привлекательности на протяжении десятков лет.

Для лабиринта из невысокой изгороди важен общий рисунок

Для формирования лабиринта из живой изгороди подойдут кизильник блестящий, бирючина обыкновенная, вяз мелколистный, самшит вечнозеленый, лавр обыкновенный. Если у вас нет желания долго ждать, пока подрастут многолетние кустарники, можно создать вариант-экспресс из быстрорастущих однолетних растений, к примеру, из кохии веничной, высота которой достигает 1 м. Она быстро создаст плотную зеленую массу и прекрасно поддается стрижке. Единственный недостаток – восстанавливать такую изгородь придется каждый год заново, поэтому она подходит исключительно как временный вариант.

Цветочный лабиринт в саду

Очень популярный и другой вид лабиринта – цветочные посадки в виде спирали. Цветы для такой клумбы подбираются компактные, правильной формы, с прямостоячими стеблями. Растения должны четко повторять выровненные очертания спирали лабиринта, поэтому раскидистые и склонные к разрастанию виды для этих целей не подойдут. Склонность к самосеву – еще одна особенность, которая заставляет отказаться от посадок в лабиринте красивых пересеивающихся растений, например, мака или эшшольции.

Самосев этих цветов быстро приведет к тому, что четкие линии лабиринта превратятся в смазанное пятно. Лучше обратите свое внимание на компактные однолетники или многолетние растения – кустовую петунию, львиный зев, сальвию, колеус, бордюрную розу.

Важно, чтобы цветочные клумбы четко следовали контуру лабиринта

Цветовое решение такого лабиринта должно быть максимально четким и желательно однородным, иначе границы клумбы будут зрительно смазываться и не восприниматься как единое целое. Если же лабиринт будет состоять из двух смыкающихся спиралей или линий, то в этом случае вполне возможно применить для них два контрастирующих цвета.

Лабиринт из цветов может выполнять функцию обычной клумбы, то есть предназначаться исключительно для обзора, либо же быть местом для прогулок. В последнем варианте между цветочными лентами прокладываются мощеные или гравийные дорожки, которые также повторяют проходы лабиринта.

Каменный лабиринт

Каменный лабиринт — создание магического элемента

Можно выполнить лабиринт из камня, тогда он станет похож на остатки древнего магического строения. Так же, как и цветочная клумба, он может быть создан лишь для обзора или же представлять из себя масштабное прогулочное место. Декоративная спираль выкладывается небольшими одинаковыми по размеру камешками или кладкой-бортиком. Крупные валуны или же каменные стены создают прогулочный вариант лабиринта. При желании, если вам кажется, что каменный лабиринт выглядит слишком мрачно, можно «оживить» безмолвные валуны, посадив между ними растения. Если лабиринт создан из маленьких камешков, то лучшим выбором для его озеленения станут всевозможные очитки, молодила и другие «альпийцы». Каменную стену способны преобразить ампельные или лазающие растения, например, дихондра, плющ, девичий виноград, клематис, жимолость, ипомея, кобея.

Фантазийный вариант лабиринта

Это самый непредсказуемый вариант лабиринтов, где не торжествуют четкие линии и определенные законы геометрии. Здесь не требуется заранее спланированной схемы и наличие центра, потому что ставка делается на максимальную запутанность ходов, неожиданность тупиков, поворотов и перекрестков. Прогулка по такому лабиринту должна превратиться в занимательное путешествие, когда не знаешь, что встретит тебя за очередным углом.

Вход в фантазийный сад-лабиринт — в таком, и правда, можно заблудиться

Фантазийная композиция интересна тем, что может стать не только одним ограниченным элементом участка, как другие варианты лабиринтов, а занять территорию всего сада вместе с зоной отдыха, детской площадкой и дорожками. Главное условие, чтобы все переходы были небольшими, часто чередовались с поворотами и петлями. Таким образом, находясь в лабиринте, вы не будете видеть, что ждет вас даже на расстоянии нескольких метров. Подобное композиционное решение создается с помощью арок, пергол, трельяжей с вьющимися растениями.

Кусты и деревья, а также живые изгороди здесь растут свободно, разрастаясь, так, как им вздумается, чтобы скрыть все то, что находится на расстоянии в несколько шагов. За каждым поворотом такого лабиринта можно расположить нечто приятное и неожиданное: удобную скамейку, необычную клумбу или скульптуру.

Создав лабиринт своими руками, вы никогда не пожалеете о своем решении, ведь этот элемент ландшафтного дизайна будет привлекать внимание всегда и обязательно станет вашей личной гордостью. И не пугайтесь того, что путь к этой мечте может стать сложным и запутанным. Любой лабиринт всегда имеет выход, стоит лишь немного постараться и найти его!