C++ SFML将形状绘制到屏幕上的多个位置

C++ SFML将形状绘制到屏幕上的多个位置,c++,drawing,sfml,C++,Drawing,Sfml,我想做的是在屏幕上的多个位置绘制一个矩形对象,并将它们全部显示出来。我试着这样做: window.draw(rectangle); rectangle.setPosition(100, 200); window.draw(rectangle); window.display(); 但它只显示了第二个矩形。有什么简单的解决方法吗?有两个位置不同的矩形。绘制两个,然后display()这段代码应该可以正常工作。我认为事实是,您将矩形的位置设置为100200,但在再次绘制之前,您从未将其设置回第一个

我想做的是在屏幕上的多个位置绘制一个矩形对象,并将它们全部显示出来。我试着这样做:

window.draw(rectangle);
rectangle.setPosition(100, 200);
window.draw(rectangle);
window.display();

但它只显示了第二个矩形。有什么简单的解决方法吗?

有两个位置不同的矩形。绘制两个,然后
display()

这段代码应该可以正常工作。我认为事实是,您将矩形的位置设置为
100200
,但在再次绘制之前,您从未将其设置回第一个矩形的任何位置。
你应该

window.clear();
rectangle.setPosition(0.f, 0.f);
window.draw(rectangle);
rectanlge.setPosition(100.f, 200.f);
window.draw(rectangle);
window.display();

欢迎来到堆栈溢出。请花点时间阅读并参考您可以在此处询问的内容和方式。您是否设置了第一个矩形的位置?实现两个可视矩形不需要两个矩形对象。尝试设置一个矩形的位置,绘制它,将位置设置为新位置,然后再次绘制。非常感谢,我使它工作正常:D我认为您不必设置第一个矩形的位置。谢谢您的帮助!