正在做一个电子地图,怎么解决很卡这个问题?

深海鱼男 2015-11-18 10:54:57
我的电子地图很简单,就是将QGraphicsItem一个个加进QGraphicsScene,然后将QGraphicsScene设置进QGraphicsView。可是我的数据量很大,是一次性将所有数据都加载进来,所以编译很慢,显示时拖动,放大缩小都很卡,还时不时崩溃。
我看了40000 chip那个demo,好像没什么特别之处?它有一招是按缩放的级别显示什么级别的细节,可是我的地图使用是一般都是要放得很大的。。。
我也看过其他人的帖子,据说可以将整张地图分层几个区域,显示时不必显示所有区域,只显示当前坐标的区域,可是该怎么操作?分区是不是得遍历所有Item,这难道不是更慢了?
作为一个两个月前刚接触Qt的人,做这个软件遇到了太多太多问题,到了现在终于做出一个勉强能看的东西了,可是在虚拟机上都卡,肯定不能移植到板子上的,希望大神们能助我一臂之力!
...全文
271 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
深海鱼男 2015-11-19
  • 打赏
  • 举报
回复
还有大神吗,应该很多人用Qt做过电子地图啊
冷静忍耐 2015-11-18
  • 打赏
  • 举报
回复
viewport()->update(updateRect); updateRect是view里的你需要更新的矩形区域,位置是相对于Scene的 viewport()是view的一层widget 具体怎么弄,你得自己研究,并不容易。
深海鱼男 2015-11-18
  • 打赏
  • 举报
回复
引用 1 楼 u013466477 的回复:
viewport()->update(updateRect); updateRect是view里的你需要更新的矩形区域,位置是相对于Scene的 viewport()是view的一层widget 具体怎么弄,你得自己研究,并不容易。
每次基本都是你回我啊我研究一下吧

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧