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

Getfillsettings

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

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

заполнения.

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

void far getfillsettings(struct

fillsettingstype far *fillinfo);

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

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

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

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

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

struct getfillsettingstype {

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SOLID_FILL 1 Сплошное заполнение

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

LTSLASH_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 использует

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

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

значение

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

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

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

Смотри также: 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();

}

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