Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемlks.my1.ru
1 Графический режим Модуль Graph y x (0;0) В графическом режиме можно задавать цвет каждого пикселя независимо от других. Максимальные разрешения: CGA = 640х200 EGA = 640х350 VGA = 640x480
2 Процедуры и функции модуля Graph InitGraph(gd, gm, path); - процедура, инициализирующая графический режим работы видеоадаптера gd: integer – графический драйвер gm: integer – графический режим path: string – путь к файлу драйвера
3 Графические режимы (не все) Драйвер (gd) Режим (gm) Разреше- ние Кол-во цветов CGACGAHi640 х 200 EGA EGALo640 x 200 EGAHi640 x VGA VGALo640 x 200 VGAMed640 x 350 VGAHi640 x 480
4 Файлы драйверов herc.bgi cga.bgi egavga.bgi … BGI = Borland Graphics Interface Файлы обычно располагаются в каталоге BGI вместе с файлами графических шрифтов.
5 Полезные функции GetMaxX: integer; – возвращает максимальную координату по х GetMaxY: integer; – возвращает максимальную координату по y GetMaxY + 1 GetMaxX + 1
6 Закрытие графического режима CloseGraph; - процедура закрывает графический режим и переводит видеоадаптер обратно в текстовый режим работы
7 Пример использования InitGraph и CloseGraph const GrPath = c:\bp\bgi; var gd, gm: integer; begin … { работа в текстовом режиме } gd:=EGA; gm:=EGAHi; InitGraph(gd, gm, GrPath); … { работа в графическом режиме } CloseGraph; … { работа в текстовом режиме } end.
8 Анализ графических ошибок GraphResult: integer – функция, возвращающая код последней графической ошибки (0 = нет ошибки) GraphErrorMsg(code:integer): string – функция, возвращает строку описания ошибки по коду ошибки
9 Пример инициализации с анализом ошибок const GrPath = c:\bp\bgi; var gd, gm, code: integer; begin … gd:=EGA; gm:=EGAHi; InitGraph(gd, gm, path); code:=GraphResult; if code0 then begin writeln(Произошла графическая ошибка!); writeln(GraphErrorMsg(code)); writeln(Нажмите Enter…); readln; halt(1); { выход из программы } end; … { работа в графическом режиме } CloseGraph; … end.
10 Работа с отдельными пикселями PutPixel(x, y, c); - задаёт цвет (c) пикселя с координатами (x, y) GetPixel(x,y): integer; - возвращает цвет пикселя с координатами (x, y)
11 Графические примитивы x2,y2 x1,y1 Rectangle(x1,y1,x2,y2); x2,y2 x1,y1 Bar(x1,y1,x2,y2); Circle(x,y,R); x,y R x2,y2 x1,y1 Line(x1,y1,x2,y2);
12 Графические примитивы Arc(x,y,SA,EA,R); R (x,y) SA EA PieSlice(x,y,SA,EA,R); SA EA Ellipse(x,y,SA,EA,XR,YR);FillEllipse(x,y,XR,YR); XR YR (x,y) XR YR (x,y) EA SA
13 Направление отсчёта углов
14 SetColor(c); - устанавливает цвет линий SetLineStyle(s,p,th); - устанавливает стиль линий SolidLn 0 DottedLn 1 CenterLn 2 DashedLn 3 UserBitLn 4 (User-defined line style) NormWidth 1 ThickWidth 3
15 Заливка SetFillStyle(p,c); - устанавливает шаблон и цвет заливки Constant Value Meaning EmptyFill 0 Uses background color SolidFill 1 Uses draw color LineFill fill LtSlashFill 3 /// fill SlashFill 4 /// thick fill BkSlashFill 5 \thick fill LtBkSlashFill 6 \fill HatchFill 7 Light hatch fill XHatchFill 8 Heavy cross hatch InterleaveFill 9 Interleaving line WideDotFill 10 Widely spaced dot CloseDotFill 11 Closely spaced dot UserFill 12 User-defined fill
16 FloodFill(x,y,b); - закрашивает замкнутую область, ограниченную линией цвета b Заливка замкнутой области (x;y)
17 Вывод текста OutText(s); - вывод строки S OutTextXY(x,y,s); - вывод строки S по указанным координатам SetTextJustify(h,v); TopTextCenterTextBottomText LeftTextCenterTextRightText
18 Hello! SetTextJustify(CenterText,CenterText) OutText(x,y,Hello!);
19 SetTextStyle(font,dir,size); - задает стиль текста Font – гарнитура шрифта Dir – направление (горизонт. или верт.) Size - размер
20 FontDirection (dir) 0 = System0 = HorizDir 1 = Triplex Font1 = VertDir 2 = 3 = 4 = GothicFont 5 = 6 =
21 Размер символов, задаваемый пользователем SetUserCharSize(mx,dx,my,dy); w h*my/dy h w*mx/dx
22 Hello! TextWidth(s) TextHeight(s)
24 Uses graph; Begin InitGraph(….); … readln; CloseGraph; End.
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.