Hi guys,
I have this: [('0', '0'), ('5', '8'), ('10', '-14'), ('15', '5')]
It's the output of a RegEx script.Now, I figure I probably can't use this for keyframes as the numbers are actually strings. Any idea how I can easily convert them to numbers? Thanks, Ron Ganbar email: [email protected] tel: +44 (0)7968 007 309 [UK] +972 (0)54 255 9765 [Israel] url: http://ronganbar.wordpress.com/ On 19 April 2012 13:43, Ron Ganbar <[email protected]> wrote: > If I need it to be as simple as this, I'll stay with Ivan's solution. > If I'll need to condition it somehow, I'll switch to a regular loop. > > Thanks guy! > > > Ron Ganbar > email: [email protected] > tel: +44 (0)7968 007 309 [UK] > +972 (0)54 255 9765 [Israel] > url: http://ronganbar.wordpress.com/ > > > > On 19 April 2012 12:49, Howard Jones <[email protected]> wrote: > >> I still steer clear from list comprehensions for the reasons Ivan >> mentions, though something like that example is pretty clear. >> However the speed increase is likely to be negligible for something like >> that isn't it Ivan? or not? >> >> Howard >> >> ------------------------------ >> *From:* Ivan Busquets <[email protected]> >> *To:* Nuke Python discussion <[email protected]> >> *Sent:* Thursday, 19 April 2012, 6:54 >> *Subject:* Re: [Nuke-python] Writing a Curve >> >> Yes, it's a list comprehension, which is just a quick way to create a >> list from a series of statements, in this case a for loop. >> >> But I see you already got that. The only reason I mentioned readability >> is that, when you start adding nested loops and conditions to the mix, then >> list comprehensions get increasingly hard to read. On the other hand, they >> are generally a little faster than the equivalent for loop(s). >> >> So, your choice :) I just meant that not for being shorter it was >> necessarily a better approach. >> >> Cheers, >> Ivan >> >> On Wed, Apr 18, 2012 at 10:27 PM, Ron Ganbar <[email protected]> wrote: >> >> Isn't what you have there simply a for loop, just written differently? >> It's very readable anyway. >> Thanks again, >> R >> On Apr 19, 2012 8:24 AM, "Ivan Busquets" <[email protected]> wrote: >> >> Yes, because addKey() takes either an AnimationKey or a list of them, I >> just built a list of them using a list comprehension structure, which is >> essentially a loop. >> >> But if a for loop makes more sense, then by all means you should use >> that. Shorter is not always better, and the more readable you make it for >> yourself, the easier it will be to go back and make changes to it :) >> >> >> >> On Wed, Apr 18, 2012 at 10:07 PM, Ron Ganbar <[email protected]> wrote: >> >> Thanks Ivan, >> I figured it probably just needs a loop, but yours is far shorter than >> mine. >> >> I'll have a look at those tutorials. >> >> >> Ron Ganbar >> email: [email protected] >> tel: +44 (0)7968 007 309 [UK] >> +972 (0)54 255 9765 [Israel] >> url: http://ronganbar.wordpress.com/ >> >> >> >> On 19 April 2012 03:44, Ivan Busquets <[email protected]> wrote: >> >> Hey Ron, >> >> I assume you just want the shortest possible version of setting the whole >> curve from values you already have, right? >> So, say you have an animated knob that you've created like this: >> >> node = nuke.createNode( 'Blur' ) >> k = node['size'] >> k.setAnimated() >> >> And then you have list of keys and values that you want to feed at once >> as an animation curve. >> One thing you can do is put them all in a list of (frame,value) tuples, >> like this: >> >> keys = [(0,20), (1,30), (5,70), (8,90)] >> >> And then get the AnimationCurve object for that knob, and add them all >> like this: >> >> anim = k.animation(0) >> anim.addKey([nuke.AnimationKey(frame, value) for (frame,value) in keys]) >> >> Of course, that is just an example for doing it in just a couple of >> lines. Depending on how your initial data is formatted, you might want to >> take a different approach. >> If you want to dig any deeper into it, you can find more info and some >> examples in the Python Developers Guide, under "Animation". >> >> Also check these two great tutorials from Nathan: >> >> http://www.nukepedia.com/python/knob-animation-and-python-a-primer/ >> http://www.nukepedia.com/python/animationcurve-and-animationkey-objects/ >> >> Hope that helps. >> >> Cheers, >> Ivan >> >> >> On Wed, Apr 18, 2012 at 3:16 AM, Ron Ganbar <[email protected]> wrote: >> >> Hi guys, >> quick question, back in Shake it was easy to type an animation curve, it >> was simply hermite(0, 0@1, 15@10, 44@100). >> Is there a way to easily create an animation curve like that in Nuke? >> I know about setValueAt(), but that's for each keyframe rather than a >> whole curve. >> >> Thanks! >> Ron Ganbar >> email: [email protected] >> tel: +44 (0)7968 007 309 [UK] >> +972 (0)54 255 9765 [Israel] >> url: http://ronganbar.wordpress.com/ >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >> >> _______________________________________________ >> Nuke-python mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python >> >> >
_______________________________________________ Nuke-python mailing list [email protected], http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
