W_scaleTree v2.2

This location is for Registered Users Only.
Perhaps you need to login or register.
Contributor: Wouter Gilsing
UPDATED v2.2. A panel to quickly resize a selection of nodes in a controllable way by setting a pivot point. Works with backdrops.
11.0, 10.5, 10.0, 9.0, 8.0 or later
Linux, Mac, Windows
07 Mar 2018




A panel to quickly resize a selection of nodes in a controllable way.


  • Offers the option to set a pivot point.
  • Allows the user to preform a uniform scale as well as scaling in separate axes.
  • Takes a node’s screensize into account to ensure a correct alignment.
  • Resizes backdrop nodes correctly to keep them fitting their content.
  • Use a shortcut to open and close a floating panel or use the tool as a docked widget.
  • Hotkeys 1, 2, 3 and 4 are setup to quickly set the pivot to a corner.


New in v2.0:

  • Added the option to evenly distribute the selected nodes.

New in v2.1:

  • Works properly inside groups.
  • Nuke 11 ready.

New in v2.2:

  • Bug fix.




Distribute your nodes evenly


Works with backdrops.


Use a shortcut to open and close a floating panel or use the tool as a docked widget.


Create a folder called 'icons' in your .nuke folder, and place the 'W_scaleTree' folder (the folder containing the icons) in there. If you would rather place the icons elsewhere, make sure to update this in the python code as well (line 25)

 Add the following to your menu.py

import W_scaleTree
nuke.menu('Nuke').addCommand('Edit/Node/W_scaleTree', 'W_scaleTree.scaleTreeFloatingPanel()', 'alt+`')
Please login in order to download these files.


+2 # Frank Rueter 2016-05-13 03:37
haha, you beat me to it. I have a very similar tool sitting here half finished. Nice one!
+1 # Wouter Gilsing 2016-05-13 04:20
Haha, thanks, glad you like it!

If I missed any major features you had in mind and would like to share, let me know!
+1 # sridharan K 2016-05-13 12:00
Thanks for ur handy tool :) :D
Keep rocking :lol:
# Philippe HUBERDEAU 2016-05-14 10:32
Nice one Wouter ! Really smart way of doing it ! :-)
What about a rotation parameter by 90deg ? Can be handy...
Thanks a lot for this one !
# Wouter Gilsing 2016-05-14 16:56
Heey, thanks!

Personally, I don't think I would ever use that feature. However, if there are more people who would like to see the option to rotate your nodes, let me know and I will make sure it finds it way into an updated version of the tool.
# Charles Taylor 2016-05-16 20:51
I didn't even know I wanted this until I saw it - nice job!
# adam jones 2016-05-17 08:29
oh I like this,

it does what it needs to do but is it possible in a future version to add some thing that comes up when selecting nodes, a transform gadget, similar to what comes up when you select points of a roto. as it is is damn awesome.

love it ..
# Frank Rueter 2016-05-17 09:16
Hi Wouter. The version I started working on was interactive, so you'd hit a hotkey to pop into "scale nodes" mode, then click drag in the node graph to do the "scaling". Upon mouse release it terminates it's function.
If you are interested/have time I can send you the unfinished code and you can pick it to bits.
I do like your UI though :)
# Wouter Gilsing 2016-05-17 14:47
Heey Frank,

That would be great, it's always interesting to look at tools someone else wrote! I could try and see if it would be possible to somehow integrate it in the current tool.

Thanks :-)
# Frank Rueter 2016-05-17 23:46
I just mailed it through to you
+2 # adam jones 2016-05-17 08:33
sorry for the extra post

and maybe some sort of fall off, so if you wanted to expand the space in the center of a comp, you could make that space with out where you needed it with out stretching out the hole node tree
+3 # Wouter Gilsing 2016-05-17 14:51
Interesting idea!

Are there more people here who would like to see this feature?
# Mitchell Kehn 2018-01-21 06:58
I definitely think that this would be useful, like if I could scale up my selected nodes without needing to worry about overlapping the surrounding nodes. There's definitely been situations where I've wanted to do this.

If I could put in my own feature request though, it would be for a more intuitive interface. My suggestion would be a rectangle drawn around the selected nodes (that only shows up when I hit a shortcut) that I can then drag on the corners or edges to adjust the scale.
# Anthony Thomas 2016-07-22 02:15
I added this to my menu.py

import W_scaleTree
nuke.menu('Nuke').addCommand('Edit/Node/W_scaleTree', 'W_scaleTree.sc aleTreeFloating Panel()', 'alt+`')

And that shortcut key doesn't work. Nothing happens when I press, Alt + '
# Anthony Thomas 2016-07-22 02:16
Nevermind. I figured it out. I placed it in the wrong spot. DERP.

Quoting Anthony Thomas:
I added this to my menu.py

import W_scaleTree
nuke.menu('Nuke').addCommand('Edit/Node/W_scaleTree', 'W_scaleTree.scaleTreeFloatingPanel()', 'alt+`')

And that shortcut key doesn't work. Nothing happens when I press, Alt + '
# Wouter Gilsing 2016-07-22 02:42

And make sure to press ` rather than '. It's the one that shares a key with the ~ and is located above Tab (or at least it is on my keyboard)
+1 # Remco Consten 2017-01-05 09:59
Great Tool, very useful. Would be nice if it would work inside a group though.

In one situation I thought the tool wasn't responding until I came out of the group graph... oops
+2 # Wouter Gilsing 2017-01-05 10:43
Ah good catch! I'll make sure that will be fixed in the next version. Thanks!
# Wouter Gilsing 2017-05-21 14:14
Hi Remco,

Just uploaded v2.1 which should work propely with nodes inside groups.

# Anthony Dobbs 2017-03-16 20:20
This tool is fantastic! Too much power:-) Is there a way to get it to undo a scale if you accidentally get a funky result, like with the "distribute evenly" function? Thanks again for making this!
# Anthony Dobbs 2017-03-16 20:24
Hey, sorry, it already does this. I could've sworn it didn't there for a minute. Feel free to delete this request and comment :)
# Wouter Gilsing 2017-03-16 20:57
Well, that was about the easiest fix for me ever, haha :D
# Thomas Vu 2017-05-22 03:28
thank for new version update.
you make me feel you are programmer not compositor anymore haha :D
# Wouter Gilsing 2017-05-22 08:15
No worries!

And the two go together very well actually!
Would absolutely, no doubt, still consider myself a 'programming comper' though, rather than a 'comping programmer', haha.

# Mitchell Kehn 2018-03-05 04:38
Hey Wouter, love your stuff!

Just letting you know that in v2.1, the anchor point selection seems a bit unsteady. It doesn't crash, but not all the buttons in the grid show up, and as you select them, they slowly disappear.

The sliders still work and are really great though! I'd be very excited if you ever implemented Frank's bounding box overlay too ;)
# Mitchell Kehn 2018-03-05 04:41
Never mind, I fixed my own problem within a minute of posting that. Whoops!

There was an issue with windows explorer when I copied the icons folder in, and it was missing icons 5-9. Replacing those, your work seems as flawless as ever. Great tool dude!
# Mitchell Kehn 2018-03-05 06:52
That said, I do actually seem to be finding a problem with the tool, in particular with the backdrop handling. It seems to break whenever I try to run it with a backdrop node that has any contents. It doesn't run as smoothly as that GIF in your demo.

Any thoughts?
# Mitchell Kehn 2018-03-05 07:05
Fixed this by changing the variable "node" in the lambda function from line 263-265 to be called "sub_node".

Using "node" overwrote the backdrop that was stored in it beforehand, and threw all sorts of "NoneType" etc. errors.
# Wouter Gilsing 2018-03-05 11:37
Thanks for reporting!:) I'll update tonight.

# Matthias Backmann 2018-03-08 14:22
Hey Wouter, this tool is awesome (once more - the hotbox was a miracle!)

I think it should become a "nodetree-shape"-tool.
One easy thing (I already added it under your buttons) would be to move every node with another slider, so that you can just push them up/down/left/ri ght. It's nice to get more space between certain groups of nodes and then you can scale the area inside this group to add more nodes.

Next step would be to mirror nodes - handy if you need to switch just the side of a mask input.

And I already read that a rotation-option was wished. This could be tricky, but f.E. if I have a mask input that's coming from above the node (vertical working vs. horizontal working ;-)) and then want to copy them to another node which has the mask coming from the side, I have to rearrange every node to make them fit smoothly. So rotating them around a pivot would be nice!
If you have an idea for these additional features, I think this tool would become even more fantastic!

You have no rights to post comments

We have 2641 guests and 69 members online