Russian Belarusian English German Japanese Ukrainian

Rashka.studio - игры и приложения для Android! Заходи, ждём тебя =)

Getfillsettings

CuBook05

Функция

Получает информацию о текущем шаблоне и цвете заполнения.
 
Синтаксис

#include <graphics.h>
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 задает имя встроенного шаблона заполнения и индикатор для шаблона, определяемого пользователем.
 
Возвращаемое значение

Нет.
 
Переносимость

Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows.
 
Пример

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

/* имена поддерживаемых типов заполнения */
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",grapherrormessage(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;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий