diff --git a/src/Mod/Arch/ArchWall.py b/src/Mod/Arch/ArchWall.py index b3ddeaab3c..b188288cfc 100644 --- a/src/Mod/Arch/ArchWall.py +++ b/src/Mod/Arch/ArchWall.py @@ -810,8 +810,8 @@ class _Wall(ArchComponent.Component): layers = [] if hasattr(obj,"Material"): if obj.Material: - thicknesses = [abs(t) for t in obj.Material.Thicknesses] if hasattr(obj.Material,"Materials"): + thicknesses = [abs(t) for t in obj.Material.Thicknesses] # multimaterials varwidth = 0 restwidth = width - sum(thicknesses) @@ -919,12 +919,13 @@ class _Wall(ArchComponent.Component): dvec = dvec.negative() w2 = DraftGeomUtils.offsetWire(wire,dvec) sh = DraftGeomUtils.bind(w1,w2) - if sh and layers and (layers[i] >= 0): + if sh: sh.fix(0.1,0,1) # fixes self-intersecting wires f = Part.Face(sh) if baseface: if layers: - baseface.append(f) + if layers[i] >= 0: + baseface.append(f) else: baseface = baseface.fuse(f) # baseface = baseface.removeSplitter() @@ -933,7 +934,8 @@ class _Wall(ArchComponent.Component): baseface = s else: if layers: - baseface = [f] + if layers[i] >= 0: + baseface = [f] else: baseface = f if baseface: diff --git a/src/Mod/Draft/DraftEdit.py b/src/Mod/Draft/DraftEdit.py index d6dcea7a30..be465315c1 100644 --- a/src/Mod/Draft/DraftEdit.py +++ b/src/Mod/Draft/DraftEdit.py @@ -89,7 +89,6 @@ class Edit(): self.parseSelection() if not self.obj: - for obj in FreeCADGui.Selection.getSelection(): self.finish() return