Arch Building: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
(36 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand|Name=Arch Building|Workbenches=[[Arch Module|Arch]]|MenuLocation=Arch -> Building|Shortcut=B U|SeeAlso=[[Arch Floor]], [[Arch Site]]}}
<translate>
<!--T:15-->
{{Docnav
|[[Arch_BuildingPart|Building Part]]
|[[Arch_Site|Site]]|[[Arch_Module|Arch]]
|IconL=Arch_BuildingPart.svg
|IconR=Arch_Site.svg
|IconC=Workbench_Arch.svg
}}


<!--T:1-->
'''==Description==
{{GuiCommand
|Name=Arch Building
|MenuLocation=Arch → Building
|Workbenches=[[Arch_Module|Arch]]
|Shortcut={{KEY|B}} {{KEY|U}}
|SeeAlso=[[Arch_BuildingPart|Arch BuildingPart]], [[Arch_Site|Arch Site]]
}}


==Description== <!--T:2-->

<!--T:3-->
The Arch Building is a special type of FreeCAD group object particularly suited for representing a whole building unit. They are mostly used to organize your model, by containing [[Arch Floor|floor]] objects.
The Arch Building is a special type of FreeCAD group object particularly suited for representing a whole building unit. They are mostly used to organize your model, by containing [[Arch Floor|floor]] objects.


==Usage== <!--T:4-->
==How to use==


<!--T:5-->
# Optionally, select one or more objects to be included in your new building
# Optionally, select one or more objects to be included in your new building.
# Press the {{KEY|[[Image:Arch Building.png|16px]] '''Arch Building'''}} button, or press the {{KEY|B}} then {{KEY|U}} keys
# Press the {{Button|[[Image:Arch Building.svg|16px]] [[Arch Building|Arch Building]]}} button, or press the {{KEY|B}} then {{KEY|U}} keys.


==Options==
==Options== <!--T:6-->


<!--T:7-->
* After creating a building, you can add more objects to it by drag and dropping them in the Tree View or by using the [[Image:Arch Add.png|16px]] [[Arch Add]] tool
* Starting from FreeCAD version 0.18, the Building object is actually a [[Arch BuildingPart|BuildingPart]] with its {{PropertyData|IFC Type}} property set to "Building". You can convert any BuildingPart to a Building simply by changing its IFC Type.
* You can remove objects from a building by drag and dropping them out of it the Tree View or by using the [[Image:Arch Remove.png|16px]] [[Arch Remove]] tool
* After creating a building, you can add more objects to it by drag and dropping them in the Tree View or by using the {{Button|[[Image:Arch Add.svg|16px]] [[Arch Add|Arch Add]]}} tool.
* You can remove objects from a building by drag and dropping them out of it the Tree View or by using the {{Button|[[Image:Arch Remove.svg|16px]] [[Arch Remove|Arch Remove]]}} tool.


==Properties== <!--T:12-->
==Scripting==


<!--T:13-->
The Building tool can by used in [[macros]] and from the python console by using the following function:
* {{PropertyData|Building Type}}: The type of this building, to choose from a list


==Scripting== <!--T:8-->
'''makeBuilding ([objectslist])''': creates a building including the
{{Emphasis|See also:}} [[Arch API|Arch API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
objects from the given list.


<!--T:9-->
The Building tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function:
</translate>
{{Code|code=
Building = makeBuilding(objectslist=None, baseobj=None, name="Building")
}}
<translate>

<!--T:10-->
* Creates a {{incode|Building}} object from {{incode|objectslist}}, which is a list of objects, or {{incode|baseobj}}, which is a {{incode|Shape}}.

<!--T:11-->
Example:
Example:


</translate>
import Arch
{{Code|code=
Arch.makeBuilding()
import FreeCAD, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 0, 0)
baseline = Draft.makeLine(p1, p2)
baseline2 = Draft.makeLine(p1, -1*p2)

Wall1 = Arch.makeWall(baseline, length=None, width=150, height=2000)
Wall2 = Arch.makeWall(baseline2, length=None, width=150, height=1800)
FreeCAD.ActiveDocument.recompute()

Building = Arch.makeBuilding([Wall1, Wall2])

Site = Arch.makeSite(Building)
FreeCAD.ActiveDocument.recompute()
}}
<translate>


<!--T:14-->
{{Docnav
|[[Arch_BuildingPart|Building Part]]
|[[Arch_Site|Site]]
|[[Arch_Module|Arch]]
|IconL=Arch_BuildingPart.svg
|IconR=Arch_Site.svg
|IconC=Workbench_Arch.svg
}}


</translate>
'''{{languages | {{es|Arch_Building/es}} {{fr|Arch_Building/fr}} {{it|Arch_Building/it}} {{se|Arch_Building/se}} }}
{{Arch Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Revision as of 14:14, 29 November 2020

Arch Building

Menu location
Arch → Building
Workbenches
Arch
Default shortcut
B U
Introduced in version
-
See also
Arch BuildingPart, Arch Site

Description

The Arch Building is a special type of FreeCAD group object particularly suited for representing a whole building unit. They are mostly used to organize your model, by containing floor objects.

Usage

  1. Optionally, select one or more objects to be included in your new building.
  2. Press the Arch Building button, or press the B then U keys.

Options

  • Starting from FreeCAD version 0.18, the Building object is actually a BuildingPart with its DataIFC Type property set to "Building". You can convert any BuildingPart to a Building simply by changing its IFC Type.
  • After creating a building, you can add more objects to it by drag and dropping them in the Tree View or by using the Arch Add tool.
  • You can remove objects from a building by drag and dropping them out of it the Tree View or by using the Arch Remove tool.

Properties

  • DataBuilding Type: The type of this building, to choose from a list

Scripting

See also: Arch API and FreeCAD Scripting Basics.

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

Building = makeBuilding(objectslist=None, baseobj=None, name="Building")
  • Creates a Building object from objectslist, which is a list of objects, or baseobj, which is a Shape.

Example:

import FreeCAD, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 0, 0)
baseline = Draft.makeLine(p1, p2)
baseline2 = Draft.makeLine(p1, -1*p2)

Wall1 = Arch.makeWall(baseline, length=None, width=150, height=2000)
Wall2 = Arch.makeWall(baseline2, length=None, width=150, height=1800)
FreeCAD.ActiveDocument.recompute()

Building = Arch.makeBuilding([Wall1, Wall2])

Site = Arch.makeSite(Building)
FreeCAD.ActiveDocument.recompute()