Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
51
Добавлен:
02.05.2014
Размер:
765.95 Кб
Скачать

Getfillsettings

-----------------------------------------------------------------

Назначение:Возвращает информацию о текущих шаблоне и цвете

заполнения.

Синтаксис:#include<graphics.h>

void far getfillsettings(struct

fillsettingstype far *fillinfo);

Замечания:getfillsettingsзаносит в структуру

filsettingstype, на которую указываетfillinfo,

информацию о текущих шаблоне и цвете заполне-

ния. Структура fillsettingstypeописана в

grafics.hследующим образом:

struct getfillsettingstype {

int pattern; /* текущий шаблон

заполнения */

intcolor; /* текущий цвет

}; заполнения */

Функции bar, bar3d, fillpoly, floadfill и

piesliceзаполняют область текущим цветом за-

полнения. Всего имеется 11 предопределенных

шаблонов заполнения (такие как сплошной, точеч-

ный и др.). Символические имена предопределен-

ных шаблонов заданы перечисленным типом данных

fillpatterns в файле GRAPHICS.H (см. таблицу

ниже). Кроме того, вы можете описать свой собс-

твенный шаблон заполнения.

Если pattern= 12 (USER_FILL), то используется

определенный пользователем шаблон заполнения;

во всех других случаях patternзадает номер

предопределенного шаблона.

Перечисление fill_patterns, описанное в

graphics.h, задает имена предопределенных шаб-

лонов заполнения и индикатор для определенного

пользователем шаблона:

-----------------------------------------------

Имя Значение Описание

-----------------------------------------------

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

SOLID_FILL1 Сплошное заполнение

LINE_FILL 2 Заполняет ---

LTSLASH_FILL 3 Заполняет ///

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

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

LTBKSLASH_FILL6 Заполняет \\\

HATCH_FILL7 Заполняет редкой

решеткой

XHATCH_FILL8 Заполняет частой

решеткой

INTERLEAVE_FILL9 Заполняет

чередующимися линиями

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

точками

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

точками

USER_FILL12 Заполняет шаблоном

пользователя

-----------------------------------------------

Все шаблоны, кроме EMPTY_FILL, заполняются те-

кущим цветом заполнения. EMPTY_FILLиспользует

текущий цвет фона.

ВозвращаемоеНет.

значение

Переносимость:Данная функция работает только наIBMPCи сов-

местимых моделях при наличии соответствующих

графических адаптеров.

Смотри также:getfillpattern,setfillpattern,setfillstyle

Пример

#include<graphics.h>

#include<conio.h>

main()

{

/* требование автоопределения */

int graphdriver=DETECT, graphmode;

struct fillsettingstype save;

char savepattern[8];

char gray50[] = {0xAA, 0x55, 0xAA, 0x55,

0xAA, 0x55, 0xAA, 0x55};

/* инициализация графики */

initgraph(&graphdriver, &graphmod, "");

/* получить текущую установку */

getfillsettings(&save);

/* если шаблон пользователя */

if (save.pattern == USER_FILL)

/* то сохранить его */

getfillpattern(savepattern);

/* изменить стиль заполнения */

setfillstyle(SLASH_FILL,BLUE);

/* заштриховать голубой полоской */

bar( 0, 0, 100, 100);

/* собственный шаблон заполнения */

setfillpattern(gray50,YELLOW);

/* вычертить новую желтую полоску */

bar(100, 100, 200, 200);

/* если шаблон пользователя */

if (save.pattern == USER_FILL)

setfillpattern(savepattern, save.color);

/* то восстановить его */

else

/* иначе восстановить старый стиль */

setfillstyle(save.pattern, save.color);

getche();

closegraph();

}

-----------------------------------------------------------------