Hey Dan, just out of curiosity, did you try the threaded approach I posted in your other version of this thread? I'm wondering if that approach works in this kind of situation...
-Nathan On Nov 7, 2012, at 3:27 AM, "Dan Rosen" <d...@evileyepictures.com> wrote: > Hi, > > I have a plugin that writes luts, but only by viewing through the node > itself. There is no execute button a la GenerateLUT or Write. I use python to > troll my Nuke flow-graph when setting up multiple lut outputs. > > The problem is when I have many luts only the last one is writing out in a > for loop. I know that each one should be working since I have a print > statement to show that it should be. Also, if I throw up a > nuke.message("writing lut") then it works and all the luts are written. I > just don't want to have to hit the 'OK' button. That pause is allowing enough > time to get the node to successfully write. Having said that a regular python > pause or a Nuke python progress bar doesn't work in the same way. My question > is if the nuke.message is actually allowing the viewer to update. Any > suggestions of other ways to force viewer update or similar? I've tried > having the viewer forward a frame and back, but that isn't doing the same > thing as the nuke.message. Maybe there's a way to automatically close the > nuke.message pop-up? > > Here's a snippet of the code: > > def writeIt(n): > n.setSelected( True ) > nukescripts.connect_selected_to_viewer(0) > n.setSelected( False ) > > def setLutNodes(): > > for n in nuke.allNodes(): > > if n.name() == "SHOT_LUT_CDL_3DL": > n['lookFile'].setValue(file_output_lut_cdl_3dl) > print "writing " + file_output_lut_cdl_3dl > writeIt(n) > elif n.name() == "SHOT_LUT_3DL": > n['lookFile'].setValue(file_output_lut_3dl) > print "writing " + file_output_lut_3dl > writeIt(n) > elif n.name() == "SHOT_LUT_3DL_W_OFFSET": > n['lookFile'].setValue(file_output_lut_3dl_w_offset) > print "writing " + file_output_lut_3dl_w_offset > writeIt(n) > elif n.name() == "SHOT_LUT_CUBE": > n['lookFile'].setValue(file_output_lut_cube) > print "writing " + file_output_lut_cube > writeIt(n) > elif n.name() == "SHOT_LUT_TXT": > n['lookFile'].setValue(file_output_lut_txt) > print "writing " + file_output_lut_txt > writeIt(n) > elif n.name() == "SHOT_LUT_LUT": > n['lookFile'].setValue(file_output_lut_lut) > print "writing " + file_output_lut_lut > writeIt(n) > elif n.name() == "SHOT_LUT_ACV": > n['lookFile'].setValue(file_output_lut_acv) > print "writing " + file_output_lut_acv > writeIt(n) > elif n.name() == "SHOT_LUT_ICC": > n['lookFile'].setValue(file_output_lut_icc) > print "writing " + file_output_lut_icc > writeIt(n) > _______________________________________________ > Nuke-python mailing list > Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
_______________________________________________ Nuke-python mailing list Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
_______________________________________________ Nuke-python mailing list Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python