Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Modul_Graph.docx
Скачиваний:
2
Добавлен:
09.08.2019
Размер:
44.58 Кб
Скачать

3. Основные процедуры и функции, используемые в графическом режиме

Процедура Arc

procedure Arc (X, Y: Integer; StAngle, EndAngle, Radius: Word);

Строит дугу окружности текущим цветом с учетом масштабов по осям. Текущий цвет задается процедурой SetColor, текущие параметры линии - процедурой SetLineStyle. Изменение относительных масштабов изображения по вертикали и горизонтали осуществляется процедурой SetAspectRatio.

X, Y – координаты центра дуги;

StAngle – угол до начальной точки дуги, отсчитываемый против часовой стрелки от горизонтальной оси, направленной слева направо;

EndAngle – угол до конечное точки дуги, отсчитываемый против часовой стрелки от горизонтальной оси, направленной слева направо;

Radius – радиус дуги.

Процедура Bar

procedure Bar(Xl, Yl, X2, Y2: Integer);

Строит прямоугольник, закрашенный текущим орнаментом и цветом заполнения. Орнамент и цвет заполнения задаются процедурой SetFillStyle или SetFillPattern.

XI, Yl, X2, Y2 – координаты левого верхнего и правого нижнего углов прямоугольника.

Процедура Bar3D

procedure Bar3D(Xl, Yl, X2, Y2: Integer; Depth Word; Top:Boolean);

Строит параллелепипед. закрашенный текущим орнаментом и цветом заполнения. Орнамент и цвет заполнения задаются процедурой SetFillStyle или SetFillPattern.

XI, Yl, X2, Y2 – координаты левого верхнего и правого нижнего углов передней грани;

Depth – ширина боковой грани (отсчитывается по горизонтали);

Top – признак включения верхней грани (если True - верхняя грань вычерчивается, в противном случае верхняя грань не отображается).

Процедура Circle

procedure Circle(X, Y: Integer; Radius: Word);

Строит окружность текущим цветом с учетом масштабов по осям. Текущий цвет задается процедурой SetColor, текущие параметры линии – процедурой SetLineStyle. Изменение относительных масштабов изображения по вертикали и горизонтали осуществляется процедурой SetAspectRatio.

X, Y – координаты центра окружности;

Radius – радиус окружности.

Процедура ClearDevice

procedure ClearDevice;

Очищает графический экран, закрашивает его в цвет фона, устанавливает указатель текущей позиции в точку с координатами (0, 0). Цвет фона задается процедурой SetBkColor.

Процедура Ellipse

procedure Ellipse(X, Y: Integer; StAngle. EndAngle: Word; XRadius, YRadius: Word);

Рисует дугу эллипса текущим цветом. Текущий цвет задается процедурой SetColor, текущие параметры линии - процедурой SetLineStyle. Изменение относительных масштабов изображения по вертикали и горизонтали осуществляется процедурой SetAspectRatio.

X, Y – координаты центра эллипса;

StAngle – угол до начальной точки эллипса, отсчитываемый против часовой стрелки от горизонтальной оси. направленной слева направо;

EndAngle – угол до конечной точки эллипса, отсчитываемый против часовой стрелки от горизонтальной оси, направленной слева направо; '

XRadius, YRadius – горизонтальная и вертикальная полуоси эллипса.

Процедура FillEllips

procedure FillEllipse(X, Y: Integer; XRadius, Yradius: Word);

Строит эллипс, закрашенный текущим орнаментом и цветом заполнения. Орнамент и цвет заполнения задаются процедурой SetFillStyle или SetFillPattern. Текущий цвет контура задается процедурой SetColor, текущие параметры линии - процедурой SetLineStyle.

Изменение относительных масштабов изображения по вертикали и горизонтали осуществляется процедурой SetAspectRatio.

X, Y – координаты центра эллипса;

XRadius, YRadius – горизонтальная и вертикальная полуоси эллипса.

Процедура FloodFill

procedure FloodFill(X, Y: Integer; Border: Word);

Закрашивает область, ограниченную непрерывной линией, текущим орнаментом и цветом заполнения. Орнамент и цвет заполнения задаются процедурой SetFillSlyle или SetFillPattern.

X, Y – координаты любой точки внутри закрашиваемой линии;

Border – цвет линии, до которой производится закрашивание.

Процедура GetAspectRatio

procedure GetAspectRatio(var Xasp, Yasp: Word);

Возвращает число точек (пикселов) на графическом экране по горизонтали и вертикали.

Xasp, Yasp – переменные, в которые процедура записывает число точек по горизонтали и вертикали.

Процедура Line

procedure Line(X1, Y1, X2, Y2: Integer);

Проводит линию текущего цвета между точками с координатами (X1, Y1) и (X2, Y2) без изменения значения указателя координат. Текущий цвет задается процедурой SetColor, текущие параметры линии - процедурой SetLineStyle, a режим построения линии - процедурой SetWriteMode.

X1, Yl, X2, Y2 – координаты точек, между которыми проводится линия.

Процедура LineRel

procedure LineRel(Dx, Dy: Integer);

Проводит линию текущего цвета из текущей позиции в точку, сдвинутую относительно исходной позиции на величины Dx и Dy. Текущий цвет задается процедурой SetColor, текущие параметры линии – процедурой SetLineStyle, a режим построения линии – процедурой SetWriteMode.

Dx, Dy – смещение координат точки конца линии по отношению к исходным координатам.

Процедура LineTo

procedure LineTo(X, Y: Integer);

Проводит линию текущего цвета из текущей позиции в точку с заданными координатами. Текущий цвет задается процедурой SetColor, текущие параметры линии – процедурой SetLineStyle, a режим построения линии – процедурой SetWriteMode.

X, Y - координаты точки, до которой проводится линия.

Процедура MoveRel

procedure MoveRel(Dx, Dy: Integer);

Перемещает указатель координат на заданное расстояние (Dx, Dy) по отношению к его предыдущему положению (точка на экране не высвечивается).

Dx, Dy - смещение текущего указателя относительно его старого положения.

Процедура MoveTo

procedure MoveTo(X, Y: Integer);

Перемещает текущий указатель координат в точку окна с координатами (X, Y). Точка на экране не высвечивается.

X, Y – координаты точки относительно левого верхнего угла окна.

Процедура PutPixel

procedure putPixel(X, Y: Integer; Pixel: Word);

Закрашивает пиксел с заданными координатами в цвет Pixel.

X, Y – координаты пиксела;

Pixel – цвет, в который закрашивается пиксел.

Процедура Rectangle

procedure Rectangle(Xl, Yl, X2, Y2: Integer);

Строит контур прямоугольника текущим цветом. Текущий цвет задается процедурой SetColor, текущие параметры линии – процедурой SetLineStyle, a режим построения линии – процедурой SetWriteMode.

X1, Y1 – координаты левого верхнего угла прямоугольника;

X2, Y2 – координаты правого нижнего угла прямоугольника (необходимо чтобы 0 <= X1 < X2 <= GetMaxX и 0 <= Y1 < Y2 <= GetMaxY).

Процедура SetAspectRatio

procedure SetAspectRatio(Xasp, Yasp: Word);

Меняет относительный масштаб изображения по горизонтали и вертикали.

Xasp, Yasp – задаваемые масштабы по горизонтали и вертикали.

Процедура SetBkColor

procedure SetBkColor(Color: Word);

Устанавливает цвет фона экрана.

Color - устанавливаемый цвет (соответствует номеру цвета в палитре или черный, если Color = 0).

Процедура SetCotor

procedure SetColor(Color: Word);

Устанавливает текущий цвет, которым будут изображаться контуры фигур и тексты.

Color - устанавливаемый цвет (номер цвета из палитры).

Процедура SetFillPattern

procedure SetFillPattern(Pattern:FillPatternType;Color:Word);

Задает произвольный орнамент, а также цвет для заполнения фигур.

Pattern – задаваемый пользователем орнамент.

Color – цвет заполнения фигур.

Процедура SetFillStyle

procedure SetFillStyle(Pattern: Word; Color: Word);

Задает стандартные орнамент и цвет заполнения фигур.

Pattern – задаваемый стандартный параметр;

Color – цвет заполнения фигур (номер цвета в палитре).

Процедура SetLineStyle

procedure SetLineStyle(LineStyle: Word; Pattern: Word;

Thickness: Word);

Задает текущие параметры линии (стиль, шаблон и толщину).

LineStyle – стиль линий;

Pattern – шаблон линии – задается только в случае, если LineStyle = UserBitLn; представляется в виде двухбайтового числа, каждый бит которого равен 1, если очередной пиксель следует высветить, и 0 – в противном случае;

Thickness – толщина линии.

Процедура SetPalette

procedure SetPalette(ColorNum: Word; Color: Shortint);

Меняет цвет одной компоненты в палитре.

ColorNum – номер компоненты палитры;

Color – задаваемый цвет.

Функция GetBKColor

function GetBKColor: Word;

Возвращает номер текущего цвета фона в палитре.

Функция GetColor

function GetColor: Word;

Возвращает номер цвета в палитре, заданного последней процедурой SetColor.

Функция GetMaxX

function GetMaxX: Integer;

Возвращает максимальную координату Х для текущего драйвера в текущем режиме.

Функция GetMaxY

function GetMaxY: Integer;

Возвращает максимальную координату Y для текущего драйвера в текущем режиме.

Функция GetPixel

function GetPixel(X, Y: Integer): Word;

Возвращает цвет пиксела с заданными координатами.

Функция GetX

function GetX: Integer;

Возвращает координату X текущей позиции на экране относительно установленного графического окна.

Функция GetY

function GetY: Integer;

Возвращает координату Y текущей позиции на экране относительно установленного графического окна.

Коды цветов (для процедур SetPalette и SetAllPalette)

Таблица 2.1.

Имя

Значение

Назначение

Black

Blue

Green

Cyan

Red

Magenta

Brown

LightGray

DarkGray

LightBlue

LightGreen

LightCyan

LightRed

LighlMagenta

Yellow

White

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Черный

Синий

Зеленый

Голубой

Красный

Фиолетовый

Коричневый

Светло-серый

Темно-серый

Светло-синий

Светло-зеленый

Светло-голубой

Розовый

Светло-фиолетовый

Желтый

Белый

Коды типов линий для процедур GetLineStyle, SetLineSlyle и GetLineSettings

Таблица 2.2.

Имя

Значение

Назначение

SolidLn

DottedLn

CenterLn

DashedLn

UserBitLn

0

1

2

3

4

Сплошная

Пунктирная

Штрихпунктирная

Штриховая

Заданная пользователем

Толщины линий для процедур GetLineStyle, SetLineStyle и GetLineSettings

Таблица 2.3.

Имя

Значение

Назначение

NormWidth

ThickWidth

1

3

Нормальная

Толстая

Константы изображения параллелепипеда для процедуры Bar3D

Таблица 2.4.

Имя

Значение

Назначение

TopOn

TopOff

True

False

Закрашивается верхняя грань

He закрашивается верхняя грань

Константы орнамента заполнения для процедур GetFillStyle и SetFillSlyle

Таблица 2.5.

Имя

Значение

Назначение

EmptyFill

SolidFill

LineFill

LtSlashFill

SlashFill

BkSlashFill

LtBkSlashFill

HatchFill

XHatchFill

InterleaveFill

WideDotFill

CloseDotFill

UserFill

0

1

2

3

4

5

6

7

8

9

10

11

12

Заполнение цветом фона

Однородное заполнение цветом

Заполнение ---

Заполнение ///

Заполнение /// толстыми линиями

Заполнение \\\ толстыми линиями

Заполнение \\\

Заполнение клеткой

Заполнение косой клеткой

Заполнение частой сеткой

Заполнение редкими точками

Заполнение частыми точками

Заполнение определяется пользователем

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]