Kangaroo2 components don’t work with data trees with empty branches?


Is there a specific reason, why some Kangaroo2 components don’t work with data trees that have empty branches, but where the rest is valid data for the task at hand?
I’ve noticed this a couple of times now, recently with the Unroller and Refine components.

In some cases, it can be a hindrance to have to clean the empty tree branches. Could these components not ignore them, or populate them with nulls, if absolutely necessary?

I’m not insinuating that this is a bug, but I’d like to know the reason for this.

Hi @diff-arch

This is an oversight in the way the component internally reconstructs the data tree.
I hadn’t considered the case where empty branches are useful.
Until I change this, you could work around it by using the old way with Entwine/Unflatten, which does preserve also the empty branches:

I’ll try and change the behaviour of the component itself to do this internally.

1 Like

Thanks for the detailed reply.

What would be the new way then?

“What would be the new way then?”
The way I do this now (if I’m not concerned about empty branches) still usually uses Entwine to see what goes into what branch, then ExplodeTree on the output. This avoids one UnFlatten component.

For future versions grouping of inputs/outputs could potentially be done with a ZUI on the solver with the little + that lets you insert parameters and creates corresponding new output parameters.


Thanks Daniel. I’m also using Entwine / Explode. The only situation this doesn’t work is with the Zombie Solver but I never use it so it’s not really a problem.