I am trying to create an apartment style building but am running into an adjacency problem. For some reason the ceiling between the attic and the third floor is correctly applying a boundary condition for some rooms, and is applying an outdoors boundary condition for other rooms. All of the rooms are defined the same and all of the models faces do intersect. Does anyone know of a possible solution to this issue? I am completely at a loss.
yeah, adjacency issues are consistent headache across the board.
-
It could be a âtoleranceâ issue? What is your Rhino doc units tolerance?
-
Did you use the Honeybee âHB Intersect Solidsâ to generate the geometry, or just try and build it by hand?
-
Are you certain the roof zoneâs floor is split in a way that perfectly (within the rhino doc tolerance) matches your lower zone faces?
Hard to tell from just the one image - but in my experience the problem is always an issue with the Rhino geometry. Once that is sorted and all faces match-match, itâll work. Getting it there can be a real pain though.
As @edpmay already mentioned, solving adjacencies is always a bit of a headache.
In addition to the points he mentioned, I sometimes play around with the tolerance in the âHB Intersect Solidsâ or âHB Solve Adjacenciesâ component. By default, itâs set to 0.0001, but changing it to 0 or 0.001 can affect the results.
If anyone knows a robust workflow please let me know.
@Erikbeeren demonstrated a nice â2dâ based workflow a while back:
I liked that a lot and used a version of that on a couple very large buildings with many hundreds of zones - Iâd say its at least worth checking out.
here is an other way to generate BEM models without running into problems.
It uses floorspace as interface. FloorspaceJS
Unfortunately it only works in feet, but the interface is quite nice and usable.
You can save the model as json and imported in Grasshopper using Jswan: https://www.food4rhino.com/en/app/jswan
Or you can open Floorspace from the openstudio application start modelling and asave the file as OSM file.
Below a gh script which converts the floorspace.json into a honeybee model.
with example file.
import floorspace json.gh (54.6 KB)
e4.json (15.1 KB)
Thanks for all the help, it is indeed a tolerance issue in Rhino.
Another option is to model the geometry parametrically in grasshopper. Its pretty straightforward once you get the hang of it and guarantees you avoid issues like this

