Rhino/Grasshopper Layer Data Matching Issue After Cutting Surfaces

I’m working with nine surfaces organized in a data tree with three branches, which corresponds to how they’re grouped in their initial layers. I’ve used a series of lofts to cut these surfaces, resulting in fragments. My main goal is to connect these surface fragments back to their original layers.

I attempted to use the “Objects or attributes” component to manage the data, but I’m running into a frustrating problem: the data structure (the tree) of the output surfaces doesn’t align with the data structure of the layers, even though the branch structure appears identical. Specifically, the layer data for a surface (like the second surface in the first branch) is incorrectly assigned, meaning the component’s output isn’t matching the physical geometry to the correct layer attribute. I suspect the Human plugin might be causing the structure to get mixed up. I’m looking for a way to achieve this layer-to-fragment relationship in Grasshopper, ideally using only native Rh7 components if possible, to avoid this data ordering issue.

Forum_5_v2.3dm (94.7 KB)

Forum5_v3.gh (10.9 KB)

Hie,

I had been doing test and human component is not the problem. I think that is a problem of the logical routine.

Regards.

well, to be fair that was little to no doubt about that :slight_smile:

isn’t this the exact same issue you had a few weeks ago?

just graft the output of the entwine and it will work:

as in the previous thread, if you need to further manipulate the layer structure then you might want to use repeat data / longest list on the Layer tree like this (otherwise GH will automagically Longest List -> Repeat Last for you):

Forum5_v3_inno.gh (16.8 KB)

as for the previous, you can connect the Color output to a Preview to have a fast visual confirmation that colors (thus layers) are correct:

Hello.

Thank you very much, Inno.

Indeed, it’s something similar to the other day’s issue.

Thanks to your help, I managed to equalize the structures of the output trees, but my problem is that their content doesn’t match. In the image I’m showing you, you can see that in the list item of the split surfaces, I have selected element 5, which should be in element 5 of the layers (layer 01, yellow color). However, in Rhinoceros, that object is on layer 02 (the violet color one). That’s why I’m mentioning whether some kind of disorder occurs in the Human component, where the elements change layers relative to the original when split, or, which is most likely, that I’m doing something wrong.

watching the screenshot, my first thought is that you should Graft the Length input of Repeat Data, because Tree Stat gives you a flat list of branch lengths, and you want to apply each Repetition just to the respective Branch:

using Longest List (Repeat Last) would save you a component on the canvas :slight_smile: