Advertisement
ffredrikk

Untitled

Mar 2nd, 2017
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.62 KB | None | 0 0
  1. import nuke
  2. import cPickle
  3.  
  4. # Function which I'd like to store on node (example)
  5. def returner(string):
  6.     return string
  7.  
  8. # Create node
  9. node = nuke.createNode('NoOp')
  10.  
  11. # Store function on node
  12. pickled_returner = cPickle.dumps(returner)
  13. function_knob = nuke.Multiline_Eval_String_Knob('returner')
  14. node.addKnob(function_knob)
  15. node.knob('returner').setText(pickled_returner)
  16.  
  17. # Retrieve the function from the node's knob and execute it
  18. unpickled_returner = node.knob('returner').getText()
  19. retrieved_function = cPickle.loads(unpickled_returner)
  20. return_value = retrieved_function('hello world')  # Result
  21. print(return_value)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement