On Tue, 25 Jan 2022 at 04:39, Cory Albrecht <[email protected]> wrote: > > But the `navigator.setCurrentFrameNumber(f)` doesn't change the canvas' > temporal frame. > > If I do `f=54003` manually in the console and then > `navigator.setCurrentFrameNumber(f)` manually as well, the frame changes. > I've used time.sleep() with values up to 5 seconds to see if setting the > frame was just a background task that returns early before actually > completed, but that didn;t make any difference. >
Try QCoreApplication.processEvents() instead of time.sleep > Why does it not change the frame in the middle of the for loop? it's a bit technical, but you need to let the Qt "event loop" process in order for any GUI widgets to update. time.sleep doesn't do this -- it just blocks the caller for the requested time, and doesn't let Qt do it's thing and update the screen. But a huge warning is needed here: processEvents() is very dangerous to call in certain circumstances. Here it's ok to do, but definitely use with caution!! (You'll know you're using it wrong if you get crashes...) Nyall > > On Tue, Jan 18, 2022 at 2:32 PM Cory Albrecht <[email protected]> wrote: >> >> Thanks, I'll check it out. >> >> On Sun, Jan 16, 2022 at 8:04 PM Nyall Dawson <[email protected]> wrote: >>> >>> On Mon, 17 Jan 2022 at 10:46, Cory Albrecht <[email protected]> wrote: >>> > >>> > Thanks for the pointer, but unfortunately it is incomplete. It tells me >>> > this: >>> > >>> > # get the current responsible for the mapCanvas behaviour and >>> > Temporal Controller gui >>> > navigator = iface.mapCanvas().temporalController() >>> > >>> > And a few other methods for that object, but it's all about mimicking the >>> > "Save Animation" button with no explanation how to choose a specific >>> > frame or even anything as simple as going forward or backward by a single >>> > frame. Is there no list anywhere of all that temporal controller object's >>> > methods? >>> >>> Yes, in the usual place (the PyQGIS API reference): >>> >>> https://qgis.org/pyqgis/master/core/QgsTemporalNavigationObject.html >>> >>> Nyall >>> >>> > >>> > >>> > >>> > On Sun, Jan 16, 2022 at 3:40 PM Delaz J <[email protected]> wrote: >>> >> >>> >> Hi Cory, >>> >> >>> >> I don't know if it's still compatible with API and of any help, but >>> >> there's that stale pull request in the docs by Richard >>> >> (https://github.com/qgis/QGIS-Documentation/pull/5521) you might want to >>> >> look at. >>> >> >>> >> Regards, >>> >> >>> >> Harrissou >>> >> >>> >> Le 16/01/2022 à 18:34, Cory Albrecht a écrit : >>> >> >>> >> Hello, >>> >> >>> >> Is there a way I can access and change/set stuff for the dynamic >>> >> temporal controller programmatically in python? I'm looking to make a >>> >> simple script that I can just cut and paste into the python console that >>> >> will change the current frame of the DTC to a given timestamp, export >>> >> the canvas to a PNG, and repeat for all the timestamps in an array. >>> >> >>> >> _______________________________________________ >>> >> Qgis-user mailing list >>> >> [email protected] >>> >> List info: https://lists.osgeo.org/mailman/listinfo/qgis-user >>> >> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user >>> > >>> > _______________________________________________ >>> > Qgis-user mailing list >>> > [email protected] >>> > List info: https://lists.osgeo.org/mailman/listinfo/qgis-user >>> > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user > > _______________________________________________ > Qgis-user mailing list > [email protected] > List info: https://lists.osgeo.org/mailman/listinfo/qgis-user > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user _______________________________________________ Qgis-user mailing list [email protected] List info: https://lists.osgeo.org/mailman/listinfo/qgis-user Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
