2012-05-22 92 views
0

我想模拟机器人在一个未知的二维环境寻找食物。 这样做是为了使它们与遗传算法的发展。机器人有一些捕捉者看到前进和电机移动。 2D环境表面有一些食物来源。机器人仿真:QGraphicsScene没有的QGraphicsView

我打算使用Qt用于使用类QGraphicsSceneQGraphicsView图形仿真。

我的问题是:由于我要运行仿真数百次(遗传算法),我只想显示最后一次迭代并隐藏所有以前的迭代。是否有可能只使用QGraphicsScene的,如果没有QGraphicsView除了最后一次迭代?最重要的是,它有效吗?

回答

0

甲的QGraphicsView只能一次显示一个场景,使用QGraphicsView::setScene()。有许多QGraphicsScenes会很好,但只显示其中的一个;在你的情况下,最后一次迭代。

我会说这是一个有效的方法,除非你有许多场景,每个场景都有很多QGraphicsItems(例如数千个),在这种情况下,内存可能会成为问题。

+0

Thx,但是使用一个QGraphicsScene作为一个画布x * y来进行大量的模拟但没有任何QGraphicsView会有效吗? – AdeB

+0

@AdeB它应该是,如果没有被绘制。 – Anthony