[Interest] ** Caution Message may be spoofed ** Re: Zooming with QGraphicsView/QGraphicsItem

Murphy, Sean smurphy at walbro.com
Fri Aug 9 21:56:14 CEST 2019

> So using QGIS to convert my .shp files to .svg, and then loading the result in a
> QGraphicsSVGItem works like a charm - thanks! The only drawback I’m seeing
> is zooming performance. It *looks* good, but is a tad sluggish. When using 
> QGIS, I noticed that it was compiled against Qt as well, but when they zoom,
> the actual image redraw is delayed until the zoom is complete. That is, when
> zooming in, things get pixelated until you pause, whereupon they are re-drawn
> correctly. When zooming out, areas that were outside the window remain empty
> until you pause, at which point they are drawn. The end result is that things look
> worse when zooming, but zoom performance is lag-free. Is this behavior easily
> obtainable, such as through a setting on the QGraphicsSVGItem or perhaps the
> QGraphicsView, or is QGIS doing something completely different, such that I
> would have to do a lot of re-implementation to accomplish said effect?

It sounds like their strategy is something like this: when the initial image is loaded 
(or when the user stops zooming), they show that image and they also make a raster 
version of it. Then as the user requests a zoom, they instantly rescale/resize/crop 
the raster image to present the pixelated (on zoom in) or the empty areas (on 
zoom out) versions. At the same time they start a timer, if the user continues to 
zoom before that timer expires they just keep working with the raster image and 
keep resetting the timer. Only once the timer expires (which is when the user 
stops zooming) do they actual do the real zoom and redraw the scene at the new 
desired resolution. This should give you faster speed, while not having you go 
through all the work of the intermediate zoom levels - you'll only have to generate 
the final zoomed scene for each zoom sequence.


This message has been scanned for malware by Forcepoint. www.forcepoint.com

More information about the Interest mailing list