- •Содержание
- •Imagesize
- •Initgraph
- •Installuserdriver
- •Installuserfont
- •Cleardevice
- •Closegraph
- •Detectgraph
- •Drawpoly
- •Ellipse
- •Fillellipse
- •Fillpoly
- •Floodfill
- •Getarccoords
- •Getaspectratio
- •Getbkcolor
- •Getcolor
- •Getdefaultpalette
- •Getdrivername
- •Getfillpattern
- •Getfillsettings
- •Getgraphmode
- •Getimage
- •Getlinesettings
- •Getmaxcolor
- •Getmaxmode
- •Getmaxx
- •Getmaxy
- •Getmodename
- •Getmoderange
- •Getpallete
- •Getpalettesize
- •Getpixel
- •Gettextsettings
- •Getviewsettings
- •Graphdefaults
- •Grapherrormsg
- •_Graphfreemem
- •_Graphgetmem
- •Graphresult
- •Imagesize
- •Initgraph
- •Installuserdriver
- •Installuserfont
- •Linerel
- •Moverel
- •Outtext
- •Outtextxy
- •Pieslice
- •Putimage
- •Putpixel
- •Rectangle
- •Registerbgidriver
- •Restorecrtmode
- •Setactivepage
- •Setallpalette
- •Setaspectratio
- •Setbkcolor
- •Setcolor
- •Setfillpattern
- •Setfillstyle
- •Setgraphbufsize
- •Setgraphmode
- •Setlinestyle
- •Setpalette
- •Setrgbpalette
- •Settextjustify
- •Settextstyle
- •Setusercharsize
- •Setviewport
- •Setvisualpage
- •Setwritemode
- •Textheight
- •Textwidht
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();
}
-----------------------------------------------------------------