C:使用填充填充圆圈

时间:2015-01-11 07:58:54

标签: c graphics flood-fill

每当我执行下面的代码时,整个屏幕都会填满红色的网格图案。我只想用红色填充圆形区域。

#include<graphics.h>
#include<conio.h>
void main(){
    int gm, gd=DETECT;
    initgraph(&gd,&gm,"c:\\turboC3\\bgi");
    circle(100,100,50);
    setfillstyle(HATCH_FILL,RED);
    floodfill(100,100,RED);
    getch();
    closegraph();
}

输出:

enter image description here

1 个答案:

答案 0 :(得分:6)

在第floodfill(100,100,RED)行中,第三个参数必须是边框的颜色。默认情况下,您的圈子的边框颜色为WHITE,因此请将代码更改为:

#include<graphics.h>
#include<conio.h>
void main(){
    int gm, gd=DETECT;
    initgraph(&gd,&gm,"c:\\turboC3\\bgi");
    circle(100,100,50);
    setfillstyle(HATCH_FILL,RED);
    //Change RED to WHITE.
    floodfill(100,100,WHITE);
    getch();
    closegraph();
}

感谢你,我今天学到了新东西。 :)