Solve Adjacency HBv1.2: Interior Constructions + Boundary Conditions

I am having issues with HBv1.2 incorrectly interpretting surface boundary conditions and interior constructions. In my model, I have four total rooms to make up a house. I built each roof from surfaces since I want to experiment with unique surface constructions for each space. When I pass all four rooms through the Solve Adjacency component, the component does not intrepret the interior walls or the adjacent interior floors/ceilings. In the image below, I am previewing roofs, in which the adjacent surface between the lower and upper spaces is considered a roof and not a ceiling or interior floor. Nothing comes through for the interior walls either. Previewing the boundary confirms that these are not interior ‘surfaces’ but are considered exterior.


I’ve read the numerous posts on this Discourses about this issue with suggestions of adjusting tolerance, flipping surface normals, versioning, restarting Rhino+GH and none of these seem to correct the issue. I tried this on both Rhino 6 and Rhino 7. I am currently using HBv1.2 so I believe that I am up to date with the most recent version. The model was built in feet and I have tried tolerances from 1.0 to 0.001.

Sorry to revive an old topic and beat a dead horse but I cannot figure out why this is happening.
Just to ask one larger question, why did Ladybug tools remove the ability to assign more than four ‘types’ and tolerances on the SolveAdjacency component?

Thanks in advance for your help!

House_Adj+IntConst_HBv1.2.gh (114.8 KB)

Hi @KitElsworth,

The most important part you forgot is to intersect the masses. All surfaces have to be split before making HB objects oout of it.


House_Adj+IntConst_HBv1.2.gh (122.1 KB)

Hi @Erikbeeren. Thank you for your response and updated GH file. In the attached file, you ignored the Face definitions and only used the geometry for organizing the breps and then added aperatures/windows after Solve Adjancency. Is there a workflow that would still allow me to define construction, boundary condition, and type at the face level and use those faces for the solve adjacencies? It seems misleading to have the Face component include all the inputs but then not use then for building up the energy model. Moreover, what if each room needs its own setpoints or loads defintions? It seems the workflow in the attachment does not allow for any zone/room level definition before they are joined.

hi @KitElsworth,

You will have to split up the faces somewhere. Either in Rhino or in Grasshopper. With Honeybee you could use this workflow:

Thanks for your follow-up.
I still find this workflow as somewhat flawed though since there is no way to alter face type beyond the HB Face component. This would matter for a spline-like surface that is all one construction (e.g. roof) but rotates into more of a vertical orientation and HB assumes its a wall. Also, this workflow relies on the user to define room specific values downstream of the merging, which seems counterintuitive to the workflow hierarchy of modeling in Ladybug and Honeybee.

For what its worth, I built a few other rooms in this model and the Solve Adjacencies component worked correctly for those other spaces (created floors and ceilings not roofs and exposed floors). So, perhaps the problem was with the rhino geometry. Anyway, thanks for your input and appreciate your thoughts and ideas!

This faces was not splitted. That is what the intersect mass does. But you can also slpit it with native grasshopper components.