Процедуры модуля GRAPH

advertisement
Процедуры модуля GRAPH
Arc (x,y : integer; stAngle, endAngle, radius : word) Рисует дугу от начального угла к конечному, x, y - центр.
Bar (x1, y1, x2, y2 : integer); Рисует полосу по ее диагонали, используя текущий стиль и цвет.
Bar3D (x1, y1, x2, y2 : integer; depth : word; top : boolean) Рисует трехмерную полосу, используя текущий стиль и цвет.
Circle (x, y : integer; radius : word) Рисует окружность, используя (x,y) как центр.
ClearDevice Очищает экран и устанавливает текущий указатель в точку (0, 0).
ClearViewPort Очищает окно.
CloseGraph Закрывает графическую систему.
DetectGraph (Var GraphDriver, GraphMode : integer) Проверяет аппаратуру и определяет, какой графический драйвер и в
каком режиме используется.
DrawPoly (numPoints : word; Var polyPoints) Рисует многоугольник текущим цветом и типом линии.
Ellipse (x, y : integer; stAngle, endAngle : word; xRad, yRad : word) Рисует эллиптическую дугу от начального угла к
конечному, используя (х, у) как центр.
FillEllipse (x, y :integer; xRadius, yRadius : word) Рисует заполненный эллипс, используя (х, у) за центр и xRadius и yRadius как
горизонтальные и вертикальные оси.
FillPoly (numPoints : word; Var polyPoints) Заполняет многоугольник, используя сканирование.
FloodFill (x, y : integer; border : word) Заполняет ограниченную область, используя текущий шаблон и цвет заполнения.
GetArcCoords (Var arcCoords : arcCoordsType) Позволяет запросить координаты команды Arc.
GetAspectRatio (Var xAsp, yAsp : word) Возвращает разрешение экрана, из которого может быть вычислен относительный
коэффициент (xAsp/yAsp).
GetDefaultPalette (Var palette : PaletteType) Возвращает аппаратную палитру в записи PaletteType.
GetFillPattren (Var fillpattern : FillPatternType) Возвращает шаблон заполнения, установленный последним вызовом
SetFillPattern.
GetFillSettings (Var fillInfo : FillSettingsType) Возвращает текущий шаблон и цвет, установленные процедурами SetFillStyle или
SetFillPattern.
GetImage (x1, y1, x2, y2 : integer; Var bitMap) Сохраняет битовый образ указанной части экрана в буфере.
GetLineSettings (Var lineInfo : LineSettingsType) Возвращает текущие стиль, шаблон и толщину линии, установленные
SetLineStyle.
GetModeRange (graphDriver : integer; Var loMode, hiMode : integer) Возвращает минимальный и максимальный графические
режимы для данного драйвера.
GetPalette (Var palette : PaletteType) Возвращает текущую палитру и ее размер.
GetTextSettings (Var textInfo : TextSettingsType) Возвращает текущий шрифт, направление, размер и выравнивание текста,
установленные SetTextStyle и SetTextJustify.
GetViewSettings (Var viewPort : ViewPortType) Позволяет запросить текущие параметры окна и отсечения.
GraphDefaults Устанавливает текущий указатель в начало и переустанавливает графическую систему.
InitGraph (Var Driver : integer; Var Mode : integer; path : string) Инициализирует графическую систему и устанавливает
устройство в графический режим.
Line (x1, y1, x2, y2 : integer) Рисует линию от точки с координатами (x1, y1) к точке (x2, y2).
LineRel (dX, dY : integer) Рисует линию от точки текущего указателя (х, у) к точке х+dx, y+dy.
LineTo (x, y : integer) Рисует линию от текущего указателя к точке (х, у).
MoveRel (dX, dY : integer) Передвигает текущий указатель на заданное расстояние от его текущей позиции.
MoveTo (x, y : integer) Передвигает текущий указатель в (х, у).
OutText (textString : string) Выводит текст на экран, начиная от текущего указателя.
OutTextXY (x, y : integer; textString : string) Выводит текст на экран, начиная от точки (х, у).
PieSlice (x, y : integer; stAngle, endAngle, radius : word) Рисует и заполняет сектор, используя (х, у) как центр и рисуя от
начального угла к конечному.
PutImage (x,y : integer; Var bitMap; mode : word) Выводит битовый образ на экран.
PutPixel (x, y : integer; colorValue : word) Рисует точку (пиксел) с координатами (х, у).
Rectangle (x1, y1, x2, y2 : integer) Рисует прямоугольник, используя текущий цвет и тип линии.
RestoreCRTMode Восстанавливает видеорежим, который был до инициализации графики.
Sector (x, y : integer; stAngle, endAngle, xRadius, yRadius : word) Рисует и заполняет сектор эллипса.
SetActivePage (page : word) Устанавливает активную страницу для графического вывода.
SetAllPalette (Var palette) Изменяет цвет палитры.
SetAspectRatio (xAsp, yAsp : word) Изменяет значение относительного аспекта.
SetBkColor (color : word) Устанавливает цвет фона.
SetColor (color : word) Устанавливает основной цвет, которым будет осуществляться рисование.
SetFillPattern (pattern : FillPatternType; color : word) Выбирает шаблон заполнения, определенный пользователем.
SetFillStyle (pattern : word; color : word) Устанавливает шаблон заполнения и цвет.
SetGraphBufSize (bufSize : word) Позволяет изменить размер буфера для функций заполнения.
SetGraphMode (mode : integer) Переводит систему в графический режим и очищает экран.
SetLineStyle (LineStyle : word; pattren : word; thickness : word) Устанавливает текущие толщину и цвет линии.
SetPalette (colorNum : word; color : shortint) Изменяет один цвет палитры, указанный через colorNum и color.
SetRGBPalette (color, redValue, greenValue, blueValue : integer) Позволяет модифицировать палитру для IBM 8514 и VGA.
SetTextJustify (horiz, vert : word) Устанавливает выравнивание текста, используя OutText и OutTextXY.
SetTextStyle (font, direction : word; charSize : word) Устанавливает текущий шрифт, стиль и размер текста.
SetUserCharSize (multX, divX, multY, divY : word) Позволяет изменить ширину и высоту символа для штрихового шрифта.
SetViewPort (x1, y1, x2, y2 : integer; clip : boolean) Устанавливает текущее окно для графического вывода.
SetVisualPage (page : word) Устанавливает номер видимой графической страницы.
SetWriteMode (writeMode : integer) Устанавливает режим вывода (копирование или XOR) для линий, рисуемых с DrawPoly,
Line, LineRel, LineTo, Rectangle.
Функции модуля GRAPH.
GetBkColor : word Возвращает текущий фоновый цвет.
GetColor : word Возвращает текущий цвет.
GetDriverName : string Возвращает строку с именем текущего драйвера.
GetGraphMode : integer Возвращает текущий графический режим.
GetMaxColor : word Возвращает максимально возможный номер цвета, который можно задать в SetColor.
GetMaxMode : integer Возвращает номер максимального режима текущего загруженного драйвера
GetMaxX : integer Возвращает максимальный Х (разрешение по горизонтали) для текущего графического драйвера и режима
GetMaxY : integer Возвращает максимальный Y (разрешение по вертикали) для текущего графического драйвера и режима
GetModeName (graphMode : integer) : string Возвращает строку с именем указанного графического режима.
GetPaletteSize : integer Возвращает размер таблицы палитры.
GetPixel (x, y : integer) : word Возвращает цвет точки в (х, у).
GetX : integer Возвращает координату Х текущей позиции.
GetY : integer Возвращает координату Y текущей позиции.
GraphErrorMsg (errorCode : integer) : string Возвращает строку сообщения об ошибке для кода ErrorCode.
GraphResult : integer Возвращает код ошибки для последней графической операции.
ImageSize (x1, y1, x2, y2 : integer) : word Возвращает число байтов, требуемое для заполнения прямоугольной области экрана.
InstallUserDriver (name : String; autoDetectPtr : pointer) : integer Устанавливает пользовательский драйвер устройства в BGI таблицу драйверов устройств.
InstallUserFont (fontFileName : string) : integer Устанавливает новый (пользовательский) шрифт, который не встроен в BGI систему.
RegisterBGIdriver (driver : pointer) : integer Регистрирует BGI - драйвер для графической системы.
RegisterBGIfont (font : pointer) : integer Регистрирует BGI - шрифт для графической системы.
TextHeight (textString : string) : word Возвращает высоту строки в пикселах.
TextWidth (textString : string) : word Возвращает ширину строки в пикселах.
{ Пример программы}
Uses Graph; {Подключение библиотеки графических функций и процедур}
Var
grDriver : Integer; {графический драйвер}
grMode : Integer; {графический режим}
ErrCode : Integer; {код ошибки}
Begin
grDriver:=Detect; {определить графический драйвер автоматически}
InitGraph(grDriver, grMode, ''); {«включить» графический режим, в grMode запомнить режим, драйвер искать в текущей папке}
ErrCode:=GraphResult; {результат включения режима запомнить в переменной ErrCode}
If ErrCode = grOk Then {если перешли в графический режим успешно…}
Begin{ Графика }
Line(0, 0, GetMaxX, GetMaxY); {Проводим линию из левого верхнего угла экрана в правый нижний}
SetColor (LightGreen); {Устанавливаем цвет рисования фигур – светло-зеленый}
Circle (320,240,100); {Рисуем окружность светло-зеленым цветом с центром в центре экрана и радиусом -100 пикселей}
SetFillStyle (LineFill,Yellow); {Устанавливаем шаблон (линии) и цвет заполнения}
FloodFill(322,242,LightGreen); {«Выливаем» краску в точку (322,242) до границы LightGreen цветом}
OutTextXY (320,130,’My Picture!’); {Над окружностью выводим текст}
SetLineStyle (DashedLn,0,ThickWidth); {Устанавливаем стиль линий: пунктирная, толстая}
Rectangle(50,50,100,100); {Рисуем прямоугольник зелеными пунктирными толстыми линиями}
{И т.д.…}
ReadLn; {ожидание нажатия клавиши «Enter»}
CloseGraph; {«закрыть» графический режим}
End
Else WriteLn('Ошибка инициализации графики:', GraphErrorMsg(ErrCode)); {если графический режим не включился, то вывести
расшифровку кода ошибки}
End.
Download