@Marc, you can also try this script, super short, for a quick review, sequential, without clicking, you just sit and eat pop corn :D .
Procedure:
select the vectorial layer of interest
open the console, then open the editor
you remove the visibility of any web layer, base maps, either quick map services or xyz tiles (these layers will delay the updating of the canvas, but if you are patient and have a good connection you can leave them)
you paste the code, you can change the time, the delay variable, but I recommend to leave it like this
place the console window where it does not obstruct the canvas and click run
import time
tdelay=0.5 #delay of update
capa= iface.activeLayer()
le=list(capa.getFeatures())
canvas=iface.mapCanvas()
for i in le:
canvas.zoomToFeatureIds(capa,[i.id()])
canvas.flashFeatureIds(capa,[i.id()])
canvas.waitWhileRendering()
time.sleep(tdelay)
It's a bit forced because I stop the execution with time.sleep()
, but in my Windows10 computer and QGIS3.4 I work fine.
With higher versions of QGIS you can access the time driver and do something much better, without risk of crash.
Another option is threaded, but requires much more code