Issue with misaligned HB Shades after using Cull Index and List Item combinations

Hi everyone,

I’m working on a Grasshopper model using Honeybee to generate HB Shades for surrounding buildings, and I’ve run into a problem I haven’t been able to solve.

:jigsaw: Context

I’m separating the energy simulation target building and its surrounding buildings. To do this, I used a Cull Index component to exclude the main building from the full set of base surfaces. Then I grouped the remaining surfaces into categories (Group A, B, C) using multiple List Item components, each connected to index sliders.

Each group is assigned a different height and extruded accordingly to generate HB Shades.


:exclamation:Issue

When I adjust the Building Location slider (which determines the position of the main building), the index structure of the culled list changes, and as a result, the List Item components retrieve the wrong surfaces.

This causes mismatched HB Shade geometries (as shown in the screenshot). I already tried Flatten, Partition List, and Explode Tree, but the issue still occurs.


:wrench: What I’ve Tried

  • Using Partition List after Cull Index to group surfaces
  • Applying Flatten to the output and/or input at different stages
  • Controlling indexes with Expression and Stream Filter components
  • Keeping data tree structure consistent using Merge, Bang!, Param Viewer

:question:What I’m Looking For

Is there a more reliable way to group the culled surfaces by fixed logic so the structure doesn’t break when the building location changes? Or should I be restructuring the logic flow entirely (e.g., avoid List Item)? Any advice would be appreciated!

Thanks a lot in advance for your help :pray:
20250414.gh (159.1 KB)
250415.3dm (1012.6 KB)

Hi @Juhyung,

I would group them first by entwine and flattern them, since you have three groups of builidings. See if this is what you need.

Here s the HBModel preview:


20250414_updates.gh (170.3 KB)

Regards,
Beiyu

2 Likes

Thanks a lot for your assistance :grinning: