📜  C语言中的fillpoly()函数(1)

📅  最后修改于: 2023-12-03 15:00:13.742000             🧑  作者: Mango

C语言中的fillpoly()函数

fillpoly() 是 C 语言中的图形函数,用于填充一个多边形。它需要三个参数,分别是窗口号、多边形的顶点数组和顶点数。使用这个函数可以在屏幕上绘制并填充一个多边形。

函数原型
void fillpoly(int window, int x_point[], int y_point[], int vertex_count);
参数说明
  • window:要在哪个窗口中绘制多边形。
  • x_point:一个数组,存储多边形各个顶点的横坐标。
  • y_point:一个数组,存储多边形各个顶点的纵坐标。
  • vertex_count:多边形的顶点数。
实例

下面是使用 fillpoly() 函数绘制一个六边形的例子:

#include <graphics.h>

int main() {
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "");

    int x_points[] = {100, 150, 200, 200, 150, 100};
    int y_points[] = {100, 50, 100, 150, 200, 150};
    int vertex_count = 6;
    fillpoly(0, x_points, y_points, vertex_count);

    getch();
    closegraph();
    return 0;
}

上面的程序将在屏幕上绘制一个六边形,并将其填充。注意在使用 fillpoly() 函数前,你需要调用 initgraph() 函数初始化图形界面,并在程序结束前调用 closegraph() 函数关闭它。

注意事项
  • 顶点数组的长度必须为顶点数的两倍,因为对于每个顶点都需要提供一个横坐标和一个纵坐标。
  • fillpoly() 函数只能绘制并填充凸多边形,对于凹多边形无法正确填充。
  • fillpoly() 函数会填充多边形中的所有像素,包括其内部。这意味着如果你的多边形中有一些小的凹角,填充后可能会出现一些奇怪的效果。