Это материалы для мастер-класса по информатике для школьников при ДВФУ.
Предлагается написать программу для рисования простого фрактала - дерева Пифагора.
Материалы из интернета:
Видеоролик: http://youtu.be/hq2npaicOOE
Хорошая статья на эту тему: http://elementy.ru/posters/fractals/Pythagoras
Статья с примером программы: http://fractalworld.xaoc.ru/Pythagoras_tree
Фракталы - это фигуры, обладающие свойством самоподобия, обычно у фрактала есть какой-нибудь повторяющийся узор.
Как построить дерево Пифагора?
Рисуем квадрат, и строим прямоугольный треугольник на одной из его сторон как на гипотенузе. В самом простом случае прямоугольный треугольник будет равнобедренным (с острыми углами 45°).
Затем на катетах этого треугольника строим квадраты ("пифагоровы штаны").
Дальше процесс повторяется для этих квадратов.
Сразу можно заметить, что процесс построения дерева Пифагора по своей сути рекурсивный: построение дерева Пифагора сводится к построению дерева Пифагора меньшего размера.
Опишем рекурсивную функцию, которая будет рисовать дерево Пифагора.
Функция принимает на вход следующие параметры:
Вначале вычислим координаты точки M.
Для этого вычислим векторы .
Заметим, что .
Теперь нетрудно вычислить координаты точки M, прибавив к точке C вектор a.
Далее легко вычислить координаты вершин квадратов, используя равенство соответствующих векторов.
Предлагается написать программу для рисования простого фрактала - дерева Пифагора.
Материалы из интернета:
Видеоролик: http://youtu.be/hq2npaicOOE
Хорошая статья на эту тему: http://elementy.ru/posters/fractals/Pythagoras
Статья с примером программы: http://fractalworld.xaoc.ru/Pythagoras_tree
Фракталы - это фигуры, обладающие свойством самоподобия, обычно у фрактала есть какой-нибудь повторяющийся узор.
Как построить дерево Пифагора?
Рисуем квадрат, и строим прямоугольный треугольник на одной из его сторон как на гипотенузе. В самом простом случае прямоугольный треугольник будет равнобедренным (с острыми углами 45°).
Затем на катетах этого треугольника строим квадраты ("пифагоровы штаны").
Дальше процесс повторяется для этих квадратов.
Сразу можно заметить, что процесс построения дерева Пифагора по своей сути рекурсивный: построение дерева Пифагора сводится к построению дерева Пифагора меньшего размера.
Опишем рекурсивную функцию, которая будет рисовать дерево Пифагора.
Функция принимает на вход следующие параметры:
- оставшееся число шагов построения дерева
- координаты точек основания квадрата (A, B)
- координаты вектора
Вначале вычислим координаты точки M.
Для этого вычислим векторы .
Заметим, что .
Теперь нетрудно вычислить координаты точки M, прибавив к точке C вектор a.
Далее легко вычислить координаты вершин квадратов, используя равенство соответствующих векторов.
Комментарии
Отправить комментарий