Assigning glazing construction
Posted: Wed Jun 12, 2019 11:05 pm
Having trouble assigning a glazing construction using body.assign_construction(construction, surface).
Assigning a glazed construction to any surface in a simple model results in the following error:
ValueError: Could not assign construction: Invalid construction type for the surface
So the problem seems to be that the surface type is not 'ext_glazing' - all surface types in the model are either floor, ground_floor, ceiling, roof, ext_wall, or int_wall – even walls that are 100% window are not listed as surface type ext_glazing.
I tried assigning it to the opening/window object but that results in an error as it’s not a VESurface (Boost.Python.ArgumentError: Python argument types in VEBody.assign_construction(VEBody, VECdbConstruction, VEGeometry) did not match C++ signature: assign_construction(class VEBody {lvalue}, class VECdbConstruction, class VESurface).)
I've also tested the example ‘assign_to_body.py’ but there's no ext_glazing surface (if surface.type == iesve.VESurface_type.ext_glazing) and removing this if statement results in the above value error as an invalid construction for the same reason.
Any suggestions to get this working? Is there a way to input just the glazing as a surface?

Assigning a glazed construction to any surface in a simple model results in the following error:
ValueError: Could not assign construction: Invalid construction type for the surface
So the problem seems to be that the surface type is not 'ext_glazing' - all surface types in the model are either floor, ground_floor, ceiling, roof, ext_wall, or int_wall – even walls that are 100% window are not listed as surface type ext_glazing.
I tried assigning it to the opening/window object but that results in an error as it’s not a VESurface (Boost.Python.ArgumentError: Python argument types in VEBody.assign_construction(VEBody, VECdbConstruction, VEGeometry) did not match C++ signature: assign_construction(class VEBody {lvalue}, class VECdbConstruction, class VESurface).)
I've also tested the example ‘assign_to_body.py’ but there's no ext_glazing surface (if surface.type == iesve.VESurface_type.ext_glazing) and removing this if statement results in the above value error as an invalid construction for the same reason.
Any suggestions to get this working? Is there a way to input just the glazing as a surface?