Описание функций Си

       

Функция Получает информацию



     getfillsettings
Функция Получает информацию о текущем шаблоне и цвете заполнения.
Синтаксис #include
void far getfillsettings(struct fillsettingstype far *fillinfo);
Файл, содержащий graphics.h прототип
Описание getfillsettings заполняет структуру fillsettingstype, на которую указывает fillinfo информацией о текущем шаблоне и цвете заполнения. fillsettingstype определяется в graphics.h следу- ющим образом:
struct fillsettingstype{ int pattern; /* текущий шаблон заполнения */ int color; /* текущий цвет заполнения */ };
Функции bar, bar3d, fillpoly, floodfill и pieslice целиком заполняют область текущим шабло- ном заполнения в текущем цвете заполнения. Сущес- твует 11 видов шаблонов заполнения (сплошное, крестообразное, точечное и т. д.) Символические имена для встроенных шаблонов обеспечиваются пе- речисляемым типом fill_patterns в graphics.h. (смотри таблицу, приведенную ниже). Кроме этого, вы можете определить свои собственные шаблоны.
Если pattern равен 12 (USER_FILL), то в данное время используется шаблон, определяемый пользова- телем; в противном случае pattern задает номер встроенного шаблона. Перечисляемый тип fill_patterns, заданный в graphics.h задает имя встроенного шаблона заполнения и индикатор для шаблона, определяемого пользователем.
имя значение описание
EMPTY_FILL 0 заполнение цветом фона SOLID_FILL 1 сплошное заполнение цветом заполнения LINE_FILL 2 заполнение ______ LSTLASH_FILL 3 заполнение ////// SLASH_FILL 4 заполнение /// толстой линией BKSLASH_FILL 5 заполнение \\\ толстой линией LTBKSLASH_FILL 6 заполнение \\\\ HATCH_FILL 7 светлая штриховка сеткой XHATCH_FILL 8 крестообразная штриховка INTERLEAVE_FILL 9 тканеобразная штриховка WIDE_DOT_FILL 10 заполнение редкими точками CLOSE_DOT_FILL 11 заполнение частыми точками USER_FILL 12 шаблон заполнения, определяемый пользователем
Все, кроме EMPTY_FILL заполняют текущим цветом заполнения; EMPTY_FILL использует текущий цвет фона.
Возвращаемое Нет. значение
Переносимость Функция уникальна для Turbo C++. Она работает только на компьютерах IBM PC и совместимых с ни- ми, оснащенных дисплейными адаптерами, поддержи- вающими графический режим.


Смотрите также
Пример:
#include
#include
#include
#include
/* имена поддерживаемых типов заполнения */ char *fname[] = {"EMPTY_FILL", "SOLID_FILL", "LINE_FILL", "LSTLASH_FILL", "SLASH_FILL", "BKSLASH_FILL", "LTBKSLASH_FILL", "HATCH_FILL", "XHATCH_FILL", "INTERLEAVE_FILL", "WIDE_DOT_FILL", "CLOSE_DOT_FILL", "USER_FILL" };
int main(void) { /* Запрос автоопределения */ int graphdriver = DETECT, gmode, errorcode; struct fillsettingstype fillinfo; int maxx,maxy; char patstr[40],colstr[40];
/* инициализация графики и локальных переменных */ initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */ errorcode = graphresult(); if(errorcode != grOk) /* если ошибка */ { printf("Ошибка :%s\n",grapherrormsg(errorcode)); printf("Для останова нажмите любую клавишу\n"); getch(); exit(1); /* завершение с кодом ошибки */ } maxx = getmaxx()/2; maxy = getmaxy()/2; /* получить информацию о текущем шаблоне и цвете */ getfillsettings(*fillinfo); /* преобразовать в строку */ sprintf(patstr,"Тип заполнения :%s.",fname[fillinfo.pattern]); sprintf(colstr,"Цвет :%d",fillinfo.color); /* вывести информацию */ settextjustify(CENTER_TEXT,CENTER_TEXT); outtextxy(midx,midy,patstr); outtextxy(midx,midy+2*textheight("W"),colstr); /* очистка */ getch(); closegraph(); return 0; }

Содержание раздела