Скачиваний:
201
Добавлен:
17.06.2016
Размер:
2.69 Mб
Скачать

Getlinesettings/3

getlinesettings возвращает аргументам текущие значения шаблона ли-

ний, маску линий и их толщину.

getlinesettings(LineStyle,Upattern,Thickness) /*(o,o,o)*/

(integer, integer, integer)

line/4

line проводит линию от точки (X0,Y0) до точки (X1,Y1).

line(X0,Y0,X1,Y1) /*(i,i,i,i)*/

(integer,integer,integer,integer)

linerel/2

linerel проводит линию от текущей позиции до точки удаленной от нее

на (Dx,Dy).

linerel(Dx,Dy) /*(i,i)*/

(integer, integer)

lineto/2

lineto проводит линию от текущей позиции до точки (X,Y)

lineto(X,Y) /*(i,i)*/

(integer, integer)

setwritmode/1

setwritmode устанавливает режим записи для рисования линий.

setwritmode(WriteMode) /*(o)*/

(integer)

setwritmode определяет, каким образом графические предикаты BGI бу-

дут проводить линии на экране. Если WriteMode = 0, линии проводятся по-

верх изображения на экране. Если же WriteMode = 1, то цвет линий будет

комбинироваться с цветом на экране. Файл GRAPDECL.PRO определяет две кон-

станты, которые вы можете использовать для WriteMode:

CopyPut = 0 линия выводится поверх изображения

XORPut = 1 цвет линии комбинируется с цветом экрана

Два последовательных обращения к рисованию одной и той же линии с

WriteMode = XORPut (или 1) приведут к стиранию этой линии и восстановле-

нию первоначального экрана.

Окружности

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

(закрашивая) их с помощью предикатов arc, circle и ellipse. Предикат

fillellipse рисует и заполняет (закрашивает) эллипс, а pieslice и

pieslicexy рисуют и заполняют сектор. Далее вместо термина закрашивать мы

будем применять термин заполнять, так как он более емкий (заполнять можно

не только цветом или узором, но и символами). Вы можете узнать координаты

последней построенной дуги или эллипса, вызвав предикат getarccoords.

Одним из параметров, которым характеризуется каждый графический

драйвер и графический режим является коэффициент сжатия (aspect ratio).

Он используется в предикатах arc и circle в качестве масштабирующего мно-

жителя для проведения окружностей. Этот коэффициент может быть вычислен,

если вызвать getaspectratio и взять отношение величин Yasp и Xasp. Можно

также установить новое отношение, вызвав setaspectratio.

Коэффициент сжатия по Y, Yasp, нормализован к 10000. Во всех графи-

ческих адаптерах за исключением VGA и IBM8514 коэффициент сжатия по X,

Xasp, меньше, чем Yasp, так как высота пикселов больше их ширины. В адап-

терах VGA и IBM8514, имеющих "квадратные" пикселы, Xasp равен Yasp. В об-

щем, взаимоотношение между Yasp и Xasp может быть установлено таким, что-

бы:

Yasp = 10 000

Xasp <= 10 000

Соседние файлы в папке Документация