首页 > 解决方案 > 保存迷宫的图像

问题描述

我使用 sfml 和 cpp 创建了一个迷宫生成器。程序运行后,它会创建一个迷宫,以 txt 文件格式保存其规格,然后继续保存图像。一切正常,但如果我增加网格的大小或减小单元格尺寸的大小,迷宫的某些部分不会保存在图像中。

我在屏幕上看到的 [不要担心没有响应的部分] 在此处输入图像描述

vs 保存了什么 在此处输入图像描述

如果想看源码可以在我的github上找到:Github Link

如果您想了解代码的工作原理,可以在我的博客上阅读:博客链接

模式注意事项:我的博客目前还没有货币化,我只是把它当作一个有趣的项目和挑战档案。

if(once)
        {
            cout<<"maze done!!";

            ofstream output("maze.txt");

            output<<rows<<" "<<cols<<" "<<cellDimensions<<endl;

            for(int i=0;i<rows;i++)
            {
                for(int j=0;j<cols;j++)
                {
                    for(int k=0;k<4;k++)
                    {
                        output<<grid[i][j].wall[k]<<" ";
                    }
                    output<<endl;
                }
            }

            // std::chrono::milliseconds timespan(60000);
            // std::this_thread::sleep_for(timespan); 

            sf::Vector2u windowSize = window.getSize();
            sf::Texture texture;
            texture.create(windowSize.x, windowSize.y);
            texture.update(window);

            sf::Image screenshot = texture.copyToImage();
            screenshot.saveToFile("sc.png");    
            once=0;
        }

我觉得我尝试保存图像的最后几句话是问题所在。

感谢您!

标签: c++sfml

解决方案


推荐阅读