Repeating timer_callbacks in for_loops
This is a beginners Q, as I have clearly missed something about how timers can be embedded in loops:
I have a function with a timer-callback so I can do frame-by-frame manipulations to a ball in flight. I can run repetitions of this ball-flight using a second timer as below: def ballfunc(a,b,c,d,e): . StartT = viz.tick() . def balltimer(timernum): . ball.setScale....etc... . . viz.callback(viz.TIMER_EVENT,balltimer) . viz.starttimer(1,0.02,48) vizact.ontimer2(2,10,ballfunc,0,0,-1,1,0.5) But what I actually want is to nest ballfunc in a for_loop so I can pass it different parameters for each repetition. But my clumsy attempts to do this don't work (see below). How do I run, say 10 reps of ballfunc with different parameters passed to it each time ?: def BallFlight(): . for i in range(0,9): .. ball.setPosition(ball.initial) .. yield viztask.runAction(ball,ballfunc(0,0,-1,1,SCALESEQ[i])) .. yield viztask.waitTime(2) viztask.schedule( BallFlight() ) |
Just call the function in each iteration of the loop in your BallFlight task:
Code:
def BallFlight(): |
Thanks
Thanks Frashizzo,
I thought I'd tried all the combinations of my version - but see my error now - excellent support ! |
All times are GMT -7. The time now is 05:17 AM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC