Графический режим. Инициализация графического режима. Построение точки, линии. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Графический режим. Инициализация графического режима. Построение точки, линии.



Стандартное состояние компьютера после запуска Турбо Паскаля - текстовый режим. Для того, чтобы использовать его графические средства, программист должен "определенным образом инициировать режим работы дисплейного адаптера". В графическом режиме работой дисплейного адаптера управляет графический драйвер.

Драйвер - это специальная программа, которая управляет техническими средствами компьютера. Для всех существующих типов адаптеров фирма Borland разработала графические драйверы (они имеют расширение.bgi и находятся на диске в одноименном подкаталоге).

Необходимые процедуры и функции для работы с графикой собраны стандартном модуле - Graph.

Инициализация графики производится с помощью процедуры InitGraph, которая имеет вид:

InitGraph(GraphDriver, GraphMode, Path);

где переменные GraphDriver и GraphMode имеют тип Integer, а переменная Path имеет тип String.

Для получения графического изображения нужно заставить светиться заданным цветом определенную группу пикселей (точек). Это можно делать в программе, но ваша работа тогда станет очень трудоёмкой. Чтобы облегчить труд программиста существует модуль Graph, в котором содержится 79 полезных процедур и функций, десятки стандартных констант и типов данных (например, процедуры рисования линии, окружности и др.). Чтобы воспользоваться этим модулем нужно сначала его подключить. Для этого в программе записывают строчку: Uses Graph.

Условно весь модуль Graph можно подразделить на несколько функциональных групп по выполняемым действиям. Рассмотрим эти группы (внутри групп взяты основные функции, необходимые нам для первоначального ознакомления с графикой):

1) Инициализация графики, подготовительные работы, управление цветом, закрытие режима:

InitGraph установление (инициализация) графического режима работы
CloseGraph завершение работы с графикой
DetectGraph определение драйвера
FloodFill заливка замкнутого контура выбранным типом и цветом палитры
RestoreCRTMode возврат в текстовый режим
SetBkColor выбор и установка нового цвета закраски фона
SetColor выбор и установка нового текущего цвета
SetFillStyle выбор и установка нового шаблона и цвета заполнения

2) Процедуры и функции для управления курсором и видеостраницами:

ClearDevice очистка текущего устройства вывода
ClearViewPort очистка текущего окна
GetMaxX получение максимально доступной координаты по оси X
GetMaxY получение максимально доступной координаты по оси Y
GetPixel получение текущего цвета точки экрана
GetX получить значение координаты X
GetY получить значение координаты Y
MoveRel переместить курсор из данной текущей точки на заданное приращение.
MoveTo переместить курсор из данной текущей точки в заданную точку

3). Процедуры и функции для работы с "графическими примитивами":

Arc Рисует дугу
Bar Рисует полосу
Bar3D Рисует трехмерную полосу
Circle Рисует окружность
DrawPoly Рисует многоугольник
Ellipse Рисует эллиптическую дугу или эллипс
FillEllipse Рисует заполненный эллипс
FillPoly Заполняет многоугольник
Line, LineRel, LineTo Рисует линию
Rectangle Рисует прямоугольник
Sector Рисует сектор эллипса
PutPixel Рисует точку

Процедуры для работы с текстом

OutText Вывод текста
OutTextXY Вывод текста

Итак, для запуска графической системы нам необходимо:

1. Подключить модуль GRAPH - библиотеку графических процедур:

Uses Graph;

2. Установить графический режим с помощью двух переменных:

Var
GraphDriver, GraphMode: integer;
Begin
GraphDriver:=detect;
InitGraph(GraphDriver, GraphMode, '..\BGI');
{С этого момента все графические средства доступны пользователю}
{тело программы}
CloseGraph;
End.



Поделиться:


Последнее изменение этой страницы: 2016-12-17; просмотров: 222; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.74.227 (0.004 с.)