从填充了类

时间:2018-01-26 19:31:00

标签: c++ vector sfml

我正在尝试绘制一个我在类中定义的形状。 我将这个类放在一个向量中,并创建一个for循环,然后我通过向量并调用它的draw函数。 但是我只绘制了我添加到矢量中的类的许多形状之一。 在我的游戏循环中,我使用for循环

#include <SFML/Graphics.hpp>

int main(){
RenderWindow window{ { 800, 600}, "game" };

window.setFramerateLimit(60);

 vector<Block> blocks;
for (int iX = 0; iX < 10; iX++)
    for (int iY = 0; iY < 10; iY++)
        blocks.emplace_back(iX * 50, iY * 50);

while(true){
for (auto& Block : blocks) {
        Block.Draw(window);
    }


}

被调用的类看起来像这样。

#include <SFML/Graphics.hpp>
using namespace std;
using namespace sf;   


RectangleShape blockshape;


Block::Block(float mX,float mY)
    {
        blockshape.setPosition(mX, mY);

        blockWidht = 30.f;
        blockHeight = 60.f;
        blockshape.setSize({ blockWidht,blockHeight });
        blockshape.setFillColor(Color::Green);
        blockshape.setOrigin(blockWidht / 2.f, blockHeight / 2.f);

        x = blockshape.getPosition().x;
        y = blockshape.getPosition().y;

    }
     void Block::Draw(RenderWindow& window) {
        window.draw(blockshape);
    }

我检查了我的矢量是多么充实,它确实显示我的块类中有更多

我希望这足以回答我的问题。

0 个答案:

没有答案