diff --git a/src/blenderbim/blenderbim/bim/module/model/roof.py b/src/blenderbim/blenderbim/bim/module/model/roof.py index 77f1c635b4..3d029fd93b 100644 --- a/src/blenderbim/blenderbim/bim/module/model/roof.py +++ b/src/blenderbim/blenderbim/bim/module/model/roof.py @@ -47,6 +47,10 @@ def float_is_zero(f): def bm_mesh_clean_up(bm): + # leave only object's footprint + min_z = min([v.co.z for v in bm.verts]) + bmesh.ops.delete(bm, geom=[v for v in bm.verts if not float_is_zero(v.co.z - min_z)], context="VERTS") + # remove internal edges and faces # adding missing faces so we could rely on `e.is_boundary` later bmesh.ops.contextual_create(bm, geom=bm.edges[:])