Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/130.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用FLK库添加多个形状_C++_C_Grid_Shapes - Fatal编程技术网

C++ 使用FLK库添加多个形状

C++ 使用FLK库添加多个形状,c++,c,grid,shapes,C++,C,Grid,Shapes,我一直在尝试制作一个棋盘格图案。 我可以把所有的东西都打印出来,但是我想找到一种方法来复制不同颜色的形状,这样我就不用浪费时间来创建64个矩形了。我真的不知道该怎么办 下面是使用Simple_window结构创建的窗口 Point tl{ 100,100 }; Simple_window win{ tl,440,440,"Canvas" }; 找出窗口上可以给出的最大距离,并将值设置为整数(x和y维度)。x_栅格和y_栅格是单个栅格正方形的尺寸 int x_size

我一直在尝试制作一个棋盘格图案。 我可以把所有的东西都打印出来,但是我想找到一种方法来复制不同颜色的形状,这样我就不用浪费时间来创建64个矩形了。我真的不知道该怎么办


下面是使用Simple_window结构创建的窗口

    Point tl{ 100,100 };
    Simple_window win{ tl,440,440,"Canvas" };
找出窗口上可以给出的最大距离,并将值设置为整数(x和y维度)。x_栅格和y_栅格是单个栅格正方形的尺寸

    int x_size = win.x_max();
    int y_size = win.y_max();
    int x_grid = 55;
    int y_grid = 55;
使用Lines类构建网格。For循环用于确定线将放置在何处以形成网格

    Lines grid;
    for (int x = x_grid; x < x_size; x += x_grid) {
        grid.add(Point{ x,0 }, Point{ x,y_size });
    }
    for (int y = y_grid; y < y_size; y += y_grid) {
        grid.add(Point{ 0,y }, Point{ x_size,y });
    }
    win.attach(grid);
线网格;
对于(int x=x_网格;x
在这里,我使用矩形类创建了两种不同的颜色,但大小相同。 现在我只把平方放在一个点上。然而,就像我之前所说的,我需要它们遍布整个图像。除了制作64个形状,还有什么其他方法可以让他们复制正方形吗?我认为其中涉及到一些循环

    Rectangle rx1(Point(55, 0), 55, 55);
    Color moss_green(fl_rgb_color(173, 223, 173));
    rx1.set_color(Color::invisible);
    rx1.set_fill_color(moss_green);
    win.attach(rx1);

    Rectangle ry1(Point(0, 0), 55, 55);
    Color cherry_blossom_pink(fl_rgb_color(255, 183, 197));
    ry1.set_color(Color::invisible);
    ry1.set_fill_color(cherry_blossom_pink);
    win.attach(ry1);

    win.wait_for_button();

    }

        catch (exception& e) {
        cerr << "exception: " << e.what() << endl;
        keep_window_open();
    }
    catch (...) {
        cerr << "exception\n";
        keep_window_open();
    }
矩形rx1(点(55,0),55,55);
颜色苔藓绿(fl_rgb_颜色(173223173));
rx1.设置颜色(颜色:不可见);
rx1.设置填充颜色(苔藓绿);
连接(rx1);
矩形ry1(点(0,0),55,55);
彩色樱花粉红(fl_rgb_彩色(255183197));
ry1.设置颜色(颜色::不可见);
ry1.设置填充颜色(樱花粉色);
赢得。附加(ry1);
赢。等待按钮();
}
捕获(例外和e){
瑟尔
    Rectangle rx1(Point(55, 0), 55, 55);
    Color moss_green(fl_rgb_color(173, 223, 173));
    rx1.set_color(Color::invisible);
    rx1.set_fill_color(moss_green);
    win.attach(rx1);

    Rectangle ry1(Point(0, 0), 55, 55);
    Color cherry_blossom_pink(fl_rgb_color(255, 183, 197));
    ry1.set_color(Color::invisible);
    ry1.set_fill_color(cherry_blossom_pink);
    win.attach(ry1);

    win.wait_for_button();

    }

        catch (exception& e) {
        cerr << "exception: " << e.what() << endl;
        keep_window_open();
    }
    catch (...) {
        cerr << "exception\n";
        keep_window_open();
    }