Описать на языке программирования Pascal с помощью модуля graph алгоритм переноса и анимации геометрических фигур.
x, y – координаты точки.
Точка на плоскости задается координатами x1, y1. При переносе ее положение определяется новыми координатами x2, y2, где
x2 = x1 + dx
y2 = y1 + dy
Так как графический объект представляет собой множество точек, то его можно переносить, применяя уравнение переноса к каждой точке.
Используя правила переноса, можно моделировать движение объекта на экране. Для этого необходимо сначала определить направления движения: по горизонтали (для координаты x) и/или по вертикали (для координаты y). Для организации движения используется циклическая конструкция, зависящая от выбранного шага (сдвига).
uses graph,crt; var g,h:integer; x,y:integer; begin g := detect; initgraph(g,h,''); setcolor(10); x:=100; y:=200; moveto(x,y); lineto(x+300,y); lineto(x+150,y-150); lineto(x,y); delay(2000); setcolor(0); moveto(x,y); lineto(x+300,y); lineto(x+150,y-150); lineto(x,y); setcolor(10); x:=x+200; y:=y+150; moveto(x,y); lineto(x+300,y); lineto(x+150,y-150); lineto(x,y); delay(1000); x := 0; while x do begin setcolor(12); rectangle(0+x,400,300+x,450); delay(50); setcolor(0); rectangle(0+x,400,300+x,450); x := x + 2 end; setcolor(12); rectangle(0+x,400,300+x,450); readln end.
В основе изменения графической информации лежат три основных преобразования: перенос, поворот и масштабирование. Эти три преобразования позволяют создавать статические и динамические геометрические изображения. При этом при построении графического изображения на экране монитора необходимо помнить, что система координат для графического режима отличается от обычной декартовой системы координат: ось 0Y направлена вниз, ось 0X - вправо, так что начало координат находится в левом верхнем углу экрана.
Комментарии
первая строчка ошибка:
первая строчка ошибка: 'graph'
Ошибочка
g,h:smallint
Нужно написать
Нужно написать программу, которая будет выводить на экран города и соединять города, расстояние между которыми минимально