Arch MergeWalls: Difference between revisions

From FreeCAD Documentation
m (Add limitation of merging walls)
No edit summary
(One intermediate revision by the same user not shown)
Line 28: Line 28:


<!--T:7-->
<!--T:7-->
# Select two or more walls.
# Select two or more walls. The walls must have the same height, width and alignment.
# Press the {{KEY|[[Image:Arch MergeWalls.svg|16px]]}} button, or use the {{KEY|Arch}} → {{KEY|Utilities}} → {{KEY|[[Image:Arch MergeWalls.svg|16px]] [[Arch MergeWalls|Merge Walls]]}} from the top menu.
# Press the {{KEY|[[Image:Arch MergeWalls.svg|16px]]}} button, or use the {{KEY|Arch}} → {{KEY|Utilities}} → {{KEY|[[Image:Arch MergeWalls.svg|16px]] [[Arch MergeWalls|Merge Walls]]}} from the top menu.


==Notes==
==Properties== <!--T:14-->


* [[Arch_Add|Arch Add]] can merge walls even if they have different heights, widths and alignments.
==Limitations== <!--T:15-->

If the walls to merge have different widths, merge will not work. In this case, [[Arch_Add|Arch_Add]] should then be used instead.


== Scripting == <!--T:8-->
== Scripting == <!--T:8-->

Revision as of 09:21, 29 April 2024

Arch MergeWalls

Menu location
Arch → Utilities → Merge Walls
Workbenches
Arch
Default shortcut
None
Introduced in version
-
See also
Arch Wall

Description

The MergeWalls tool fuses two or more selected Arch Walls.

Usage

  1. Select two or more walls. The walls must have the same height, width and alignment.
  2. Press the button, or use the ArchUtilities Merge Walls from the top menu.

Notes

  • Arch Add can merge walls even if they have different heights, widths and alignments.

Scripting

See also: Arch API and FreeCAD Scripting Basics.

This tool can be used in macros and from the Python console by using the following function:

base = joinWalls(walls, delete=False)

Example:

import FreeCAD, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 0, 0)
baseline = Draft.makeLine(p1, p2)
Wall1 = Arch.makeWall(baseline, length=None, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

Wall2 = Arch.makeWall(None, length=2000, width=200, height=1000)
FreeCAD.ActiveDocument.recompute() 

base = Arch.joinWalls([Wall1, Wall2])