最近,我使用 QT Graphohics View Framework 开发了一个新的可视化软件。在软件中,我们需要显示很多项目,包括点和线,大约一万以上。但是,在显示的过程中,有池效率,往往没有反应。当我们想对其进行缩放或移除场景的位置时,我们必须等待一个跨度,并且难以承受。所以,我想知道这是否正常以及如何提高效率。谢谢 。
问问题
419 次
2 回答
2
我使用 Graphics View Framework 来绘制地理地图(具有数千个点的大型多边形)。它做得很好。
在 Qt-4.6 中,缩放和移动时会出现延迟。启用抗锯齿的处理时间太长,最好杀死应用程序。所以尽量使用最新版本的 Qt。
此外,如果您使用自定义 QGraphicsItem-s,请查看这篇文章:Qt: Improvement QGraphicsView Performance。
于 2012-02-17T06:38:15.360 回答
0
我通过以下方式解决了我最严重的性能问题:
- 禁用滚动条(在放大/缩小和滚动时有很大帮助),
- 用painter->drawPoints(pointCloud.constData(), pointCloud.size()) 绘制点;
- 在移动项目的情况下禁用索引或启用索引但避免某些操作
- 尽可能使用化妆笔,0 宽度或 Qt::NoPen
- setViewport(new QGLWidget(QGLFormat(QGL::SampleBuffers)));
- setViewportUpdateMode(FullViewportUpdate);
于 2017-02-12T01:01:57.400 回答