I was dealing with this issue when working on "Nodes Efficiency Tools": 
http://projects.blender.org/tracker/index.php?func=detail&aid=33543&group_id=153&atid=467
In the current version I don't set parents, but I certainly will want to be 
able to do it.

The workaround I came up with is as follows:

Say you have a node 'frame'. It has children. Say we have a list of them and 
it's a list called 'children'.
Now we want some node outside this frame to be "parented" to it. (Let's call it 
'my_node')
What I'd do would be:
Remove 'frame', but first I'd store it's name, label and maybe some other 
parameters, then select all of it's children (for node in children: node.select 
= True), plus 'my_none' (my_node.select = True) and use bpy.ops.node.join() 
operator.
This will create new FRAME node and all of the selected nodes will become its 
children. Then you may set some previously stored parameters of removed 'frame'.
When using operators for nodes you have to mind the context, so it will not 
work from the console level or simple scripts run from text editor.

This is however a workaround and I'd really appreciate if it was possible to 
simply say node.parent = frame

Bartek Skorupa

www.bartekskorupa.com

On 6 sty 2013, at 19:25, Fabio Russo <[email protected]> wrote:

> Excellent! : D
> But this only allows me to read the relationship, if I instead want to set
> up the relationship? How do I? Parent is read only
> 
> 
> 2013/1/6 Lukas Tönne <[email protected]>
> 
>> Nodes have a "parent" pointer that defines the hierarchy. When you
>> have a frame node called "frame", the list of attached nodes consists
>> of all nodes whose parent is "frame":
>> 
>> node_tree = frame.id_data
>> children = [node for node in node_tree.nodes if node.parent == frame]
>> 
>> On Sun, Jan 6, 2013 at 1:17 PM, Fabio Russo <[email protected]> wrote:
>>> I'm back with some more questions regarding the nodes!
>>> I'm trying to improve the addon Compositing Presets, so do not call me
>>> annoying :P
>>> My new question is how do I know which nodes are located above the frame
>>> node via API?
>>> 
>>> Thank you very much,
>>> ruesp83
>>> _______________________________________________
>>> Bf-committers mailing list
>>> [email protected]
>>> http://lists.blender.org/mailman/listinfo/bf-committers
>> _______________________________________________
>> Bf-committers mailing list
>> [email protected]
>> http://lists.blender.org/mailman/listinfo/bf-committers
>> 
> _______________________________________________
> Bf-committers mailing list
> [email protected]
> http://lists.blender.org/mailman/listinfo/bf-committers

_______________________________________________
Bf-committers mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to