setfillstyle() and floodfill() in C - GeeksforGeeks

25 Jan, 2018
The header file graphics.h contains setfillstyle() function which sets the current fill pattern and fill color. floodfill() function is used to fill an enclosed area. Current fill pattern and fill color is used to fill the area.
Syntax :
void setfillstyle(int pattern, int color)

void floodfill(int x, int y, int border_color)

Examples :
Input : pattern = HATCH_FILL, Color = RED 
        circle : x = 250, y = 250, radius = 100 
        floodfill : x = 250, y = 250, border color =15
Output : 


Input : pattern = LTSLASH_FILL, Color = RED
       rectangle : left = 200, top = 200, right = 450, bottom = 450
       floodfill : x = 201, y = 201, border_color = 15
Output :


Below is the table showing INT VALUES corresponding to Colors :
COLOR               INT VALUES
-------------------------------
BLACK                   0
BLUE                    1
GREEN                   2
CYAN                    3   
RED                     4
MAGENTA                 5
BROWN                   6 
LIGHTGRAY               7 
DARKGRAY                8
LIGHTBLUE               9
LIGHTGREEN             10
LIGHTCYAN              11
LIGHTRED               12
LIGHTMAGENTA           13
YELLOW                 14
WHITE                  15

Below is the table showing INT VALUES corresponding to Patterns :
PATTERN              INT VALUES
-------------------------------
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

Below is the implementation for setfillstyle() and floodfill() function :
// C Implementation for setfillstyle// and floodfill function#include <graphics.h>  // driver codeint main(){    // gm is Graphics mode which is     // a computer display mode that    // generates image using pixels.    // DETECT is a macro defined in    // "graphics.h" header file    int gd = DETECT, gm;          // initgraph initializes the     // graphics system by loading    // a graphics driver from disk    initgraph(&gd, &gm, " ");      // center and radius of circle    int x_circle = 250;    int y_circle = 250;    int radius=100;          // setting border color    int border_color = WHITE;                // set color and pattern    setfillstyle(HATCH_FILL,RED);          // x and y is a position and    // radius is for radius of circle    circle(x_circle,y_circle,radius);          // fill the color at location     // (x, y) with in border color    floodfill(x_circle,y_circle,border_color);      getch();          // closegraph function closes the    // graphics mode and deallocates    // all memory allocated by     // graphics system     closegraph();          return 0;}
Output:


c-graphics
computer-graphics
C Language
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Substring in C++
Multidimensional Arrays in C / C++
Converting Strings to Numbers in C/C++
Left Shift and Right Shift Operators in C/C++
Function Pointer in C
Core Dump (Segmentation fault) in C/C++
rand() and srand() in C/C++
std::string class in C++
fork() in C
Enumeration (or enum) in C