Установочные процедуры
I. Процедуры setcolor, setbkcolor устанавливают текущий цвет для выводимых линий, символов и цвета фона.
Формат обращения: setcolor (цвет); setbkcolor (цвет); где цвет Ч выражение типа word, задающее текущий цвет символов (setcolor) или фона (setbkcolor). В модуле graph определены следующие константы для задания цвета:
const
black= 0; {черный}
blue = 1; {синий}
green= 2; {зеленый}
cyan= 3; {голубой}
red= 4; {красный}
magenta= 5; {фиолетовый}
brown= 6; {коричневый}
lightgrey= 7; {светло-серый}
darkgrey= 8; {темно-серый}
lightblue= 9; {ярко-синий}
lightgreen= 10; {ярко-зеленый}
lightcyan=11; {ярко-голубой}
lightred= 12; {розовый}
lightmagenta= 13; {малиновый}
yellow= 14; {желтый}
white= 15; {белый}
II. Процедура setlinestyle устанавливает стиль вычерчиванемых линий.
Формат обращения: setlinestyle (вид,образец,толщина); Здесь параметры имеют следующие значения:
Ч вид Ч выражение типа word, означающее вид линии. Вид линии определяется следующими константами:
const
solidln = 0; {сплошная линия}
dottedln = 1; {точечная линия}
centerln = 2; {штрихпунктирная линия}
dashedln = 3; {пунктирная линия}
userbitln = 4; {вид линии определяется пользовантелем};
Чобразец Ч выражение типа word, указывающее обранзец линии. Для всех видов линий от 0 до 3 это значенние задается равным нулю; для пользовательского вида задается собственный шаблон;
Чтолщина Ч выражение типа word, задающее толщину линии. Параметр толщина может принимать одно из двух значений:
const
normwidth = 1; {толщина в одну точку}
thickwidth = 3; {толщина в три точки}
III. Процедура setfillstyle устанавливает стиль (тип и цвет) заполнения фигур.
Формат обращения: setfillstyle (тип,цвет); Здесь параметры имеют следующие значения:
Ч тип Ч переменная типа word, определяющая тип занполнения.
Тип заполнения определяется следующими константами:
const
emptyfill = 0; {заливка цветом фона}
solidfill = 1; {заливка назначенным цветом}
linefill = 2; {штриховка линиями}
itslashfill = 3; {штриховка //////}
slashfill = 4; {штриховка утолщенными /////}
bkslashfill = 5; {штриховка \\\\\\}
itbkslashfill = 6; {штриховка утолщенными \\\\\\}
hatchfill = 7; {штриховка ++++++}
xhatchfill = 8; {штриховка хххххх}
interleavefill = 9; {штриховка в клетку}
widedotfill =10; {штриховка редкими точками}
closedotfill =1 1 ; {штриховка частыми точками}
userfill =12; {штриховка определяется пользователем}
Ч цвет Ч переменная типа word, задающая цвет заполннения.
Если параметр тип имеет значение 12, то рисунок узонра определяется программистом и задается в процедунре setfillpattern, которая может использоваться без setнfillstyle.
IV. Процедура setfillpattern устанавливает образец и цвет заполнения.
Формат обращения:
setfillpattern (тип, цвет); где цвет Ч переменная типа word, задающая цвет занполнения;
тип Ч переменная типа fillpatterntype, которая в модуле graph имеет описание: type fillpatterntype=array[1..8] of byte; Свой тип заполнения пользователь, таким образом, заданет в матрице 8x8 точек: восемь элементов массива, кажндый из которых задается двумя шестнадцатеричными цинфрами (10101010 Ч восемь двоичных цифр, задаются АА Ч двумя шестнадцатеричными). Следующий фрагмент пронграммы позволяет установить стиль лшахматной доски╗: ... const fk: fillpatterntype = ($AA,$55,$AA,$55,$AA,$55, $АА,$55); ... setbkcolor(...); ... setcolor(...); ... setfillpattern(fk,red);
V. Процедура setviewport устанавливает прямоугольное окно на графическом экране. Формат обращения: setviewport(x1,y1,x2,y2,pr); где х1,у1,х2,у2 Ч выражения типа integer, задающие конординаты левого верхнего и правого нижнего углов окна; рr Ч выражение типа boolean, определяющее лотсечку╗ не умещающихся в окне элементов изображения. Если аргумент рг задать равным true, элементы изображения, не умещающиеся в пределах окна, отсекаются, в пронтивном случае границы окна игнорируются.
VI. Процедура setwritemode устанавливает способ взаимондействия вновь выводимых линий для line, lineto, linerel, rectangle, drawpoly с существующим изображением.
Формат обращения: setwritemode (0 или 1); где 0 Ч обозначает лпереслать╗, а 1 Ч лисключающее или╗ (см. putimage). ...setwritemode(l);
x1: = 0; у1: = 200;
for i:=1 to 10 do
begin
rectangle(x1,y1,x1 + 100,y1 + 100);
delay(I000);
rectangle(x1,y1,x1 + 100,y1 + 100);
x1:=x1+50;
end;...{Прямоугольник будет двигаться от левого к правому краю экрана}
3.11.6. Информационные процедуры и функции
I. Процедура detectgraph возвращает тип драйвера и режим его работы.
Формат обращения: detectgraph (драйвер, режим); где драйвер Ч переменная типа integer, определяющая тип драйвера; режим Ч переменная типа integer, вознвращающая максимально возможный для данного адаптера номер графического режима.
II. Функция graphresult возвращает значение типа integer, в котором закодирован результат последнего обращенния к графическим процедурам.
Формат обращения: graphresult.
Если ошибка не обнаружена, значением функции будет нуль, в противном случае Ч отрицательное число, уканзывающее номер ошибки. После обращения к функции graphresult признак ошибки сбрасывается, поэтому понвторное обращение к ней вернет нуль.
III. Функция grapherrormsg возвращает значение типа string, в котором по указанному коду ошибки дается соответствующее текстовое сообщение.
Формат обращения: grapherrormsg (код); где код Ч это значение ошибки, возвращенной функнцией graphresult.
IV. Функции getmaxx, getmaxy, getx, gety возвращают значенния типа integer, содержащие максимальные или текущие координаты экрана или окна по горизонтали и вертикали. Формат обращения: getmaxx, getmaxy, getx, gety.
V. Процедура getaspectratio возвращает два числа, познволяющие оценить соотношение сторон экрана. Формат обращения: getaspectratio (x,y);
где х,у Ч переменные типа word, позволяющие вычиснлить отношение сторон графического экрана в точках. Этот коэффициент может использоваться при постронении правильных геометрических фигур.
VI. Функции getmaxcolor, getcolor, getbkcolor возвращанют значения типа word, содержащие код максимально допустимого, текущего цвета символа и фона. Формат обращения: getmaxcolor, getcolor, getbkcolor.
VII. Процедура getlinesettings возвращает текущий стиль линий.
Формат обращения: getlinesettings(стиль);
где стиль Ч переменная типа linesettingstype, которая определена в модуле graph как: type linesettingstype = record
linestyle:word;{вид линии}
pattern :word; {образец)
end;
Информация о виде, образце и толщине линии привендена в пункте 3.11.5(11).
VIII. Процедура getfillsettings возвращает текущий стиль заполнения.
Формат обращения: getfillsettings (стиль); где стиль Ч переменная типа fillsettingstype, который определен в модуле graph как: type fillsettingstype = record
pattern:word; {тип заполнения} colonword {цвет}
end;
Назначение полей тип и цвет приведены в пункте 3.11.5(111).
IX. Процедура getfillpattern возвращает образец заполненния, установленный ранее процедурой setfillpattern. Формат обращения: getfillpattern (образец);
где образец Ч переменная типа fillpatterntype, в котонром возвращается образец заполнения. Информация о назначении образца заполнения пользонвателя приведена в пункте 3.11.5(IV). Если пользовантель не установил свой образец, то массив лобразец╗ будет заполнен восемью байтами со значением FF шестнадцатеричное.
X. Процедура getarccoords возвращает координаты трех точек: центра, начала и конца дуги для фигур arc, ellipse и пр.; она позволяет, например, организовать вращение линий, параллелепипедов и других фигур. Формат обращения: getarccoords (переменная типа запись); где переменная типа запись должна иметь стандартнный тип arccoordstype, поля которого объявлены в мондуле graph как type arccoordstype = record x,y,xstart, ystart,xend,yend: integer end;
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.