Одной из идей, отвечающей принципам 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
- Карандашное программирование. Л.Рождественская
-
Проекты в карандашном коде (в среде pencilcode). Пособие для учителя Авторы Л.Рождественская, Л.Сащенко, К.Торопова
- Карандашное программирование. Начало
- Карандашное программирование: чужой код для решения своей задачи...
- Карандашное программирование: циклы
- Геометрия и карандашное программирование
- Карандашное программирование: холст как координатная плоскость
- Карандашное программирование: рисуем пейзажи масштабированием
- Карандашное программирование: четыре черепашки и симметричный дизайн
- Карандашное программирование: несколько черепашек и поворотная симметрия
- Карандашное программирование: черепашка рисует паркеты и мозаики
- Карандашное программирование: черепашка и оптические иллюзии
- О творческих домашних заданиях, или Могут ли все ученики быть успешными?
- Программирование для воссоздания картин: математика и искусство вместе
- В начале была цифра?
- Пляшущие черепашки
- Искусство создания снежинки, или Как скоротать зиму...
- Карандашное программирование: паркеты и жывёлы
- Карандашное программирование: рекурсия
- Ёлка в коде. МК
- Ёлка в коде. Этап 2. Шарики цветные
- Кодируй, как пират!
- Задачи для геоборда
- От узора на клетчатом листке к STEAM-проекту
Использованный источник: 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