Arch Add/en: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{docnav|[[Arch_CutPlane|Cut with plane]]|[[Arch_Remove|Remove component]]|[[Arch_Module|Arch]]|IconL=Arch_CutPlane.svg |IconC=Workbench_Arch.svg |IconR=Arch_Remove.svg}}
{{GuiCommand|Name=Arch Add|Workbenches=[[Arch Module|Arch]]|MenuLocation=Arch → Add|SeeAlso=[[Arch Remove]]}}

{{GuiCommand
|Name=Arch Add
|MenuLocation=Arch → Add
|Workbenches=[[Arch Module|Arch]]
|SeeAlso=[[Arch Remove|Arch Remove]]
}}


==Description==
==Description==
Line 9: Line 16:
* Add [[Arch Axis|axis systems]] to [[Arch Structure|structural objects]]
* Add [[Arch Axis|axis systems]] to [[Arch Structure|structural objects]]
* Add objects to [[Arch SectionPlane|section planes]]
* Add objects to [[Arch SectionPlane|section planes]]

The counterpart of this tool is the [[Arch Remove]] tool.


[[Image:Arch Add example.jpg|640px]]
[[Image:Arch Add example.jpg|640px]]
{{Caption|A box added to a wall as a component.}}

In the above image, a box is being added to a wall.


==How to use==
==How to use==


# Select the object(s) to be added, then the "host" object (the host object must be the last one you selected)
# Select the objects to be added together. The last object selected will be the host Arch object.
# Press the {{KEY|[[Image:Arch Add.png|16px]] '''Add'''}} button
# Press the {{Button|[[Image:Arch Add.svg|16px]] [[Arch Add|Add]]}} button.


==Scripting==
==Scripting==
{{Emphasis|See also:}} [[Arch API]] and [[FreeCAD Scripting Basics]].


The Add tool can by used in [[macros]] and from the python console by using the following function:
The Add tool can be used in [[macros]] and from the [[Python]] console by using the following function:
{{Code|code=
{{Code|code=
addComponents (objectsList,hostObject)
addComponents(objectsList, host)
}}
}}

* Adds the given object or the objects from the given list as components to the given host Object. Use this for example to add windows to a wall, or to add walls to a floor.
* Adds the given objects in {{incode|objectsList}} to the given {{incode|host}} object.
* Returns nothing.
** {{incode|objectsList}} can be a single object or a list of objects.


Example:
Example:
{{Code|code=
{{Code|code=
import FreeCAD, Arch, Draft, Part
import FreeCAD, Arch, Draft, Part

line = Draft.makeWire([FreeCAD.Vector(0,0,0),FreeCAD.Vector(2,2,0)])
p1 = FreeCAD.Vector(0, 0, 0)
wall = Arch.makeWall(line)
box = Part.makeBox(1,1,1)
p2 = FreeCAD.Vector(2000, 2000, 0)

Arch.addComponents(box,wall)
Line = Draft.makeWire([p1, p2])
Wall = Arch.makeWall(Line, width=150, height=2000)

p3 = FreeCAD.Vector(0, 2000, 0)
p4 = FreeCAD.Vector(3000, 0, 0)

Line2 = Draft.makeWire([p3, p4])
Wall2 = Arch.makeWall(Line2, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

Arch.addComponents(Wall2, Wall)
FreeCAD.ActiveDocument.recompute()
}}
}}
{{docnav|[[Arch_CutPlane|Cut with plane]]|[[Arch_Remove|Remove component]]|[[Arch_Module|Arch]]|IconL=Arch_CutPlane.svg |IconC=Workbench_Arch.svg |IconR=Arch_Remove.svg}}

{{Arch Tools navi}}

{{Userdocnavi}}

Revision as of 22:39, 9 February 2019

Arch Add

Menu location
Arch → Add
Workbenches
Arch
Default shortcut
None
Introduced in version
-
See also
Arch Remove

Description

The Add tool allows you to do 4 kinds of operations:

The counterpart of this tool is the Arch Remove tool.

A box added to a wall as a component.

How to use

  1. Select the objects to be added together. The last object selected will be the host Arch object.
  2. Press the Add button.

Scripting

See also: Arch API and FreeCAD Scripting Basics.

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

addComponents(objectsList, host)
  • Adds the given objects in objectsList to the given host object.
    • objectsList can be a single object or a list of objects.

Example:

import FreeCAD, Arch, Draft, Part

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 2000, 0)

Line = Draft.makeWire([p1, p2])
Wall = Arch.makeWall(Line, width=150, height=2000)

p3 = FreeCAD.Vector(0, 2000, 0)
p4 = FreeCAD.Vector(3000, 0, 0)

Line2 = Draft.makeWire([p3, p4])
Wall2 = Arch.makeWall(Line2, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

Arch.addComponents(Wall2, Wall)
FreeCAD.ActiveDocument.recompute()