Closegraph();
}
Пифагорово дерево задается так: «ствол» дерева – вертикаль-ный отрезок длиной l. От него вверх симметрично отходят две ветки так, чтобы угол между ними был 90 градусов, их длина равна k*l, где k<1. Так повторяется для заданного количества уровней.
На рисунке показано дерево Пифагора при k=0.7, имеющее 5 уровнейЧтобы написать процедуру, придется вспомнить геометрию и тригонометрию. Проще всего получается, если написать формулы для произвольного угла наклона ветки α. Если (x,y)– координаты начала ветки и она наклонена по отношению к горизонту на угол α,
то формулы для определения координат конца ветки (x1,y1)принимают вид:
x1 = x + L * cos(α)
y1 = y - L * sin(α)
Знак минус при вычислении y1появился из-за того, что ось yдля экрана направлена вниз. Ветки следующего уровня,выходящие из вершины с координатами (x1,y1), имеют
углы наклона α+π/4(правая ветка) и α-π/4(левая ветка). Не забудем также, что для использования функций sinи cosнадо подключить заголовочный файл math.hи передавать им значения углов в радианах.Параметрами процедуры являются координаты начала базовой ветки (x,y), ее длина L, угол наклона в радианах angleи количество уровней n, которые надо нарисовать.
Дата добавления: 2015-10-05; просмотров: 810;