• 4196阅读
  • 3回复

一个绘图的问题 [复制链接]

上一主题 下一主题
离线zhoujievet
 
只看楼主 倒序阅读 楼主  发表于: 2010-03-25
我要在QGraphicsScene 中绘制地图作为背景。地图的数据读出后先逐点绘成pixmap,作为QGraphicspixmapItem添加到场景中。

问题是,当地图左右移动时整个QgraphicspixmapItme必须重绘,这样太耗资源了。

不知qpixmap可不可以保存之前的绘图,只绘制移动后空白的那部分。
离线yangfanxing
只看该作者 1楼 发表于: 2010-03-25
可移动的大背景图???
用QImage构造这个大背景,然后移动时用窗口大小的RECT来copy这个QImage,获得当前的小QImage2,把QImage2绘出。
QPictrue::fromQImage...
PHPWind好恶心。。。不想看这种界面。。。
离线zhoujievet
只看该作者 2楼 发表于: 2010-03-26
整个背景是不能一次全绘出来的,太大了。

不知一个qimage可不可以分块用两个或更多qimage填充。背景未改变部分用原qimage,新出来的部分用一个新的qimage
离线yangfanxing
只看该作者 3楼 发表于: 2010-03-26
引用第2楼zhoujievet于2010-03-26 00:33发表的  :
整个背景是不能一次全绘出来的,太大了。
不知一个qimage可不可以分块用两个或更多qimage填充。背景未改变部分用原qimage,新出来的部分用一个新的qimage


反而觉得这样更复杂,移动一次要那么多块删除和补上。
我说的“构造”只是“构造”,表示大的背景一只存在。只是显示的时候抠出需要的相应坐标的那一块,显示出来。这样会很慢吗?
你好像只关心效率,没说空间。况且这样的话不会很慢,不过一个内存的copy好像。嗯。
PHPWind好恶心。。。不想看这种界面。。。
快速回复
限100 字节
 
上一个 下一个