ПОВОРОТ ОБЪЕКТА
Точки
можно повернуть на заданный угол α относительно начала координат. Если точка на
плоскости задана координатами (x, y), то в результате поворота на угол α ее
координаты (X, Y) будут определяться по формулам:
(x,y) (X,Y) О α
Рис.18. Поворот
При
организации поворота необходимо учитывать, что начало системы координат в
графическом режиме находится в левом верхнем углу экрана, ось OY направлена
вниз, ось OX – вправо. Тогда, если поместить начало декартовой системы
координат O1xy в точку O1(a, b) и направить ось O1y
вверх, то связь между координатами x и y и координатами X, Y одной и той же
точки М будет выражаться формулами:
О M(X=a+x,
Y=b-y) X Y O1(a, b) x y b a
На
рис.19 (X, Y) – координаты точки M относительно системы координат в графическом
режиме. O1(a, b) – точка, вокруг которой мы будем вращать
нарисованный объект, где (a, b) – координаты этой точки относительно системы
координат в графическом режиме.
Таким
образом, при организации поворота относительно нового центра необходимо
учитывать приведенные выше формулы:
Алгоритм поворота объекта:
1.
Нарисовать объект
2.
Зафиксировать положение объекта на
экране
3.
Очистить экран (нарисовать объект цветом
фона экрана)
4.
Изменить координаты, используя формулы
поворота, и нарисовать объект выбранным цветом рисования.
Пример. Поворот относительно точки (0,0), т.е. левого верхнего угла. Формула используется из теории.
Первый рисунок - реализация вышеизложенной программы, второй рисунок - та же программа, только с использованием цикла while, шаг = 10.