Hi everyone!
Here i attach a portion of a PYscript button that im writing, and i was
wondering how can i improve it? how would you make it more efficient?
Thanks! :)
import random
import math
def glow():
b = nuke.nodes.Transform(name="transform_scale_" + str(i))
b['scale'].setExpression("((global_scale) - 1) + (scale_" + str(i) + ")")
b['center'].setValue(1024)
b.setInput( 0, nuke.toNode('Read1') )
b = nuke.nodes.Transform()
b['translate'].setExpression("((parent.Flare1.position -
parent.Flare3.position)*(distance_" + str(i) + ")) +
(parent.Flare3.position)-1024")
b['rotate'].setExpression("rotation_offset")
b['center'].setValue(1024)
b['motionblur'].setExpression("Transform2.motionblur")
b['shutter'].setExpression("Transform2.shutter")
b.setName("transform_node_" + str(i))
b.setInput( 0, nuke.toNode('transform_scale_' + str(i)) )
b = nuke.nodes.Grade(name="Grade_element_" + str(i))
b['white'].setExpression("brightness_" + str(i))
b.setInput( 0, nuke.toNode('transform_node_' + str(i)) )
c = nuke.nodes.Crop()
c.setInput( 0, nuke.toNode('Grade_element_' + str(i)) )
nuke.toNode('Merge2').setInput( i, c )
c.setName("crop_node_" + str(i))
stab = nuke.thisNode()
glowicon = nuke.Text_Knob ("icon_" + str(i),"<img><big><big><big> - GLOW -")
stab.addKnob(glowicon)
brightness = nuke.Double_Knob ("brightness_" + str(i),"brightness")
stab.addKnob(brightness)
stab.knob("brightness_" + str(i)).setValue(1)
scale = nuke.Double_Knob ("scale_" + str(i),"Scale")
stab.addKnob(scale)
stab.knob("scale_" + str(i)).setValue(0.5)
delete = nuke.PyScript_Knob ("delete_" + str(i),"delete","""
i = """ + str(i) + """
stab = nuke.thisNode()
stab.removeKnob(stab["icon_" + str(i)])
stab.removeKnob(stab["brightness_" + str(i)])
stab.removeKnob(stab["scale_" + str(i)])
stab.removeKnob(stab["delete_" + str(i)])
stab.removeKnob(stab["distance_" + str(i)])
deleteNode = nuke.toNode("transform_node_" + str(i))
deleteNode.setInput(0, None)
nuke.delete(deleteNode)
deleteNodecrop = nuke.toNode("crop_node_" + str(i))
nuke.delete(deleteNodecrop)
deleteNodenoop = nuke.toNode("noop_node_" + str(i))
nuke.delete(deleteNodenoop)
deleteNodesize = nuke.toNode("transform_scale_" + str(i))
nuke.delete(deleteNodesize)
deleteNodegrade = nuke.toNode("Grade_element_" + str(i))
nuke.delete(deleteNodegrade)
""")
stab.addKnob(delete)
distance = nuke.Double_Knob ("distance_" + str(i),"Distance")
distance.setRange( -2, 2 )
distance.setValue(1)
stab.addKnob(distance)
i = int(math.floor(random.random()*999))
glow()
_______________________________________________
Nuke-python mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python