Слайд 2
Подключение дополнительных библиотек
Для работы в графическом режиме необходимо
подключение модуля GraphABC.
Первой инструкцией программы должна быть инструкция
uses GraphABC;
Слайд 3
Графический режим
Графический экран PasсalABC (по умолчанию) содержит 640
точек по горизонтали и 400 точек по вертикали.
640 точек
400
точек
Начало отсчета – левый верхний угол экрана
Слайд 4
Управление экраном
SetWindowWidth(w) - Устанавливает ширину графического окна;
SetWindowHeight(h)
- Устанавливает высоту графического окна;
Слайд 5
ClearWindow; - очищает графическое окно белым цветом.
ClearWindow(color); -
очищает графическое окно указанным цветом.
Очистка графического окна
program clear;
uses GraphABC;
begin
ClearWindow;
ClearWindow (clMoneyGreen);
end.
Цвет зеленых денег
Слайд 6
Графические примитивы
Точка
Линия
Прямоугольник
Окружность
Эллипс
Сектор
Дуга
Слайд 7
Точка
SetPixel(x,y,color) - Закрашивает один пиксел с координатами (x,y)
цветом color
program tochka;
uses GraphABC;
begin
SetPixel(300,200,clred);
end.
Слайд 8
Линии
LineTo(x,y) - рисует отрезок от текущего положения пера
до точки (x,y); координаты пера при этом также становятся
равными (x,y).
Program liniay;
uses GraphABC;
begin LineTo(300,200);
end.
Слайд 9
Линии
Line(x1,y1,x2,y2) - рисует отрезок с началом в точке
(x1,y1) и концом в точке (x2,y2).
Program liniay;
uses
GraphABC;
begin
line(100,50,500,250);
end.
Слайд 10
Используемые цвета
Random(16777215) – случайный цвет из всей палитры
цветов Паскаля
Слайд 11
Цвет линии
SetPenColor(color) - устанавливает цвет пера, задаваемый параметром
color.
Program liniay;
uses GraphABC;
begin
setpencolor(clred);
line(30,30,400,350);
end.
Слайд 12
Пунктирная линия
SetPenStyle(); -
устанавливает стиль
пера, задаваемый номером.
program prim;
uses GraphABC;
begin
Setpencolor(clred);
SetPenStyle(1); {1
- длинный штрих}
Line(10,100,350,100);
SetPenStyle(2); {2 - короткий штрих}
Line(10,125,350,125);
SetPenStyle(3); {3 - штрих-пунктир}
Line(10,150,350,150);
end.
Слайд 13
Толщина линии
SetPenWidth(n) - устанавливает ширину (толщину) пера, равную
n пикселям.
Program liniay;
uses GraphABC;
begin
setpenwidth(20);
setpencolor(clred);
line(30,30,400,350);
end.
Слайд 14
Program treugolnik;
uses GraphABC;
begin
setpenwidth(20);
setpencolor(clred);
line(300,100,500,300);
lineto(100,300);
lineto(300,100);
floodfill(300,200,clgreen);
end.
Треугольник
Рисуется процедурами
Line(x1,y1,x2,y2); LineTo(x,y);
Слайд 15
Прямоугольник
Rectangle(x1,y1,x2,y2) - рисует прямоугольник, заданный координатами противоположных вершин
(x1,y1) и (x2,y2).
Program pryamougolnik;
uses GraphABC;
begin
Rectangle(50,50,200,200);
end.
Слайд 16
Заливка цветом
FloodFill(x,y,color) - заливает область одного цвета цветом
color, начиная с точки (x,y).
Program pryamougolnik;
uses GraphABC;
begin
Rectangle(50,50,200,200);
FloodFill(100,100,clBlue);
end.
Слайд 17
Заливка кистью
SetBrushColor(color) - устанавливает цвет кисти.
Заливка кистью распространяется
на замкнутый контур, описание которого следует за процедурой установки
цвета кисти.
Program zalivka_kist;
uses GraphABC;
Begin
SetBrushColor(clGreen);
Rectangle(50,50,300,300); end.
Слайд 18
Заливка кистью
SetBrushStyle(номер от 0 до 7 или название)
- устанавливает стиль кисти, задаваемый номером или символической константой.
Program p12_zalivka;
uses GraphABC;
Begin
SetBrushColor(clAqua);
SetBrushStyle(1);
Rectangle(10,10,100,100);
SetBrushColor(clRed);
SetBrushStyle(2);
Rectangle(110,10,200,100);
SetBrushColor(clBlue);
SetBrushStyle(3);
Rectangle(210,10,300,100);
SetBrushColor(clGreen);
SetBrushStyle(4);
Rectangle(10,110,100,210);
SetBrushColor(clYellow);
SetBrushStyle(5);
Rectangle(110,110,200,210);
SetBrushColor(clBlack);
SetBrushStyle(6);
Rectangle(210,110,300,210);
end.
По умолчанию задается стиль 0 – сплошная заливка цветом.
Слайд 19
Заливка кистью
SetBrushPicture(‘fname’) -
устанавливает в качестве образца для закраски
кистью образец, хранящийся в файле fname, при этом текущий
цвет кисти при закраске игнорируется.
uses GraphABC;
begin SetBrushPicture('brush4.bmp');Ellipse(0,0,640,400);
end.
Слайд 20
Program pryamougolnik;
uses GraphABC;
begin
SetPenColor(clred);
SetPenWidth(20);
Rectangle(50,50,200,200);
FloodFill(100,100,clBlue);
end.
Цвет и
толщина контура
Задаются процедурами SetPenWidth(w); SetPenColor(color);
Слайд 21
Circle(x,y,r) - рисует окружность с центром в точке
(x,y) и радиусом r.
Окружность
Program circle;
uses GraphABC;
begin
Circle(500,200,100);
FloodFill(500,200,clred);
end.
x1,y1
r
Слайд 22
Эллипс
Ellipse(x1,y1,x2,y2) - рисует эллипс, заданный своим описанным прямоугольником
с координатами противоположных вершин (x1,y1) и (x2,y2).
Program oval;
uses GraphABC;
begin
Ellipse(50,50,200,350);
FloodFill(50+100,50+100,clred);
Ellipse(250,150,550,300);
FloodFill(250+100,150+100,clBlue);
end.
x1,y1
x2,y2
x1,y1
x2,y2
Слайд 23
Дуга окружности
Arc(x,y,r,a1,a2) - Рисует дугу окружности с центром
в точке (x,y) и радиусом r, заключенной между двумя
лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки).
Program duga;
uses GraphABC;
Begin
SetPenWidth(10);
Arc(300,250,150,45,135);
end.
x,y
r
Слайд 24
Pie(x,y,r,a1,a2) - рисует сектор окружности, ограниченный дугой (параметры
процедуры имеют тот же смысл, что и в процедуре
Arc).
Сектор
Program sector;
uses GraphABC;
begin
Pie(300,200,100,0,90);
FloodFill(300+10,200-10,clAqua);
end.
Слайд 25
Вывод текста в графическое окно
TextOut(x,y,’строка’); - выводит строку
текста в позицию (x,y) (точка (x,y) задает верхний левый
угол прямоугольника, который будет содержать текст).
Program text;
uses GraphABC;
begin
TextOut(100,30,'Квадрат');
Rectangle(50,50,200,200);
FloodFill(55,55,clBlue);
end.
Слайд 26
Действия со шрифтом
SetFontName(‘name’)- устанавливает наименование
шрифта.
SetFontColor(color) - устанавливает цвет шрифта.
SetFontSize(sz) -
устанавливает размер шрифта в пунктах.
SetFontStyle(fs) - устанавливает стиль шрифта.
Слайд 27
Название шрифта
По умолчанию установлен шрифт, имеющий наименование MS
Sans Serif.
Наиболее распространенные шрифты – это Times, Arial
и Courier New.
Наименование шрифта можно набирать без учета регистра.
Пример:
SetFontName(‘Times’);
Слайд 28
Стиль шрифта
Задается именованными константами:
fsNormal – обычный;
fsBold –
жирный;
fsItalic – наклонный;
fsBoldItalic – жирный наклонный;
fsUnderline
– подчеркнутый;
fsBoldUnderline – жирный подчеркнутый;
fsItalicUnderline – наклонный подчеркнутый;
fsBoldItalicUnderline – жирный наклонный подчеркнутый.
Слайд 29
Program text;
uses GraphABC;
Begin
SetFontName(‘Arial’);
SetFontSize(20);
SetFontColor(clRed);
TextOut(10,10,‘обычный');
SetFontStyle(fsItalic);
SetFontColor(clBlue);
TextOut(10,50,‘наклонный');
SetFontStyle(fsBold);
SetFontColor(Random(16777215));
TextOut(10,90,‘жирный');
SetFontStyle(fsUnderline);
SetFontColor(Random(16777215));
TextOut(10,130,‘подчеркнутый');
SetFontStyle(fsBoldItalicUnderline);
SetFontColor(Random(16777215));
TextOut(10,170,’жирный, наклонный, подчеркнутый');
end.
Например,
Слайд 30
Используемые цвета
Цвет можно задавать и с помощью функции
RGB(r,g,b) где r, g и b – целые числа
в диапазоне от 0 до 255.
Функция возвращает целое значение, являющееся кодом цвета, который содержит красную, зеленую и синюю составляющие с интенсивностями r, g и b соответственно (0 соответствует минимальной интенсивности, 255 – максимальной).
RGB(255,255,255) – соответствует белому цвету.
RGB(0,0,0) – соответствует черному цвету.
Слайд 31
Program color;
uses GraphABC;
begin
Clearwindow(rgb(200,150,250));
TextOut(93,30,' Квадрат ');
Rectangle(50,50,200,200);
FloodFill(55,55,clRed);
TextOut(275,30,' Эллипс');
Ellipse(250,50,350,200);
FloodFill(250+50,50+50,clYellow);
end.
Например,
Слайд 32
Вывод текста в графическое окно
Program text2;
uses Crt,GraphABC;
begin
clrscr;
hidecursor; {скрывает текстовый курсор}
gotoXY(12,3);
write(‘Квадрат');
Rectangle(50,50,200,200);
FloodFill(55,55,clYellow);
end.
Текст можно
вывести с помощью операторов Gotoxy(x,y) и Write(‘текст’), подключив дополнительно модуль Crt.
Слайд 33
LoadPicture(fname)
n:=LoadPicture(fname) –
загружает рисунок из файла с именем
fname в оперативную память и возвращает описатель рисунка в
целую переменную n; если файл не найден, то возникает ошибка времени выполнения.
Загружать можно рисунки в формате .bmp, .jpg или .gif.
Загрузка готового рисунка
Слайд 34
DrawPicture(n,x,y);
Выводит рисунок с описателем n в позицию (x,y)
графического окна.
Вывод рисунка в графическое окно
uses GraphABC;
var pic:
integer;
begin
pic:=LoadPicture('demo.bmp');
DrawPicture(pic,10,10);
DestroyPicture(pic);
end.