Графические операторы языка Паскаль.

advertisement
Режимы
работы компьютера
с монитором
Текстовый
Графический
Текстовый р-м - используется для вывода на экран
текстовой и числовой информации.
Компьютер считает экран разбитым на 25 строк и 80 столбцов
Графический р-м.
Пиксел (точка) – наименьший
элемент изображения
На экране 640 столбцов и 480 строк
пикселов.
480
640
Uses CRT, Graph;
Стандартный модуль дает Graph возможность
работать с изображениями на экране
Var Device, Mode: integer;
Begin
Device:=0;
Для инициализации г графического р-ма
служит стандартная процедура InitGraph.
Перед использованием процедуры InitGraph нужно создать 2 переменные типа integer с произвольными именами (например Device и Mode).
Device означает тип видеоадаптера, Mode – номер графического режима.
Можно устанавливать Device:=0 и Паскаль сам определит тип в-ра и
установит графический режим
InitGraph (Device, Mode, ’D:\BP\BGI’)
Circle (100,80,50);
Рисует окружность
ReadLn;
CloseGraph
End.
Для закрытия графич. р-ма и переключения в текстовый –
процедура CloseGraph.
Line (x1,y1,x2,y2); - соединяет точки (x1,y1) и (x2,y2)
Rectangle (x1,y1,x2,y2); - рисует прямоугольник с
противоположными вершинами (x1,y1) и (x2,y2)
PutPixel (x,y,color); – позволяет поставить на экране
точку с координатами (x,y) цвета color.
Line (50,150,150,200);
50
150
Rectangle (150,150,50,200);
50
640
640
х
х
150
150
200
200
480
480
у
150
у
SetColor (цвет); - приказывает компьютеру рисовать
фигуры указанным цветом;
ClearDevice; - cтирает все с экрана в графическом режиме.
0 - чёрный
1 - синий
2 - зелёный
3 - голубой
4 - красный
5 - фиолетовый
6 - коричневый
7 - светло-серый
8 - тёмно-серый
9 - 15 - яркие.
9 - ярко-синий
10 - ярко-зелёный
11 - ярко-голубой
12 - розовый
13 - малиновый
14 - жёлтый
15 - белый.
Нарисовать в Паскале домик
Uses CRT, Graph;
Var Device, Mode: integer;
Begin
Device:=0;
InitGraph (Device, Mode, ’D:\BP\BGI’);
Rectangle (350,200,150,400);
Rectangle (290,250,210,350);
Line (210,300,290,300);
Line (250,300,250,350);
ReadLn;
CloseGraph
End.
Процедура СIRCLE (x,y,r);
рисует окружность с центром в
точке с координатами (x,y),
r – радиус окружности.
СIRCLE (300,200,160);
140
200
300
Ellipse (x, y, start1, start2, Sx, Sy);
-
рисует эллипс (дугу эллипса).
Точка с координатами (x,y) – центр эллипса.
Start1 – начальный угол, Start2 – конечный угол дуги эллипса;
Ellipse (200, 150, 0, 360, 100, 40);
40
- рисует эллипс с центром в точке с
координатами (200,150).
100
Ellipse (200, 150, 0, 180, 100, 40);
- рисует дугу эллипса с центром в точке
с координатами (200,150),
начальный угол дуги – 0,
конечный угол – 180.
40
100
SetFillStyle (1, color1);
– устанавливает стиль и цвет (color1) заливки.
FloodFill (x,y,color2);
- закрашивает цветом color1 замкнутую область,
ограниченную цветом color2, начиная с точки (x,y).
SetColor (14);
SetColor (4);
SetFillStyle (1,4);
SetFillStyle (1,14);
Circle (100,80,50);
Circle (100,80,50);
FloodFill (100,80,14);
FloodFill (100,80, 4);
Uses CRT, Graph;
Var Device, Mode,х: integer;
Begin
Device:=0;
InitGraph (Device, Mode, ’D:\BP\BGI’);
x:=0;
Repeat
SetColor (14);
Circle (x,300,25);
Delay (500);
(500);
Delay
SetColor (0);
(0);
SetColor
Circle (x,300,25);
(x,300,25);
Circle
x:=x+50;
Until x>640;
ReadLn;
CloseGraph
End.
Задание № 1.
Нарисовать пипетку или
водопроводный кран.
1. Капля в форме эллипса должна
упасть из крана на пол;
2. Повторить падение капли на пол 7
раз;
Машинка произвольной формы
должна пробежать от одного края
экрана до другого и вернуться
обратно.
Download