diff --git a/src/Mod/Arch/ArchWall.py b/src/Mod/Arch/ArchWall.py index 2c304ff80..5af1c7481 100644 --- a/src/Mod/Arch/ArchWall.py +++ b/src/Mod/Arch/ArchWall.py @@ -49,14 +49,16 @@ def makeWall(baseobj=None,width=None,height=None,align="Center",name=str(transla obj.ViewObject.ShapeColor = ArchCommands.getDefaultColor("Wall") return obj -def joinWalls(walls): - "joins the given list of walls into one sketch-based wall" +def joinWalls(walls,delete=False): + """joins the given list of walls into one sketch-based wall. If delete + is True, merged wall objects are deleted""" if not walls: return None if not isinstance(walls,list): walls = [walls] if not areSameWallTypes(walls): return None + deleteList = [] base = walls.pop() if base.Base: if base.Base.Shape.Faces: @@ -69,9 +71,13 @@ def joinWalls(walls): base.Base = sk for w in walls: if w.Base: - if not base.Base.Shape.Faces: - for e in base.Base.Shape.Edges: - sk.addGeometry(e) + if not w.Base.Shape.Faces: + for e in w.Base.Shape.Edges: + sk.addGeometry(e.Curve) + deleteList.append(w.Name) + if delete: + for n in deleteList: + FreeCAD.ActiveDocument.removeObject(n) FreeCAD.ActiveDocument.recompute() return base @@ -98,9 +104,6 @@ def mergeShapes(w1,w2): def areSameWallTypes(walls): "returns True is all the walls in the given list have same height, width, and alignment" - for w in walls: - if Draft.getType(w) != "Wall": - return False for att in ["Width","Height","Align"]: value = None for w in walls: @@ -272,6 +275,38 @@ class _CommandWall: def setContinue(self,i): self.continueCmd = bool(i) + + +class _CommandMergeWalls: + "the Arch Merge Walls command definition" + def GetResources(self): + return {'Pixmap' : 'Arch_MergeWalls', + 'MenuText': QtCore.QT_TRANSLATE_NOOP("Arch_MergeWalls","Merge Walls"), + 'ToolTip': QtCore.QT_TRANSLATE_NOOP("Arch_MergeWalls","Merges the selected walls, if possible")} + + def IsActive(self): + if FreeCADGui.Selection.getSelection(): + return True + else: + return False + + def Activated(self): + walls = FreeCADGui.Selection.getSelection() + if len(walls) < 2: + FreeCAD.Console.PrintMessage(str(translate("Arch","You must select at least 2 walls"))) + return + for w in walls: + if Draft.getType(w) != "Wall": + FreeCAD.Console.PrintMessage(str(translate("Arch","Please select only wall objects"))) + return + FreeCAD.ActiveDocument.openTransaction(str(translate("Arch","Merge Walls"))) + FreeCADGui.doCommand("import Arch") + FreeCADGui.doCommand("Arch.joinWalls(FreeCADGui.Selection.getSelection(),delete=True)") + FreeCAD.ActiveDocument.commitTransaction() + + + + class _Wall(ArchComponent.Component): "The Wall object" @@ -382,7 +417,7 @@ class _Wall(ArchComponent.Component): if height: norm = normal.multiply(height) base = base.extrude(norm) - elif len(base.Wires) == 1: + elif len(base.Wires) >= 1: temp = None for wire in obj.Base.Shape.Wires: sh = self.getBase(obj,wire,normal,width,height) @@ -454,3 +489,4 @@ class _ViewProviderWall(ArchComponent.ViewProviderComponent): return FreeCADGui.addCommand('Arch_Wall',_CommandWall()) +FreeCADGui.addCommand('Arch_MergeWalls',_CommandMergeWalls()) diff --git a/src/Mod/Arch/Arch_rc.py b/src/Mod/Arch/Arch_rc.py index 38e5309e6..ea96da63c 100644 --- a/src/Mod/Arch/Arch_rc.py +++ b/src/Mod/Arch/Arch_rc.py @@ -2,7 +2,7 @@ # Resource object code # -# Created: Fri Feb 15 13:08:35 2013 +# Created: Sun Mar 24 15:50:46 2013 # by: The Resource Compiler for PyQt (Qt v4.8.2) # # WARNING! All changes made in this file will be lost! @@ -31096,6 +31096,187 @@ qt_resource_data = "\ \x55\x4c\x69\x8a\x07\xe9\x7b\x88\xe6\x87\xfa\x1b\xc0\x5e\xa3\xb6\ \x8e\x99\x2c\x6e\xae\xae\x6d\x7d\x71\x73\xf5\x1f\x81\x50\x39\x69\ \ +\x00\x00\x0b\x26\ +\x00\ +\x00\x5f\x19\x78\x9c\xed\x5c\xdb\x72\xe3\x36\x12\x7d\xf7\x57\x70\ +\x35\x2f\x49\x2d\x09\x01\x8d\x5b\x43\x63\x3b\xb5\xb5\xa9\x54\xa5\ +\x6a\xf3\xb2\x9b\xad\x3c\xa6\x68\x91\x96\x99\x91\x48\x15\x49\xdf\ +\xe6\xeb\xd3\xa0\x6e\xd4\xc5\xb2\x3d\xb2\x3d\x9e\x11\xe5\xb2\x2d\ +\x11\x0d\x10\x04\x0f\x4e\x9f\x06\x9a\x3a\xfd\xe9\x6e\x32\x0e\x6e\ +\xd2\xb2\xca\x8a\xfc\xac\x27\x18\xef\x05\x69\x3e\x2c\x92\x2c\x1f\ +\x9d\xf5\xfe\xff\xfb\x2f\x11\xf6\x82\xaa\x8e\xf3\x24\x1e\x17\x79\ +\x7a\xd6\xcb\x8b\xde\x4f\xe7\x27\xa7\xff\x88\xa2\xe0\xdf\x65\x1a\ +\xd7\x69\x12\xdc\x66\xf5\x55\xf0\x6b\xfe\xa9\x1a\xc6\xd3\x34\xf8\ +\xe1\xaa\xae\xa7\x83\x7e\xff\xf6\xf6\x96\x65\xf3\x83\xac\x28\x47\ +\xfd\x1f\x83\x28\x3a\x3f\x39\x39\xad\x6e\x46\x27\x41\x10\xd0\x79\ +\xf3\x6a\x90\x0c\xcf\x7a\xf3\x0a\xd3\xeb\x72\xdc\x18\x26\xc3\x7e\ +\x3a\x4e\x27\x69\x5e\x57\x7d\xc1\x44\xbf\xb7\x32\x1f\xae\xcc\x87\ +\xfe\xec\xd9\x4d\x3a\x2c\x26\x93\x22\xaf\x9a\x9a\x79\xf5\xa1\x65\ +\x5c\x26\x97\x4b\x6b\xdf\x9b\x5b\xd9\x18\x09\xe7\x5c\x9f\x43\x1f\ +\x20\x22\x8b\xa8\xba\xcf\xeb\xf8\x2e\x5a\xaf\x4a\x7d\xdc\x55\x15\ +\x38\xe7\x7d\x2a\x5b\x59\x3e\xcd\x6a\x50\xd1\x80\x4e\xe9\x77\x69\ +\xbe\x38\xc0\xaa\xe2\xba\x1c\xa6\x97\x54\x2f\x65\x79\x5a\xf7\x7f\ +\xfe\xfd\xe7\x65\x61\xc4\x59\x52\x27\xad\x66\x16\xe3\xb9\x76\xd6\ +\xb5\x41\xce\xe3\x49\x5a\x4d\xe3\x61\x5a\xf5\x17\xc7\x9b\xfa\xb7\ +\x59\x52\x5f\x9d\xf5\x8c\x9a\xde\x35\x9f\xaf\xd2\x6c\x74\x55\xb7\ +\x0e\x64\xc9\x59\x8f\xfa\x0c\x28\x4c\xf3\xb9\x05\x09\x31\x33\x98\ +\x37\x37\x58\x96\x70\xa6\x90\x49\x26\x82\xd2\x21\xce\x6a\x2d\x7a\ +\x3e\x48\x8a\xa1\xef\xca\x59\xef\x5f\xe5\xf0\xea\xcf\xdf\x52\xba\ +\xbc\x3f\xe2\xf1\xb8\x62\x7e\x5c\xce\xc9\xf4\x34\x49\x2f\x2b\x5f\ +\x65\x76\x6a\xff\x89\xce\x8d\x4d\x19\x95\x2e\xcf\x36\xa5\xb3\x4d\ +\xd3\xa1\xbf\xd3\x33\xeb\xd6\x49\xea\x7b\x3f\x14\xeb\xa6\x72\x36\ +\x5e\xc1\x5a\x8f\xa7\x7f\xde\x51\x77\x83\x41\x20\x81\xfe\x88\x9d\ +\x16\xf7\x33\x0b\x41\x37\x8f\xfe\xf1\x9d\x36\x9f\xfd\x80\xed\x69\ +\x66\xde\x83\xa8\x28\xb3\x51\x46\x23\xd4\xd8\x81\x60\xb2\x79\xad\ +\xd7\xa1\x8b\x6e\x5d\x1b\x20\xa8\x5e\xd0\x7f\xc2\xd5\x6f\x54\x94\ +\x06\xe0\xf1\x8e\x70\xa6\xfd\x45\xcd\x3b\xb2\xd9\x95\xf5\x2b\x14\ +\x8d\xa5\x3e\x68\xa0\xe6\xc3\xbd\xd9\xcc\x63\x77\xee\x4b\x07\x20\ +\x72\x47\x3e\x04\x5a\x1e\xf9\x00\x58\x7d\xe4\x03\xe0\xec\x71\x0f\ +\x80\x85\x1d\x7d\x38\xaa\x01\x50\x47\xee\x07\xac\x51\x47\x3e\x00\ +\x78\xe4\x24\x88\xdc\x1c\xfd\x00\x44\x47\xae\x04\x50\x7e\x6f\x93\ +\xe0\xb4\xef\x83\xa3\xe6\xdd\xb2\x82\x8f\xad\x92\x9b\x2c\xbd\x5d\ +\x45\x50\x17\x71\x95\xce\x5b\x9e\xc6\x23\x0a\x8b\xc7\x45\x79\xd6\ +\xfb\x70\xd9\xbc\xe6\x05\x17\x45\x99\xa4\xe5\xa2\xc8\x34\xaf\xb5\ +\xa2\x82\x42\xc7\xac\xbe\x9f\x2d\x04\x9c\x6c\x0c\x22\xb5\xba\x2c\ +\xe7\xbb\xcb\xab\xab\x38\x29\x6e\xcf\x7a\xb0\x59\xf8\xb9\x28\x26\ +\x14\x0f\x31\x44\xc7\xd1\xaa\xcd\xe2\x21\x8d\x90\x32\x8c\x06\x51\ +\x3b\xdc\x2a\xa4\xf3\x49\xcd\x84\x33\xc6\xca\xad\xc2\xeb\xb2\x4c\ +\xf3\x3a\x1a\xc7\xf7\x29\x5d\x54\xf3\x6f\x31\xc2\xd5\x55\x71\x3b\ +\x2a\xfd\xe0\xd4\xe5\x75\xba\x59\x93\x42\xd4\x6b\xbf\xc8\x10\x5d\ +\xe7\x59\x4d\x81\xfc\x3c\x10\x6e\x59\xf8\xba\xd1\xc5\x45\x71\xb7\ +\xbb\x81\x2a\x8f\xa7\x7b\x8a\x7d\x49\x34\x8d\xeb\xab\x6a\x4f\x79\ +\x5e\x24\xe9\x03\xe5\xcb\xe6\xa3\x34\x19\xa5\xd1\x24\x4b\xa6\x45\ +\x96\xd7\x8f\x5a\x3f\x62\x58\x5c\xfc\x45\x53\x65\x5f\xc7\xe6\x16\ +\x7b\xba\x76\x9b\xe5\x74\x9b\xa3\xf9\xa2\x82\x70\xb0\x05\x86\xb9\ +\xc5\x62\x99\x41\x70\x6d\x1f\x30\xf1\x73\xe3\x81\xa2\xfb\x87\x8b\ +\x26\xf1\x5d\x36\xc9\x3e\xa7\x74\x6f\xc5\x62\x9e\x4c\xd2\x3a\x4e\ +\xe2\x3a\x5e\xcd\x89\xc5\x11\x8a\xae\xc5\x62\x65\xa1\x4c\x2e\x07\ +\xff\xfd\xf9\x97\xf3\xf9\x24\x3c\x1d\x0e\x07\x7f\x14\xe5\xa7\xc5\ +\x9c\x0c\x02\x6f\x10\x5f\x14\xd7\xd4\xed\xde\xf9\xf2\xf0\x69\x32\ +\x1c\x5c\x16\xe5\x24\xae\xcf\xb3\x09\x21\xdd\x2f\xf0\xfc\xf3\x6e\ +\x32\xa6\xd9\xb9\x2c\x58\x33\xf6\x73\x7a\xd5\xe8\xac\xd9\x32\x9d\ +\x2d\xf7\xec\x5c\xf3\x4a\x86\x93\xcc\x57\xea\xff\xaf\xce\xc6\xe3\ +\x5f\xfd\x49\x96\x14\xb8\x6c\x34\xab\xc7\xe9\x79\x73\xce\xd9\xdb\ +\xc5\x55\xf4\xe7\x97\x31\xbf\xc8\x7e\xeb\x2a\x4f\xfb\x8b\x61\x68\ +\x3e\x8d\x56\xc3\xb3\x36\x59\x96\x23\x3c\x8e\x2f\xd2\xf1\x59\xef\ +\x3f\xbe\x30\xd8\x2a\x1d\x95\xc5\xf5\x74\x42\xd0\x98\x57\x5f\x0e\ +\x2b\x41\x66\xc9\x6b\xf5\xfd\x98\xca\x1b\x9e\x19\x7c\xe0\xcd\xeb\ +\xe3\x25\x5d\xd4\xe0\x83\x8d\xfd\x4f\xf3\x21\x9a\x93\xc9\x40\xcc\ +\x3e\x96\xd7\xe3\x74\x90\xde\xa4\x84\xbb\xe4\x63\x55\x97\xc5\xa7\ +\x74\x59\x79\xf6\x71\x06\xb8\x01\x67\x0e\x0c\x28\x0d\x62\x71\x7c\ +\x9c\xe5\x29\xf5\x6e\x70\x71\x5d\xd7\xed\x63\x7f\xd1\x3c\x18\x50\ +\x87\xf3\x45\x83\x34\x39\xea\xb4\x1c\x13\x74\xea\x81\x5a\x1c\x5b\ +\xf5\x63\x7e\x20\x89\x89\xc7\xca\x32\xbe\x1f\xe4\x45\x9e\xb6\x8f\ +\x16\x97\x97\x55\x5a\x0f\xf8\xc7\x49\x5c\x7e\x4a\xcb\x59\xf9\x4d\ +\x56\x65\x17\xd9\xd8\x37\xd1\xbc\x1d\xa7\x1f\x93\xac\x9a\xd2\xf0\ +\x0c\xb2\xdc\x77\xe3\x63\x71\x93\x96\x97\xe3\xe2\x76\x59\x9e\xe6\ +\x31\xfd\x8b\x2e\xe2\xe1\xa7\x51\xd3\xbf\x41\x3c\x24\x36\xba\x1e\ +\xc7\x75\xba\xf2\x20\x74\x8b\xfc\xb0\x02\x2a\x1e\xc9\x48\x45\x3c\ +\xc2\xc8\xd2\x3b\x19\xad\x74\xce\x62\x0e\x6a\xe6\x84\x06\xbe\x8a\ +\x01\x16\x53\xcf\x32\x63\x41\x11\xb1\x2e\x4b\x3c\xd7\x22\xe3\xe8\ +\x5c\x4b\x30\xd2\x5c\xd3\x92\x09\x70\xd2\xad\x1c\x54\x5d\xc6\x79\ +\xe5\xc1\x4d\x53\x29\xae\xcb\xec\xee\x07\xce\x90\x5a\x33\xd2\x86\ +\x91\x5f\xfe\x43\x63\xd1\x41\xc8\x43\x41\xbf\xfc\xc7\x95\xcb\x7e\ +\x22\x1c\x66\xde\xe9\x50\x38\xa0\xb5\x5a\x6a\xa3\x8e\x08\x0e\x10\ +\x35\x90\xd8\x82\x01\x30\x45\xe5\x52\x6d\xc1\xc0\x31\xa1\xad\x33\ +\xdc\xb5\x61\x20\x39\xb3\x1c\x84\x5a\x83\x81\x70\x74\x63\x2d\xe0\ +\x5e\x14\x38\x8a\xb7\xb9\x45\x13\x72\x06\x52\x39\x85\x52\xad\x50\ +\xb0\xa8\x58\xde\xfb\xf3\x72\x2e\x9c\xe5\x2a\x8d\x38\xae\xf0\xe1\ +\xdd\xcf\x96\x52\x1a\x16\x39\xdd\xb8\xba\x28\x23\xf2\xea\x37\x71\ +\x7d\x5d\xa6\x2b\x0f\xb0\x17\x47\x43\xeb\x7f\x0e\xc6\x91\xd1\xc2\ +\x18\xe5\xbe\x6f\x1c\x11\x8c\x7e\x0b\x94\x64\xd6\xaf\xf5\x9b\x50\ +\x20\xd1\xa9\x04\xe3\x02\xad\x19\x2a\x80\x10\x04\x43\x2d\x14\xd7\ +\x81\x12\xcc\x69\x63\xb5\x0b\xc1\x31\x03\x88\x12\x02\x7a\x47\x56\ +\x16\x74\x08\x86\xd0\xc3\x8d\xc3\xe0\xf3\x43\x9c\xa5\x9b\x5f\x41\ +\x3f\x2a\x5a\x81\x6c\x25\x63\xc9\x8f\x78\x97\x47\x32\x63\xe8\x5f\ +\xcf\xe6\x8f\xce\x9d\xbc\x84\x3b\xd9\xe1\x4c\x50\x91\x37\x91\x5b\ +\x2c\x82\x4c\x49\xe7\x40\xc3\xa3\xce\x84\x00\x06\xd2\x08\xe5\x3a\ +\x67\xf2\xee\xc1\xd0\x38\x93\xd7\x70\x25\x8e\x69\xa7\xb8\xdc\x8f\ +\x81\xce\x95\x7c\xb3\x28\x5a\xb8\x12\x63\x24\xa2\x0d\xe9\x06\x19\ +\xc3\xa5\x68\x5c\x89\xb5\xd6\x81\x08\x05\xb9\x10\xa7\x04\xb9\x97\ +\x95\x33\x21\x85\x61\xa5\xd6\xae\xed\x4c\x84\x61\xc8\xad\xd2\xf6\ +\x49\xce\xa4\x73\x25\xef\x87\x3d\xd6\x23\x13\xb1\xc9\x23\x20\x09\ +\x15\xc0\x71\x3b\x32\x41\x26\x0d\x1a\x65\x4c\x9b\x47\xc0\xa3\x89\ +\x58\x40\x6d\x38\x13\x89\xce\x4a\xd3\x39\x93\x77\x0f\x87\x59\x64\ +\x02\x07\xba\x13\x24\xfe\x40\xe5\xc0\xb5\x61\x40\x82\x93\x9c\x83\ +\xd6\xba\xf3\x27\xdf\x27\x90\x1a\x7f\x02\xc8\x0c\x4d\x1a\xa7\x42\ +\x61\x29\xe8\xd0\x68\x02\x45\xe2\xc2\x58\x03\x14\x87\x70\xa6\x35\ +\x49\x50\x1b\xd0\x3b\xe2\x0e\xeb\x30\x94\x14\xaf\x80\x16\x08\x01\ +\x32\x2d\xc1\x7a\x0e\xa0\x46\xd0\xdf\xda\x27\xc6\x26\xe6\x9d\x3b\ +\x14\xa1\xbf\xef\x1b\xbf\xd3\xa1\xe8\x2d\x0e\xa1\xa0\xd5\x38\x21\ +\xed\x0e\x57\x22\x48\x46\x68\xab\xd6\x5c\x09\x61\x40\xfb\x00\xb5\ +\xcd\x21\x06\x18\x27\xe9\xa1\xd5\x33\x5d\x89\xec\x5c\xc9\x9b\x03\ +\xc1\xee\xd0\x12\xd2\x7a\x0f\xb0\x03\x00\x9c\xf8\x41\x6a\x5c\x03\ +\x00\xd3\x00\x5c\xcb\xf5\xc0\x94\x64\x28\x11\xc8\x23\x81\xe9\x5e\ +\x27\xd2\x01\xe0\x8d\x00\xe0\xb6\x17\xba\x9f\x0b\x01\x3a\xea\x84\ +\x53\x66\x13\x02\xa0\x69\x52\xbf\x00\x04\xda\x6a\xa1\x53\x01\x2f\ +\xa7\x02\x84\x62\xca\x50\x24\xe5\x42\xa9\x29\x32\x94\x28\x4c\x20\ +\x2d\x13\x28\xad\x80\x90\xee\x20\x38\x2d\x49\x05\x68\x26\x2c\x37\ +\xd2\x85\x7e\x15\x0a\x14\xd7\x18\x90\xd2\xd4\x42\xd1\x4c\x09\x15\ +\x78\x41\xa0\xb9\xdc\xd9\xdc\x23\xca\x80\x3f\x41\x13\x3c\x55\x27\ +\x76\x8c\xf1\x66\xda\xc1\x44\xb8\xa5\x1b\xc8\xe7\x83\x40\xb5\x1d\ +\x7b\x90\x6e\xd0\x1a\xac\x83\x75\xb7\x41\x5a\x93\x13\x3f\xb4\x39\ +\x43\x02\x23\x1d\xa6\x5c\xc7\x19\xef\x12\x04\x0d\x67\x48\xc7\xa4\ +\x40\x63\xd0\xf3\x83\x95\xdc\x4a\x13\x78\xbd\xe7\x33\xe3\x42\x65\ +\x19\xd0\xcb\x89\x40\x73\xcf\x14\x14\x5f\x86\x5a\x32\xa7\xb9\xb3\ +\x2e\x00\xcb\x64\xa3\x0b\x3d\x8f\x28\x0a\x3e\x40\xed\x6c\x6e\x2f\ +\x67\x7c\x4d\xc6\xe8\xa2\x8d\x83\xa2\x0d\xbd\x63\x4b\xfd\x79\xd1\ +\x86\x30\x24\x4c\x14\x1a\xb9\xa6\x34\xa8\x0d\x21\x65\xeb\x11\x8d\ +\x2e\xda\x78\xbf\x40\xd8\x5a\xb4\x7a\xa6\xd8\x14\x44\x22\x56\x70\ +\xab\x37\x1d\x07\x47\x0e\xf6\xed\xe2\x8d\x8e\x0b\x0e\xe0\x82\x43\ +\x57\x1d\x34\x81\x80\x40\x63\xd6\xd4\x03\x52\xc4\x61\xb9\x7e\x24\ +\xa9\xe2\x45\x79\xa0\x03\xc1\x41\x0e\x61\x6b\xed\xe1\x99\x30\x50\ +\x9a\x49\x27\xc1\xad\x2f\x3e\x49\xbf\x2a\x29\x9e\x9b\x60\xb5\x0b\ +\x05\x9d\x86\x7c\xb5\xd5\x67\xba\x45\xe8\x94\x4f\x79\x21\x22\x16\ +\x7e\x37\x53\x30\x43\x51\xa6\xd5\xa1\x54\xcc\xa1\xdf\xc4\xf4\xe2\ +\xd0\x70\xc5\xb9\x6a\xc4\xa1\x50\xd2\x40\xe0\xf7\x30\x51\x21\x40\ +\x28\x8d\x17\x9b\xc8\x71\x67\x7b\x7b\x44\x24\xbc\x86\x84\xec\x76\ +\x34\xbe\xfa\x5a\x86\xe5\xca\x18\xe3\x53\xa6\x88\x41\x50\xc9\x80\ +\xde\x11\x39\x50\x40\xe9\xb7\x2a\x1c\x82\x46\xe1\xed\x00\x8d\xf2\ +\x38\xd3\x84\x29\xe1\x93\xb2\x28\x18\x75\x42\x3b\x81\x21\x09\x09\ +\x0a\x46\xb4\x14\xfb\xf0\xa3\xa2\x1d\x8f\x17\x1c\xbc\x95\xd1\x69\ +\xca\x2f\x5f\x8e\xd8\xf4\x23\x7e\x99\x8a\x53\x98\xb0\x53\x53\x3a\ +\xed\x9d\xc6\x9a\x1f\xf1\x79\x54\x02\x60\x73\x31\x42\x82\x40\xb7\ +\x3f\xac\xe8\x34\xe5\xfb\x80\x40\x13\x5f\x1e\xae\x2a\xb9\xa3\x1b\ +\xda\x46\x81\xa5\xc8\x42\x10\x85\xc8\x17\x96\x13\x9d\x8b\x78\x6b\ +\x17\x31\x09\xb4\x62\x5c\x2a\x61\x1b\xe6\x57\x60\xb8\x0d\x2c\xb3\ +\xce\x48\x05\xa1\x60\xa8\x48\x55\x60\x10\xf9\x85\x4c\x21\x29\xf2\ +\x0c\x8d\x4f\xdf\x35\x48\xc7\xe6\x66\x61\x34\x37\xdb\x9b\x40\xf5\ +\xde\x13\xa7\x8e\x90\x19\xf0\xe0\x50\x03\x7c\xb2\x0c\x48\x5c\x73\ +\x11\x0a\x7c\x16\x05\xb9\xdc\xb7\x8b\x35\x5e\x06\x08\x84\x60\x49\ +\xae\xed\x35\x33\xe8\xde\x7e\x7a\x2b\x64\x14\xfc\x87\xda\xc7\x0c\ +\xa4\xf9\x0c\x4d\x6e\xce\x29\x2e\x70\x61\x44\x9a\xcf\x21\x0a\xd4\ +\x01\x0f\x29\x42\x30\x92\x1b\xeb\xfc\xb4\xe6\xd2\xf9\xf5\x68\xc9\ +\x1c\x09\xc0\x3d\xb3\xba\x9d\x7d\xb7\xe3\x4b\x20\x1e\x23\xf1\xf7\ +\x26\x12\x95\x50\xc4\x7f\xc7\x24\x12\x67\x19\x73\xdb\x2c\x20\x98\ +\x12\xce\x6c\x93\x80\x63\xc2\x48\x27\xd6\xf3\x26\x25\x91\x80\xb2\ +\xed\xb5\x05\x22\x01\x42\x11\x48\x0a\x2e\x60\x7f\xb6\x8b\x7f\xb0\ +\x56\x08\x85\x5e\x28\x6a\x4d\x6e\x85\x60\xf7\x60\xc6\x9c\x45\xe2\ +\xe9\x6f\x21\x63\x6e\xc6\x23\xf6\xfb\x06\xd2\x62\xdf\x0b\x25\x2a\ +\x87\x24\x15\xa4\x76\xd6\x4a\xe5\x33\xb0\x55\x93\x0c\xd7\x1c\xb3\ +\xdc\xa0\x9c\xb1\x90\x75\xc4\xf1\x33\x22\xa2\x72\xbf\xa7\xae\xb4\ +\x45\xad\x43\xbf\xed\xe9\x37\xce\xe1\x69\x29\x73\xaf\x11\x67\x76\ +\x52\xe2\xf0\x1c\xec\x03\xf3\xaf\xa5\x60\xda\x2f\x32\xd8\x36\x8f\ +\x48\xe9\x33\xa9\xac\x7d\xc3\xe5\xeb\x6e\xc9\xe1\x4b\xbd\xc9\xc1\ +\x49\x73\x4a\x83\x04\xbd\xa6\x26\x01\x98\x76\x00\xe2\x80\x87\x42\ +\x3b\x00\xbc\x9d\x9c\x38\x30\xf9\xde\x3f\xff\x67\x5c\x3b\x3f\xee\ +\x7e\x26\x47\x14\xb7\xaf\x9c\x7c\xdf\x81\xe3\xb5\x33\x2a\x0f\xe6\ +\x07\xbf\x80\x49\x54\xa0\x37\xf9\xc1\x22\x37\x8f\xe8\xcc\x67\x67\ +\x47\xbd\x1f\x35\x79\x2c\x4b\x51\xa4\x26\x35\xd3\xca\x3f\xd0\x17\ +\xfa\xdd\x4a\x14\x3e\x5c\x55\x96\x19\x52\x8c\x00\xa1\x21\x61\x6d\ +\x00\x75\x93\x32\xa5\x7d\x88\x0a\xfe\x11\x72\xee\x28\xfa\x80\x80\ +\x98\x43\x51\x08\xa1\x49\x89\x6a\x8a\x52\x9c\x94\x4f\x79\x00\xe3\ +\x39\x4a\xb2\x43\xc7\x57\xdf\xcb\x92\x14\x94\x6a\xe9\x9f\xd8\x54\ +\x92\x18\x5c\x34\x79\xb9\x42\x3b\xa9\xfd\x57\x07\x38\x29\x40\xcf\ +\x12\x73\x39\xa0\x11\x61\xf3\x3c\x8f\x73\x4a\x05\xc0\x24\x4a\xaf\ +\x0b\x43\xe2\x1c\x41\x11\x09\xba\x9d\xed\x3d\x86\x98\x0e\x2f\xdf\ +\x0e\x5e\x28\x36\x05\xcd\xfd\x2d\xa7\xbb\x6f\x8c\x01\x08\x4c\x93\ +\x0c\xc3\xad\x0c\x89\x42\x50\xa3\xb0\x44\x30\x8e\x39\x6d\xfd\xfe\ +\xba\x5f\x7f\x30\xd2\xb3\x0b\x48\x8b\x02\xfd\xbe\xb9\xdf\x17\xe3\ +\x6e\x57\x5b\x7b\xa1\xd2\x85\xa8\xef\x48\x79\x34\x21\xea\xf6\x17\ +\xd6\x3c\x7b\x1b\x0c\x34\xd1\xc5\x5a\x70\x62\x48\x7c\x18\x6c\xc7\ +\xb1\x5f\x18\x9d\x9e\xf6\x47\xe7\x27\xa7\xfe\x9b\xbd\xce\x4f\xfe\ +\x06\xf2\x9a\xfe\xf0\ \x00\x00\x06\xd1\ \x00\ \x00\x27\xd8\x78\x9c\xed\x59\x5b\x6f\xe3\xb6\x12\x7e\xcf\xaf\xd0\ @@ -32945,6 +33126,11 @@ qt_resource_name = "\ \x00\x41\ \x00\x72\x00\x63\x00\x68\x00\x5f\x00\x42\x00\x75\x00\x69\x00\x6c\x00\x64\x00\x69\x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\ \ +\x00\x13\ +\x08\x0a\x92\x67\ +\x00\x41\ +\x00\x72\x00\x63\x00\x68\x00\x5f\x00\x4d\x00\x65\x00\x72\x00\x67\x00\x65\x00\x57\x00\x61\x00\x6c\x00\x6c\x00\x73\x00\x2e\x00\x73\ +\x00\x76\x00\x67\ \x00\x14\ \x03\x50\x84\x07\ \x00\x70\ @@ -32993,8 +33179,8 @@ qt_resource_name = "\ qt_resource_struct = "\ \x00\x00\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x01\ -\x00\x00\x00\x10\x00\x02\x00\x00\x00\x01\x00\x00\x00\x38\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x1d\x00\x00\x00\x1b\ +\x00\x00\x00\x10\x00\x02\x00\x00\x00\x01\x00\x00\x00\x39\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x1e\x00\x00\x00\x1b\ \x00\x00\x00\x1a\x00\x02\x00\x00\x00\x17\x00\x00\x00\x04\ \x00\x00\x01\x2e\x00\x00\x00\x00\x00\x01\x00\x02\x9d\x23\ \x00\x00\x02\x92\x00\x00\x00\x00\x00\x01\x00\x06\x6c\x9e\ @@ -33019,19 +33205,20 @@ qt_resource_struct = "\ \x00\x00\x01\x14\x00\x00\x00\x00\x00\x01\x00\x02\x52\xbc\ \x00\x00\x00\xe0\x00\x00\x00\x00\x00\x01\x00\x01\xbc\xaa\ \x00\x00\x02\x3e\x00\x00\x00\x00\x00\x01\x00\x05\x84\xf1\ -\x00\x00\x06\x2e\x00\x01\x00\x00\x00\x01\x00\x07\x97\x68\ +\x00\x00\x06\x5a\x00\x01\x00\x00\x00\x01\x00\x07\xa2\x92\ \x00\x00\x05\x3a\x00\x00\x00\x00\x00\x01\x00\x07\x59\x96\ \x00\x00\x03\xd6\x00\x00\x00\x00\x00\x01\x00\x06\xfb\x9a\ -\x00\x00\x07\x5e\x00\x01\x00\x00\x00\x01\x00\x07\xef\x3d\ -\x00\x00\x06\x00\x00\x01\x00\x00\x00\x01\x00\x07\x90\x93\ +\x00\x00\x07\x8a\x00\x01\x00\x00\x00\x01\x00\x07\xfa\x67\ +\x00\x00\x06\x2c\x00\x01\x00\x00\x00\x01\x00\x07\x9b\xbd\ \x00\x00\x04\x10\x00\x01\x00\x00\x00\x01\x00\x07\x0a\x09\ \x00\x00\x04\x62\x00\x01\x00\x00\x00\x01\x00\x07\x1d\x90\ \x00\x00\x03\x7a\x00\x01\x00\x00\x00\x01\x00\x06\xe0\xf8\ -\x00\x00\x06\xf8\x00\x00\x00\x00\x00\x01\x00\x07\xcb\xf9\ +\x00\x00\x07\x24\x00\x00\x00\x00\x00\x01\x00\x07\xd7\x23\ \x00\x00\x05\x7a\x00\x00\x00\x00\x00\x01\x00\x07\x73\x70\ \x00\x00\x05\x1a\x00\x01\x00\x00\x00\x01\x00\x07\x51\xce\ \x00\x00\x03\x58\x00\x01\x00\x00\x00\x01\x00\x06\xd7\xff\ -\x00\x00\x06\xce\x00\x01\x00\x00\x00\x01\x00\x07\xc4\x64\ +\x00\x00\x06\x00\x00\x01\x00\x00\x00\x01\x00\x07\x90\x93\ +\x00\x00\x06\xfa\x00\x01\x00\x00\x00\x01\x00\x07\xcf\x8e\ \x00\x00\x04\x3e\x00\x01\x00\x00\x00\x01\x00\x07\x13\x61\ \x00\x00\x03\x0e\x00\x01\x00\x00\x00\x01\x00\x06\xc5\xe9\ \x00\x00\x03\x38\x00\x01\x00\x00\x00\x01\x00\x06\xcf\x91\ @@ -33039,12 +33226,12 @@ qt_resource_struct = "\ \x00\x00\x04\xce\x00\x00\x00\x00\x00\x01\x00\x07\x39\x8b\ \x00\x00\x05\xd8\x00\x01\x00\x00\x00\x01\x00\x07\x88\x2e\ \x00\x00\x04\xf8\x00\x01\x00\x00\x00\x01\x00\x07\x4a\x0c\ -\x00\x00\x06\x58\x00\x00\x00\x00\x00\x01\x00\x07\x9f\xad\ +\x00\x00\x06\x84\x00\x00\x00\x00\x00\x01\x00\x07\xaa\xd7\ \x00\x00\x04\x86\x00\x01\x00\x00\x00\x01\x00\x07\x22\xa7\ -\x00\x00\x06\xa2\x00\x01\x00\x00\x00\x01\x00\x07\xbb\xea\ -\x00\x00\x06\x82\x00\x01\x00\x00\x00\x01\x00\x07\xb1\xb0\ +\x00\x00\x06\xce\x00\x01\x00\x00\x00\x01\x00\x07\xc7\x14\ +\x00\x00\x06\xae\x00\x01\x00\x00\x00\x01\x00\x07\xbc\xda\ \x00\x00\x05\x5a\x00\x01\x00\x00\x00\x01\x00\x07\x6d\x58\ -\x00\x00\x07\x24\x00\x00\x00\x00\x00\x01\x00\x07\xdd\xc8\ +\x00\x00\x07\x50\x00\x00\x00\x00\x00\x01\x00\x07\xe8\xf2\ \x00\x00\x03\xac\x00\x00\x00\x00\x00\x01\x00\x06\xe9\x3a\ \x00\x00\x04\xb0\x00\x00\x00\x00\x00\x01\x00\x07\x2a\x8f\ \x00\x00\x02\xda\x00\x01\x00\x00\x00\x01\x00\x06\xbe\x99\ diff --git a/src/Mod/Arch/InitGui.py b/src/Mod/Arch/InitGui.py index 947da7843..bcfb99adc 100644 --- a/src/Mod/Arch/InitGui.py +++ b/src/Mod/Arch/InitGui.py @@ -74,7 +74,7 @@ class ArchWorkbench(Workbench): "Arch_SectionPlane","Arch_Add","Arch_Remove"] self.meshtools = ["Arch_SplitMesh","Arch_MeshToShape", "Arch_SelectNonSolidMeshes","Arch_RemoveShape", - "Arch_CloseHoles"] + "Arch_CloseHoles","Arch_MergeWalls"] self.calctools = ["Arch_Check"] # draft tools diff --git a/src/Mod/Arch/Resources/Arch.qrc b/src/Mod/Arch/Resources/Arch.qrc index b332026e8..452ecf5b5 100644 --- a/src/Mod/Arch/Resources/Arch.qrc +++ b/src/Mod/Arch/Resources/Arch.qrc @@ -29,6 +29,7 @@ icons/Arch_CloseHoles.svg icons/Arch_Check.svg icons/Arch_SelectNonManifold.svg + icons/Arch_MergeWalls.svg ui/archprefs-base.ui translations/Arch_af.qm translations/Arch_de.qm diff --git a/src/Mod/Arch/Resources/icons/Arch_MergeWalls.svg b/src/Mod/Arch/Resources/icons/Arch_MergeWalls.svg new file mode 100644 index 000000000..d96db03ba --- /dev/null +++ b/src/Mod/Arch/Resources/icons/Arch_MergeWalls.svg @@ -0,0 +1,422 @@ + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +