Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

floodfill

floodfill


Функция            Заполняет ограниченную область.

Синтаксис          #include <graphics.h>
                   void far floodfill(int x, int y
                                       int border);

Файл, содержащий   graphics.h
прототип

Описание           floodfill заполняет    ограниченную    область   на
                   устройствах  с  побитовым  отображением.  (x,y)   -
                   произвольная  точка  внутри  закрашиваемой области.
                   Область,   граница    которой    окрашена    цветом
                   border,заполняется   текущим   цветом   закраски  и
                   шаблоном.  Если указанная  точка  находится  внутри
                   ограниченной  области,то  окрашивается  область,  а
                   если  снаружи,  то  закрашивается   все   поле   за
                   пределами области.

                   Используйте, если  это  возможно,  fillpoly  вместо
                   floodfill.    Это   позволит   обеспечить   кодовую
                   совместимость с будущими версиями.

                   Замечание. floodfill  не   работает   с   драйвером
                   IBM-8514.

Возвращаемое       Если в процессе заполнения области возникла
значение           ошибка, то graphresult возвращает значение -7.

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

Смотрите также     drawpoly, fillpoly, graphresult, setcolor,
                   setfillstyle.

Пример:

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

int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
int maxx,maxy;

/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");

/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk)  /* если ошибка */
{
   printf("Ошибка :%s\n",grapherrormessage(errorcode));
   printf("Для останова нажмите любую клавишу\n");
   getch();
   exit(1);  /* завершение с кодом ошибки */
}
maxx = getmaxx();
maxy = getmaxy();
/* выбор цвета рисования */
setcolor(getmaxcolor());
/* выбор цвета заполнения */
selectfillstyle(SOLID_FILL,getmaxcolor());
/* нарисовать границу вокруг экрана */
rectangle(0,0,maxx,maxy);
/* нарисовать несколько окружностей */
circle(maxx/3,maxy/2,50);
circle(maxx/2,20,100);
circle(maxx-20,maxy-50,75);
circle(20,maxy-20,25);
/* ожидать нажатия клавиши */
getch();
/* заполнить ограниченную область */
floodfill(2,2,getmaxcolor());
/* очистка */
getch();
closegraph();
return 0;
}

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог