I am having a peculiar issue that I wonder if anyone might know the solution for?
Scenario: I am building my own Apertures based on pre-existing Apertures and then applying my own constructions (as part of a larger process/script). Thats all fine and I can use the honeybee.aperture.Aperture() constructor for that without issue. I can then do what I need to do (edit the Aperture geometry) and apply my custom construction to the new Aperture as well - that also works fine.
code snippet looks like:
from honeybee.aperture import Aperture from honeybee.typing import clean_and_id_string def do_something_to_geometry(_geom): # # Do some stuff to the aperture geometry # return _geom new_apertures_ =  for ap in _apertures: # Create the new Aperture values new_ap_name = clean_and_id_string('Aperture') original_ap_geom = ap.geometry op = ap.is_operable # Edit the Aperture Geometry new_ap_geom = do_something_to_geometry(original_ap_geom) # Build a new Aperture using the new, edited geometry new_ap = Aperture(new_ap_name, new_ap_geom, is_operable=op) new_ap.display_name = "My Edited Aperture" new_ap.properties.energy.construction = _construction new_apertures_.append(new_ap)
But then, once all that is complete, if I later try and re-set the constructions to the room using the ‘HB Apply Construction Set’ component: my aperture materials no not get updated for some reason?
If I try the same process (‘HB Apply Construction Set’) on the original apertures, that works fine. And if I use the direct ‘HB Apply Window Construction’ that also seems to work fine (fine=the aperture construction updates based on the Construction-set)
I wonder if someone might see where I’m going wrong here? I tried to mimic the HB Aperture component method for assigning constructions:
but for some reason I am getting these funny results here when I try and use the Construction Set? If anyone has a suggestion or an idea of where I’m going wrong, I’d very much appreciate it! ( example file attached)