Solving Adjacency in Honeybee

Hey I having some problem with add Door to Face in Honeybee, I can only add a Door to Face when the boundary condition of the Face is Outdoors but the problem is what if the Face is Surface, I can’t add the Door into it. If I change the boundary condition of the Face is Outdoors and add the door, the result is successfull But I will get an error when I use solve_adjacency module of honeybee. The error is:
Traceback (most recent call last):
File “C:\Users\ASUS\Desktop\my_python\project_load_calculation\venv\Lib\site-packages\honeybee\room.py”, line 2325, in solve_adjacency
face_info = face_1.set_adjacency(face_2)
File “C:\Users\ASUS\Desktop\my_python\project_load_calculation\venv\Lib\site-packages\honeybee\face.py”, line 723, in set_adjacency
assert len(self._doors) == len(other_face._doors),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Number of doors does not match between Room_1_Wall_2 and Room_38_Wall_3_0_2.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “c:\Users\ASUS\Desktop\my_python\project_load_calculation\ZEB_ALG005.py”, line 272, in
hb_model.solve_adjacency(merge_coplanar=True, intersect=True, tolerance=0.01, angle_tolerance=0.08)
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\ASUS\Desktop\my_python\project_load_calculation\venv\Lib\site-packages\honeybee\model.py”, line 1903, in solve_adjacency
adj_info = Room.solve_adjacency(self.rooms, tol, remove_mismatched_sub_faces)
File “C:\Users\ASUS\Desktop\my_python\project_load_calculation\venv\Lib\site-packages\honeybee\room.py”, line 2327, in solve_adjacency
face_1[0].remove_sub_faces()
~~~~~~^^^
TypeError: ‘Face’ object is not subscriptable
Does Anyone can explain this for me

Hi @He1sH1gh if you use solve adjacency before adding the door it should be good to go, if I am reading your post correctly.
This here works with no error:


also just incase: make sure the door doesn’t touch any face edges
Hopefully that helps
Best
-trevor

1 Like

thank you, I realized that I just need to turn off the merge_coplanar function and it would solve adjacency. Actually, I’m using Python Honeybee Lib to make a physical model of building. Can you get me some advice for this like community or sources to approach.

Hi @He1sH1gh, I don’t know of any resources for using LBT in pure python outside of rhino/grasshopper, but its something I’ve done so if you have any questions I might be able to help.
best
-trevor