【问题标题】:SFML drawing a shape to multiple places on the screenSFML 将形状绘制到屏幕上的多个位置
【发布时间】:2017-05-17 18:09:24
【问题描述】:

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

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

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

【问题讨论】:

  • 欢迎来到 Stack Overflow。请花时间阅读The Tour 并参考Help Center 中的材料,您可以在这里问什么以及如何问。
  • 你是在设置第一个矩形的位置吗?您不需要两个矩形对象来实现两个视觉矩形。尝试设置一个矩形的位置,绘制它,将位置设置为新位置,然后再次绘制。
  • 非常感谢,我搞定了:D 我认为您不必设置第一个矩形的位置。

标签: c++ drawing sfml


【解决方案1】:

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

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

【讨论】:

  • 感谢您的帮助!
【解决方案2】:

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

【讨论】:

    猜你喜欢
    • 2020-11-23
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多