Модуль Graph
Интерфейс |
Назначение |
Procedure CloseGraph; | Закрывает графический режим |
Procedure DetectGraph(var grDriver, grMode : integer); GrDriver - код драйвера, grMode - код графического режима |
Определяет рекомендуемые к применению для данного компьютера графические драйвер и режим |
Function GetDriverName : string; Значение функции - имя используемого драйвера |
Определяет имя файла с используемым графическим драйвером |
Function GetGraphMode : integer; Значение функции - код графического режима |
Определяет код используемого графического режима |
Function GetMaxMode : integer; Значение функции - максимальное значение кода режима |
Определяет максимальное значение кода графического режима для используемого драйвера |
Function GetModeName : string; Значение функции - имя используемого графического режима |
Определяет имя используемого графического режима |
Procedure GetModeRange(grDriver: integer; var LoMode, HiMode : integer); grDriver - код графического режима; LoMode, HiMode - наименьшее и наибольшее значение кода графического режима для данного драйвера |
Определяет минимальное и максимальное значение кода графического режима для указанного при обращении драйвера |
Procedure GraphDefaults; | Устанавливает графический указатель в начало координат и переустанавливает графическую систему |
Function GraphErrorMsg(ErrorCode : integer): string; ErrorCode - код графической ошибки. Значение функции - текстовое сообщение о характере ошибки |
Дает строку - сообщение об ошибке графического режима по коду ошибки |
Function GraphResult: integer; Значение функции - код ошибки |
Определяет, произошла ли ошибка при исполнении процедур модуля |
Procedure lnitGraph(var grDriver, grMode : integer; PathToDriver: string); grDriver - код драйвера, grMode - код графического режима; PathToDriver - путь к файлу используемого драйвера |
Устанавливает заданный графический режим |
Function InstallUserDriver(Name : string; AutoDetectPtr: Pointer): integer; Name - имя файла графического драйвера AutoDetectPtr - указатель на процедуру, определяющую успешность запуска драйвера. Значение функции - цифровой код установленного драйвера. |
Инсталлирует пользовательский драйвер графического режима |
Procedure RegisterBGIdriver(Driver: pointer) : integer; Driver - указатель на драйвер |
Регистрирует драйвер графической системы |
Procedure RestoreSrtMode; | Закрывает графический режим и восстанавливает текстовый режим, установленный ранее |
Procedure SetGraphMode(grMode: integer); grMode - код графического режима |
Устанавливает другой графический режим без изменения драйвера |
Procedure ClearDevice; | Очищает экран, сбрасывает все графические установки к значениям по умолчанию, устанавливает графический указатель в положение (0,0) |
Procedure ClearViewPort; | Очищает экран, устанавливая фон, заданный в SetBRColor |
Function GetMaxX: integer; Значение функции - максимальная координата X |
|
Function GetMaxY: integer; Значение функции - максимальная координата Y |
|
Procedure GetAspectRatio(var Xasp, Yasp : word ); | Определяет коэффициенты, характеризующие расстояния между пикселами по осям Х и Y |
Function GetBkColor: word; Значение функции – код цвета фона |
Определяет установленный цвет фона |
Procedure GetViewSettings(var ViewPort: ViewPortType); Viewport - параметры текущего окна |
Запрашивает текущие параметры окна и отсечения |
Procedure SetBkColor(Color: word); Значение функции - код цвета фона |
Устанавливает цвет фона |
Procedure SetActivePage(Page : word); Page - номер активной страницы |
Устанавливает активную графическую страницу |
Procedure SetAspectRatio(var Xasp, Yasp : word ); Xasp, Yasp - коэффициенты по осям Х и Y |
Изменяет масштабный коэффициент отношения сторон экрана |
Procedure SetVisualPage(Page : word); Page - номер активной страницы |
Устанавливает номер видимой графической страницы |
Procedure SetViewPort(X1, Y1, X2, Y2 : integer; Clip : boolean); (X1, Y1) (X2, Y2) - координаты противоположных углов окна; Clip определяет, отсекать ли изображение за пределами окна (true) или нет (false) |
Устанавливает визуальный порт (окно) для вывода графического изображения |
Function GetColor : word; Значение функции - код цвета |
Возвращает текущий цвет
(установленный SetColor) |
Procedure GetDefaultPalette(var Palette : PaletteType); Palette - палитра (массив типа PaletteType) | Определяет, какая палитра действует в режиме по умолчанию |
Function GetMaxColor : word; Значение функции - максимальный код цвета |
Определяет максимальный код цвета в установленном режиме |
Procedure GetPalette(var Palette : PaletteType); Palette - палитра (массив типа PaletteType) |
Определяет, какая палитра установлена |
Function QetPaletteSize : word; Значение функции - количество цветов в палитре |
Возвращает размер таблицы палитры |
Procedure SetAIIPalette(var Palette : PaletteType); Palette - палитра (массив типа PaletteType) |
Устанавливает все цвета палитры |
Procedure SetColor(Color: word); Color - код цвета |
Устанавливает цвет для линий |
Procedure SetPalette(ColorNum, Color: word); ColorNum - код заменяемого цвета; Color - код нового цвета |
Устанавливает один новый цвет в палитре |
Procedure SetRGBPalette(ColorNum, RedValue, GreenValue, BlueValue : word ); ColorNum - код устанавливаемого в палитре цвета; RedValue, GreenValue, BlueValue – интенсивность красного, зеленого и синего для этого цвета |
Устанавливает в палитру цвет, заданный тремя компонентами: красным, зеленым и синим |
Function GetX : integer; GetX - координата X указателя |
Возвращает координату Х текущего положения указателя |
Function GetY: integer; GetY - координата Y указателя |
Возвращает координату Y текущего положения указателя |
Procedure MoveTo(X : integer; Y : integer); X, Y - координаты точки экрана |
Перемещает указатель в точку, заданную координатами X, Y |
Procedure MoveRel(DeltaX : integer; DeltaY : integer); DeltaX, DeltaY - вектор приращений координат точки экрана |
Перемещает указатель в точку, координаты которой отличаются от текущих координат на величину DeltaX, DeltaY |
Procedure FloodFill(X, Y : integer; ColorBorder: word); X, Y - координаты точки, вокруг которой идет закраска; ColorBorder - цвет, обозначающий границы области закраски |
Закрашивает произвольную область по заданным шаблону и цвету, вокруг заданной точки до границ, обозначенных определенным цветом |
Procedure GetFillPattern(var FillPattern : FillPatternType); FillPattern - массив типа FillPatternType, содержащий информацию о шаблоне |
Определяет установленный тип шаблона |
Procedure GetFillSettings(var Filllnfo : FillSettingsType); Filllnfo - запись типа FillSettingsType, содержащая информацию о шаблоне |
Определяет установленный тип шаблона |
Procedure GetLineSettings(var Linelnfo : LineSetting-sType); Linelnfo - запись типа LineSettingsType, содержащая информацию о типе линии |
Определяет установленный тип линии |
Procedure SetGraphBufSize(Size : word); Size - размер буфера |
Изменяет размер буфера для функций заполнения |
Procedure SetFillPattern(Pattern: FillPatternType; Color: word); Pattern - массив типа FillPatternType, содержащий информацию о шаблоне; Color - цвет закраски |
Устанавливает шаблон и цвет закраски |
Procedure SetFillStyle( Pattern, Color: word ); Pattern - код стандартного шаблона, Color – цвет закраски |
Устанавливает один из стандартных шаблонов и цвет закраски |
Procedure SetLineStyle(lineStyle, Pattern, Thickness : word); LineStyle - код стиля линии, Pattern - собственный шаблон линии, Thickness - толщина линии |
Устанавливает стиль линии как один из стандартных или по собственному шаблону |
Procedure Arc(X, Y: integer; StartAngle, EndAngle, R : word); X, Y - координаты центра окружности; StartAngle, EndAngle - начальный и конечный углы дуги окружности в градусах ( 0 359); R-радиус окружности в пикселах в направлении Х |
Дуга окружности. Процедура учитывает неодинаковость
масштаба по осям |
Procedure Bar(X1, Y1, Х2, Y2 : integer); (Х1, Y1) и (Х2, Y2) - координаты левого верхнего и правого нижнего углов прямоугольника |
Окрашенный прямоугольник без контура |
Procedure Bar3D(X1, Y1, Х2, Y2 : integer; Depth : word; Top : boolean); (X1, Y1) и (Х2, Y2) - координаты левого верхнего и правого нижнего углов параллелепипеда; Depth - его глубина; Тор -определяет, изображать ли верхнюю грань фигуры (true - изображать). |
Изображает трехмерный прямоугольный параллелепипед, с заполнением передней грани. Верхняя грань может изображаться или нет |
Procedure Circle(X, Y : integer; R : word); (X, Y) - координаты центра окружности; R - радиус в направлении оси Х |
Окружность. Процедура учитывает неодинаковость масштаба по осям |
Procedure DrawPoly(NumPoints : word; var PolyPoints); NumPoints - число точек, задающих ломаную линию, PolyPoints - массив точек (элементов типа Point), задающих ломаную линию |
Ломаная линия, проходящую через заданный массив точек |
Procedure Ellipse(X, Y : integer; StartAngle, EndAngle, Rx, Ry :word); X, Y - координаты центра эллипса; StartAngle, EndAngle -начальный и конечный углы дуги эллипса в градусах(0 359); Rx, Ry - полуоси эллипса в направлениях Х и Y в пикселах |
Дуга эллипса,начиная от StartAngle до EndAngle, полуоси эллипса в направлениях Х и Y заданы в пикселах и не учитывают масштаб изображения по осям |
Procedure GetArcCoords(var ArcCoords: ArcCoordsType); ArcCoords - запись, содержащая координаты дуги |
возвращает координаты дуги, изображенной процедурами Arc и Ellipse |
Procedure FillEllipse(X, Y : integer; Rx, Ry : word); X, Y - координаты центра эллипса; Rx, Ry - полуоси эллипса в направлениях Х и Y в пикселах |
Чертит закрашенный эллипс, полуоси эллипса в направлениях Х и Y заданы в пикселах; масштаб изображения по осям не учитывается |
Procedure FillPoly(NumPoints : word; var PolyPoints); NumPoints - число точек, задающих ломаную линию, PolyPoints - массив точек (элементов типа point), задающих ломаную линию |
Изображает закрашенный многоугольник, заданный массивом вершин |
Function GetPixel(X, Y : integer): word; X, Y - координаты точки, результат - цвет точки |
Возвращает цвет заданной точки |
Procedure Line (x1, у1, х2, у2 : integer); (х1,у1) и (х2,у2)-координаты конечных точек отрезка прямой |
Чертит отрезок прямой по двум заданным конечным точкам |
Procedure LineRel(DeltaX, DeltaY : integer); (DeltaX, DeltaY) - смещение конечной точки относительно начального положения указателя |
Чертит отрезок прямой от положения указателя до точки, смещенной относительно указателя на заданную величину. Перемещает указатель в конечную точку |
Procedure LineTo(X, Y : integer); (X, Y) - координаты точки, в которую проводится отрезок |
Чертит отрезок прямой от точки положения указателя до заданной точки. Перемещает указатель в эту точку |
Procedure Rectangle (x1, у1, х2, у2 : integer); (x1, у1) и (х2, у2) - координаты противоположных углов прямоугольника |
Чертит контур прямоугольника |
Procedure Sector(X, Y : integer; StartAngle, EndAngle, Rx, Ry :word); X, Y - координаты центра эллипса; StartAngle, EndAngle -крайние углы сектора эллипса в градусах (0...359); Rx, Ry - полуоси эллипса в направлениях Х и Y в пикселах |
Изображает заполненный сектор эллипса, ограниченный углами от StartAngle до EndAngle. Заполняется сектор от минимального до максимального значения углов, независимо от их следования |
Procedure PieSlice(X, Y : integer; StartAngle, EndAngle, R :word); X, Y - координаты центра эллипса; StartAngle, EndAngle - крайние углы сектора эллипса в градусах (0...359); R - радиус окружности в направлении Х в пикселах |
Изображает закрашенный сектор круга, ограниченный углами от StartAngle до EndAngle, радиус круга задан в пикселах в направлении Х и учитывает масштаб изображения по осям. Заполняется сектор от минимального до максимального значения углов, независимо от их следования |
Procedure PutPixel(X, Y : integer; Color: word); X, Y - координаты точки, Color - цвет точки |
Окрашивает точку экрана в заданный цвет |
Procedure GetTextSettings(var Textlnfo : TextSettingsType); Textlnfo - запись, содержащая действующие установки вывода текста |
Определяет установки вывода текста |
Procedure OutText(Text: string); Text - выводимая строка текста |
Выводит текст на экран начиная с позиции графического указателя. Позиция графического указателя смещается на ширину выводимого текста |
Procedure OutTextXY(X, Y : integer; Text: string); X, Y - координаты точки, к которой привязывается выводимый текст; Text - выводимая строка текста |
Выводит текст на экран относительно заданной точки, с учетом используемого типа юстировки |
Function lnstallUserFont(FontFileName : string): integer; FontFileName - имя файла, содержащего шрифт; Результат - номер (код) установленного шрифта |
Инсталлирует новый шрифт |
Procedure RegisterBGIFont(Font: pointer): integer; Font - указатель на шрифт |
Регистрирует шрифт для графической системы |
Procedure SetTextJustify(Horiz, Vert: word); Horiz, Vert - коды привязки текста по горизонтали и вертикали | Устанавливает тип привязки текста к точке вывода по горизонтали и вертикали |
Procedure SetTextStyle(Font, Direction, CharSize : word); Font - тип используемого шрифта, Direction -направление вывода надписи, CharSize – размер символов |
Устанавливает стиль выводимого текста |
Procedure SetUserCharSize(MultX, DivX, MultY, DivY: word); MultX, DivX, MultY, DivY - коэффициенты умножения (Mult) и деления (Div) по осям X и Y, соответственно | Масштабирование шрифтов с произвольным дробным масштабом |
Procedure SetWriteMode(WriteMode: integer); | |
Function TextHeight(Text: string): integer; Text - строка выводимого текста. Результат - высота текста в пикселах |
Определяет высоту текстовой строки при заданных установках стиля |
Function TextWidth(Text: string): integer; Text - строка выводимого текста. Результат - длина текста в пикселах |
Определяет длину текстовой строки при заданных установках стиля |
Procedure Getlmage(X1, Y1, Х2, Y2 : integer; var BitMap: pointer); (X1, Y1) и (Х2, Y2) - координаты противоположных углов прямоугольника, ограничивающего копируемую область экрана; BitMap - указатель на область памяти, отведенную для хранения данного изображения |
Копирует в ОЗУ прямоугольную область экрана |
Function lmageSize(X1, Y1, Х2, Y2 : integer): word; (X1, Y1) и (Х2, Y2) - координаты противоположных углов прямоугольника, ограничивающего область экрана; значение функции - объем информации в байтах |
Определяет размер в байтах памяти, необходимой для хранения прямоугольной области экрана |
Procedure Putlmage(X, Y : integer; var BitMap : Pointer; BitBIt: word); X, Y - координаты левого верхнего угла для выводимого изображения; BitMap - указатель на область памяти; BitBIt - код логической операции |
Выводит изображения из памяти ЭВМ в указанную область экрана с заданной логической операцией наложения нового изображения на старое |