Публикации сообщества

Людмила Рождественская • 8 декабря 2018

STEAM-идея: эшеровские замощения с помощью черепашек-исполнителей

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

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

Кроме того, работа по замощению - идеальная активность для ремикс-проектов. Условие для этого - разнообразие паттернов (базовых элементов замощения) и произвольность выбора в создании своего собственного рисунка.

Знакомим с эшеровскими замощениями на бумаге

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

Почему бы не поручить замощения черепахам?

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

Описание идеи:

  • В среде визуального программирования (Scratch, Pencil Code) нужно организовать движение черепах,  стартующих из вершин прямоугольной сетки, заставляя их рисовать фигуры-паттерны. Свои примеры я выполнила в среде Pencil Code.
  • Одновременно в нашей программе на поле будут рисовать, исполняя свой танец, сразу 8 черепах. Они вводятся в начале программы.
  • Мы используем здесь две системы координат: абсолютную (декартову) для расстановки черепах на плоскости, и относительную (относительно черепашки) - для программирования движения.
  • Первоначально черепахи устанавливаются в такие стартовые положения на клетчатом поле, чтобы начать движение синхронно и при выполнении подпрограммы “закрыть” поле соприкасающимися (или частично накладывающимися паттернами). Сложность формы для паттерна замощения задается в подпрограмме движения черепахи. Первоначальные положения и повороты углов для каждой из черепах записываются в подпрограмме startnew = ->
  • Черепахи оставляют след на клетчатом поле, который, в совокупности, образует то или иное эшеровское замощение. Каждая из черепах выполняет подпрограмму draw = (Turt) ->, создавая паттерн, одинаковый для каждой из черепах.
  • В геометрии черепах синхронность их движения определяется выполнением ими одной и той же подпрограммы Turt. Определенные точки плоскости достигаются черепахой, управляемой следующими основными командами: движение вперед (fd), повороты направо (rt 90) и налево (lt 90). Например, 100 шагов вперед, направо 90 градусов, затем 50 шагов вперед:
    • Turt.fd 100
    • Turt.rt 90
    • Turt.fd 50
  • Можно задать и произвольный угол поворота в градусах: например,Turt.rt 30 (правый поворот на 30 градусов).
  • Увеличивая количество черепах и внося небольшие изменения в подпрограмму startnew = ->, можно замостить большую площадь холста.

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

Этап о. Вводим в программу 8 черепах!

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

Этап 1. Замощение клетчатого поля квадратами

Здесь задаем основные переменные подпрограммы: (X,Y) - координаты начального положения первой черепахи (ее расположения на сетке), а также расстояния между черепахами на сетке r и h. Значения последних для замощения квадратами будут равны. Меняя их, получим замощение прямоугольниками. 

В качестве базовых элементов можно также брать правильные многоугольники: треугольники и 6-ти угольники.

Математически доказано, что регулярное замощение плоскости возможно только тремя правильными многоугольниками: треугольникомквадратом и шестиугольником

Чем сложнее базовая фигура, тем красивее рисунок замощения. В любом случае, образец стоит сначала изучить, нарисовать на бумаге.

Исполним простейшее замощение  - квадратами. Каждая черепашка рисует свой квадрат, всего их получается 8 - по числу черепах!

Получаем: Замощение квадратами

Этап 2. Замощение эшеровскими паттернами. Сдвиг (параллельный перенос)

Замощение фигурами 1 (параллельный перенос, сдвиг)

Разные элементы эшеровского замощения можно также предварительно опробовать с учениками на геоборде, где это можно сделать с помощью инструмента “резинка”.

Geoboard как расширение для браузера Chrome

Примеры на картинке:

Меняя начальные значения переменных (X,Y) - координат начальных положений черепах и расстояний между ними на сетке r и h, а также  формируя по-разному подпрограмму draw = (Turt) ->, можно менять виды эшеровских замощений, которые получены синхронным и параллельным исполнением своего танца каждой черепахой.

Этап 3. Замощение эшеровскими паттернами. Поворот.

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

Для исполнения танца для каждой из них также нужно поменять стартовое значение угла. Нулевым углом считаем положение “вверх”. В стартовом положении вверх смотрят черепашки a и c, для остальных черепах углы подбираются, исходя из рисунка. Для этого в подпрограмме startnew = -> мы зададим новые положения нашим исполнителям - цветным черепашкам.

Самая интересная геометрическая часть задачи этого этапа: задавать особенности паттернов: "клинья" и "выступы" разной формы на основе базового квадрата, прямоугольника или иного многоугольника. Чтобы потом рассчитывать их размеры и программировать их рисование в "черепашьей" системе координат (движения вперед и повороты на различные значения углов). Здесь можно использовать также рисование дугами и другие возможности среды программирования.

Результат подобного замощения получится еще более красивым. Замощение фигурами 2. Поворот

В задачах на замощения с помощью черепах-исполнителей много геометрии и вычислений:

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

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

Поиск образцов для замощений

В поиске по картинкам по запросу escher templates simple  можно найти множество эшеровских замощений для выполнения в средах визуального программирования. Масса шаблонов также находится в Pinterest. Паттерны ученики могут нарисовать и сами на клетчатой или диагональной сетке!

P.S.

Об одновременной работе нескольких черепах в среде визуального программирования Pencil Code можно также прочитать в авторских материалах.  Начало здесьздесь и здесь.

Эшеровскими замощениями интересно также заниматься в Geogebra. STEAM-проект: мозаики Эшера в GeoGebra

Делали ли вы подобные проекты с учениками?

Ссылки по теме проектов в среде Pencil Code


Использованный источник: Playing Escher by Toni Chehlarova and Evgenia Sendova, Institute of Mathematics and Informatics, Bulgarian Academy of Sciences, and Elisaveta Stefanova, General High School Vladislav Gramatik, Sofia

Кол-во комментариев: (5)

Борис Ярмахов
Очень хорошая связка программирования и искусства. Сразу подумалось - что мы ведь как то мало знаем про Эшера. То, что он делал, было очень революционно и открывает дверь в искусство 21 века с его постоянными аллюзиями к технологиям. Известно ли, что его двигало в эту сторону?
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Людмила Рождественская
    Эшер завораживает своей тайной. Действительно, то, что можно увидеть в музее его имени в Гааге, кажется невозможным даже для воспроизведения https://www.escherinhetpaleis.nl/?lang=en, не говоря уже о том, чтобы такое придумать самому. Что о нем известно? Родился в семье инженера. Был слаб здоровьем (из известных личностей, такая же причина чем-то углубленно заниматься была у Декарта). Учился столярному делу. А выбрал карьеру гравёра, не художника. По мнению исследователей, Эшера привлекала возможность получения множества оттисков, которую предоставляли графические техники, так как его уже в раннем возрасте интересовала возможность повторения образов. Это Википедия об Эшере. По-моему, вполне достаточно для объяснения.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Людмила Рождественская
    Вот еще версия причин интереса Эшера к мозаикам: " Интерес к мозаикам проявился в 1936 во время путешествия в Испании под влиянием геометрических орнаментов Альгамбры." Википедия
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Людмила Рождественская
    Ну а нас возможность повторения образов интересует уже в контексте ремикс-проекта, потому что повторяемость - это главное свойство объекта, который мы ищем для такого проекта.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Людмила Рождественская
    Еще о связи геометрии Эшера с программированием: "Группу картин Эшера называют «рекурсивными», в них «фон может рассматриваться как отдельный самостоятельный рисунок», а первый рисунок по отношению к второму является фоном"
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии