New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pre-rendered map display does not respect rotation #20119
Comments
Author Name: Mathieu Pellerin - nIRV (Mathieu Pellerin - nIRV) IMO, this shouldn't be a feature request. It's an implementation issue. But that's all semantic :) it however would have to be dealt with before allowing for a status bar rotation box as for the average user, the visual jump is not a great experience. |
Author Name: Nathan Woodrow (@NathanW2)
|
Author Name: Mathieu Pellerin - nIRV (Mathieu Pellerin - nIRV) Sandro, still not fixed for me, see video capture attached. I've tried on three different projects, with OTF reprojection on and off, same result, the jumps are still there.
|
Author Name: Mathieu Pellerin - nIRV (Mathieu Pellerin - nIRV) Here's an ever better video, showing jumps with a simple project of two layers (the forest cover is quite a large dataset, ideal to witness the jump). I noticed the actual incremental drawing of the forest cover polygons are drawn at the wrong location, until all of the layer is drawn.
|
Author Name: Sandro Santilli (@strk) The way I try to witness the jump is unchecking the "Renderer" checkbox and panning/zooming/rotating and finally re-check "Renderer" to verify the rendered map is at the same location as the pre-rendered one. It works for me with a raster layer and two vector layers (postgis and memory). |
Author Name: Sandro Santilli (@strk) After obtaining the shapefile of the land cover I could still not reproduce. |
Author Name: Sandro Santilli (@strk) I see it takes "Render layers in parallel using many CPU cores" to trigger the jumping. Do you confirm ? |
Author Name: Sandro Santilli (@strk) The problem is likely with the QgsMapCanvasMap (item) being updated on "rendererJobFinished" event which is "late". |
Author Name: Sandro Santilli (@strk) Oh another thing: the "jump" can be made more visible with simple layers by reducing the "Map update interval" to 0ms (Options,Rendering) If the interval is larger than the time it takes to complete the rendering, no jump can be notable. |
Author Name: Mathieu Pellerin - nIRV (Mathieu Pellerin - nIRV) Sandro, excellent, progressive / partial rendering working just fine now. Huge step forward. |
Author Name: Sandro Santilli (@strk) I'm seeing the jump on partial/progressive rendering again, can anyone confirm ? Both in 2.8 branch and master |
Author Name: Sandro Santilli (@strk) Oops, sorry I just realized this is really not a regression. Jumping only happens on changing rotation, not scale or position.
|
Author Name: Sandro Santilli (@strk)
Original Redmine Issue: 11909
Affected QGIS version: master
Redmine category:map_canvas
Assignee: Sandro Santilli
The map shown on zoom/pan events as a placeholder while renderer completes his work in a thread does not take rotation in consideration.
This means that a rotated map is placed in the wrong place until renderer completes, giving a "jumpy" effect to the experience.
See further discussion in issues #20035
One known problem is a limitation of the QgsMapCanvasItem interface which allows to set the position and size of an item by specifying its spatial extent (in map coordinate space) which tipically users obtain by asking for the "visible extent" of the MapCanvas. In presence of rotation, the upper-left corner of the visible extent is usually outside of the viewport.
The text was updated successfully, but these errors were encountered: