Yeah, in the end I decided to go a different route. Can't see any other
way around it apart from splitting the views as you say, but I'm
avoiding having to use the curvetool and stick with nuke.sample().
Seems like something that would be useful to do, surprised it hasn't
cropped up before.
Steve
On 04/11/13 03:05, Ben Dickson wrote:
Doesn't seem to be any easy way,
* nuke.sample doesn't take a view index (like most of the knobs), nor
OutputContext (like the knob's evaluate method)
* nuke.sample(..., "green.left", ...) doesn't work as I half-hoped
* Creating a temporary CurveTool doesn't work properly on a stereo image
(only creates one value, from the current view)
..but if you OneView before the CurveTool, it'll work:
def getpixel(node, x, y, viewname):
assert viewname in nuke.views()
# Get specified view
ov = nuke.nodes.OneView(inputs = [node])
ov['view'].setValue(viewname)
# Make CurveTool..
ct = nuke.nodes.CurveTool(inputs = [ov])
ct['operation'].setValue('Avg Intensities')
# ..for a one-pixel region
ct['ROI'].setValue(x, 0) # x
ct['ROI'].setValue(y, 1) # y
ct['ROI'].setValue(x+1, 2) # r
ct['ROI'].setValue(y+1, 3) # t
# Execute the CurveTool
nuke.execute(ct, nuke.frame(), nuke.frame())
# Get the RGB value
val = ct['intensitydata'].value()
# Clean up
nuke.delete(ct)
nuke.delete(ov)
return val
print getpixel(nuke.selectedNode(), 512, 512, 'left')
On 02/11/13 02:38, Steve Newbold wrote:
Hi,
What's the most straight forward way of sampling (node.sample()) a
specific view. I can sample the view currently selected in the viewer
but can't see an obvious way to choose which view I wish to sample.
Must be something straight forward?
Cheers,
Steve
_______________________________________________
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