Beispiel #1
0
def knobChange():
	print nuke.thisKnob().name()

#nuke.addKnobChanged(knobChange)

# ------ Import NK functions from other modules into current namespace ------ #

#from nk_rotoreveal import nk_get_roto_from_color
from nk_threadrender import nk_multithreadedRender
from nk_panelreopen import nk_reopen_panels

if nuke.env['gui']:

	# --- Return list of nodes in the order they were selected --- #

	nukeOriginalSelectedNodes = nuke.selectedNodes
	reverseSelected = lambda: nukeOriginalSelectedNodes()[::-1]
	nuke.selectedNodes = reverseSelected

	# ------------------------------------------------------------ #

	funcs = [func for (k,func) in locals().items() if k.startswith('nk')]

	from nk_load_nk import createMenu
	createMenu('NK',funcs)

	toolbar = nuke.menu('Nodes')
	gizMenu = toolbar.addMenu('Gizmos')
	for giz in [os.path.splitext(n)[0] for n in os.listdir(os.path.join(os.environ["HOME"],".nuke")) if re.search("gizmo",n)]:
		gizMenu.addCommand(giz,"nuke.createNode('%s')"%giz)
Beispiel #2
0
import nuke
from nk_load_nk import createMenu

def nk_align_vert():
	"""
	V Align
	"""
	positions = [t.ypos() for t in nuke.selectedNodes()]
	mid = (min(positions)+max(positions))/2
	[t.setYpos(mid) for t in nuke.selectedNodes()]

def nk_align_distribute_across():
	"""
	H Spread
	"""
	nodes = sorted([n for n in nuke.selectedNodes()], key=lambda n: n.xpos())
	minX = nodes[0].xpos()
	distance = 150
	print [nodes[i].setXpos(minX+distance*i) for i in range(1,len(nodes))]

funcs = [func for (k,func) in locals().items() if k.startswith('nk')]
createMenu('DAG Clean',funcs)