Air boundary adjacency by surface type

Hi All,

I am working on a multi-story building with a simple core and perimeter zoning and I want to set the interior walls as air boundaries but keep the floors as interior floors.

The “HB Solve Adjacency” component currently sets all of my interior surfaces to air boundaries and I was wondering if there is a simple way to just have the walls be air boundaries without me individually setting up each floor’s adjacency.


Try using the Solve Adjacency in tandem: First time for just the zones in each floor and second time using the previous results among all floors.

The issue is, I need to do this for 20 floors so I wanted to avoid setting up a bunch of adjacencies in tandem.

Are all floors equal? If so, you can solve one and then copy it 20 times with the HB_Move component
If they are not equal you can try separating the list of zones into the ones of each floor (GH native Partition component) and graft this list. Then you can solve the adjacencies of each branch (floor). At the end flatten it and do the second pass.
Hopefully this can work.

Oh interesting. I will try this out and let you know.
Thank you @AbrahamYezioro

I actually found a simple way to do exactly what I want. I just added an if statement in the code where the air boundaries are assigned to see if the surface pair is a Wall or not. This way I was able to solve all adjacencies in one component.

# try to assign the air boundary face type
if air_boundary_:
    for face_pair in adj_info['adjacent_faces']:
        if face_pair[0].type.ToString() == 'Wall':
            face_pair[0].type = face_types.air_boundary
            face_pair[1].type = face_types.air_boundary

Thank you for your help.

Good. Just take into account that if you update your file with the SyncGHFile component, you’ll need to fix the code again.

Hi @kentakahas . You can also use one more component which is super cool, “HB Properties by guide surface”. Once you have solved the adjacencies, you can create guide surfaces coplanar to adjacent surfaces that you want from top to bottom. You can immediately convert the coplanar surface with that to air boundary.

1 Like

Thank you for the heads up!

Hi @Asisnath,
I was still using 1.2.0 so I didn’t notice that component existed! This sounds like a better long term solution compared to our current method of putting a bunch of solve adjacency components in tandem.
Thank you!

1 Like