Grafica_Pascal_

advertisement
Графика в Pascal
Модуль Graph
1
Подключение
дополнительных библиотек
Для работы в графическом
режиме необходимо подключение
модуля Graph.
Первой
инструкцией
программы
должна
быть
инструкция
uses Graph;
2
Графический режим
Графический
умолчанию)
экран
содержит
Pasсal
640
точек
(по
по
горизонтали и 400 точек по вертикали.
640 точек
400 точек
Начало отсчета –
левый верхний
угол экрана
3
Program pr;
Uses graph; {использование графического режима}
Var gd,
{графический драйвер}
gm:integer;
{графический режим}
Begin
gd:=detect;
{автораспознавание драйвера}
Initgraph(gd, gm,’путь к файлу egavga.bgi’);
{операторы и процедуры графических построений}
Readln;
Closegraph;
End.
Номера цветов
0
1
2
3
4
5
6
7
– черный
– синий
– зеленый
– голубой
– красный
– фиолетовый
– коричневый
– светло-серый
8 – темно-серый
9 – ярко-синий
10 – ярко-зелёный
11 – ярко-голубой
12 – ярко-красный
13 – ярко-розовый
14 – жёлтый
15 – белый
Графические примитивы
1. Линия
2. Прямоугольник
3. Окружность
4. Эллипс
5. Дуга
6
Линия
Line(x1,y1,x2,y2)
- рисует отрезок
с началом в точке (x1,y1) и концом в
точке (x2,y2).
x1,y1
x2,y2
Program liniay;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
line(100,50,500,250);
Readln;
end.
7
Цвет линии
SetColor(№ цвета) цвет пера,
color.
устанавливает
задаваемый параметром
Program liniay;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
setcolor(№ цвета);
line(30,30,400,350);
Readln;
end.
8
Установка цвета
SetBkColor(№ цвета);
Устанавливает текущий фоновый цвет
program fon;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
SetBkColor(15);
Readln;
end.
9
Установка цвета и
стиля
SETFILLSTYLE(№ стиля, № цвета);устанавливает цвет и стиль заливки
10
№ стиля
Вид стиля
заливки
№ стиля
0
Заполнение
(закрашивает
цветом фона)
6
1
Заполнение
текущим
цветом
7
2
8
3
4
9
10
5
11
Вид стиля
заливки
Прямоугольник
Rectangle(x1,y1,x2,y2)
- рисует
прямоугольник, заданный координатами
противоположных вершин (x1,y1) и (x2,y2).
x1,y1
x2,y2
Program pryamougolnik;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
Rectangle(50,50,200,200);
Readln;
end.
12
Прямоугольник
(х1,у1)
Bar(x1,y1,x2,y2)
выводит
на экран закрашенный прямоугольник с
координатами левого верхнего угла
(х1,у1) и правого нижнего угла (х2,у2).
(х2,у2)
Чтобы начертить закрашенную фигуры нужно:
-Установить цвет фигуры:
SETCOLOR(№ цвета);
-Установить цвет и стиль закраски:
SETFILLSTYLE(№ стиля, № цвета);
-Нарисовать фигуру: {название фигуры} (данные
нужные для закраски);
-Закрасить фигуру: FLOODFILL(x,y,№ цвета
границы);
Где x,y – координаты точки в замкутой области.
Окружность
Circle(x,y,r) - рисует
окружность с
центром в точке (x,y) и радиусом r.
r
x1,y1
Program circle;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
Circle(500,200,100);
FloodFill(500,200,4);
Readln;
end.
14
Эллипс
ELLIPSE(x,y,L1,L2,Rx,Ry) рисует
эллиптическую дугу от начального угла L1
до конечногоL2, используя Х,У как
координаты центра, как горизонтальный (Rx)
и вертикальный(Ry) радиус.
х
Y
L2
L1
х
Y
Rx
Ry
Program oval;
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
Ellipse(300,260,0,360,260,160);
Readln;
end.
Дуга окружности
Arc(x,y,r,a1,a2) - Рисует
дугу
окружности с центром в точке (x,y) и
радиусом r, заключенной между двумя
лучами, образующими углы a1 и a2 с осью
OX (a1 и a2 – вещественные, задаются в
градусах и отсчитываются против часовой
стрелки).
Program duga;
r
x,y
uses Graph;
Var gd,gm:integer;
begin
gd:=detect;
Initgraph(gd,gm,’c:\bp\bgi’);
Arc(300,250,150,45,135);
Readln;
end.
16
Домашнее задание
Подготовиться к
самостоятельной работе по
Графике в Паскале.
17
Download