Arquitectura EdificarPieza

From FreeCAD Documentation
This page is a translated version of the page Arch BuildingPart and the translation is 16% complete.
Outdated translations are marked like this.

Arquitectura EdificioPieza

Ubicación en el Menú
Arquitectura → EdificioPieza
Entornos de trabajo
Atajo de teclado por defecto
Introducido en versión
Ver también
Arquitectura Edificio, Arquitectura Sitio


La EdificioPieza reemplaza a las antiguas Arquitectura Planta y Arquitectura Edificio con una versión más capaz que puede ser usada no sólo para crear Suelo/Piso/Niveles sino también todo tipo de situaciones donde diferentes objetos de Arquitectura/BIM necesitan ser agrupados y ese grupo puede necesitar ser manejado como un solo objeto o replicado.


  1. Optionally, select one or more objects to be included in your new Building Part.
  2. Press the Arch BuildingPart button.


BuildingParts have a built-in, implicit Arch SectionPlane.

This plane is always parallel to the BuildingPart's base plane, but you can specify the offset between them. So all tools that work with a section plane, such as Draft Shape2DView and TechDraw ArchView also work with BuildingParts.


  • After creating a BuildingPart, you can add more objects to it by dragging and dropping them in the Tree View or by using the Arch Add tool.
  • You can remove objects from a BuildingPart by dragging and dropping them out of the Tree View or by using the Arch Remove tool.
  • By double-clicking the BuildingPart object in the tree view, the Working Plane will be set to its location, and the BuildingPart will become active, which means that new objects will be added automatically to it. Double-clicking the BuildingPart again will deactivate it and set the working plane back to its previous position (to be available this option needs to be set up as true, in View Property panel - Interaction - Double Click Activates).
  • The BuildingPart can display a mark in the 3D view with a label and level indication.
  • When a BuildingPart is moved/rotated, all its children that either have no DatosMove With Host property, or have it turned on, will move/rotate together.
  • Building Parts can be Draft Cloned.
  • Building Parts can take any IFC type. Its IFC Type property determines its use. If you set it to Building Storey it will behave as a level. If you set it to Building it behaves as a building, and if you set it to Element Assembly it behaves as an assembly. Its icon will change to reflect this setting, but other than that it has no other impact in FreeCAD. However, being exported to IFC as one or another type can have an impact in other BIM applications.
  • Building Parts allow to define an Auto-group capture box. Subsequent Draft and Arch objects, or anything else that uses Draft.autogroup(), will be automatically added to that Building Part if they are fully inside the capture box. introduced in version 0.20


See also: Property editor.

An Arch BuildingPart is derived from an App GeoFeature object and inherits all its properties. It also has the following additional properties:



  • DatosGroup (LinkList): List of referenced objects.
  • Datos (Hidden)_ Group Touched (Bool)

Building Part

  • DatosArea (Area): The computed floor area of this floor.
  • DatosHeight (Length): The height of this object, and of its children objects. The children objects could be, for example, Arch Walls. Each wall's height must be set to 0 (zero), so the height property of the BuildingPart propagates to the objects inside of it.
  • DatosLevel Offset (Length): The level of the (0,0,0) point of this level. This value is added to the Placement.Base.z attribute of the BuildingPart, to indicate a vertical offset without actually moving the object. The resulting offset is displayed if VistaShow Level is true.
  • Datos (Hidden)Materials Table (Map): A MaterialName:SolidIndexesList map that relates material names with solid indexes to be used when referencing this object from other files.
  • DatosOnly Solids (Bool): If true, only solids will be collected by this object when referenced from other files.
  • Datos (Hidden)Saved Inventor (FileIncluded): This property stores an inventor representation for this object.
  • Datos (Hidden)Shape (PartShape): The shape of this object.


  • DatosHeight Propagate (Bool): If true, the height value propagates to contained objects. See the DatosHeight property for additional conditions that apply.


  • Datos (Hidden)Ifc Data (Map): IFC data.
  • Datos (Hidden)Ifc Properties (Map): IFC properties of this object.
  • DatosIfc Type (Enumeration): The IFC type of this object.

IFC Attributes

  • DatosDescription (String): An optional description for this component
  • DatosGlobal Id (String)
  • DatosObject Type (String)
  • DatosOverall Height (Length)
  • DatosOverall Width (Length)
  • DatosPartitioning Type (Enumeration)
  • DatosPredefined Type (Enumeration)
  • DatosTag (String): An optional tag for this component.
  • DatosUser Defined Partitioning Type (String)


Auto Group

Building Part

  • Vista (Hidden)Diffuse Color (ColorList): The individual face colors.
  • VistaDisplay Offset (Placement): A transformation to apply to the level mark.
  • VistaFont Name (Font): The font to be used for texts.
  • VistaFont Size (Length): The font size of texts.
  • VistaLine Width (Float): The line width of this object.
  • VistaOrigin Offset (Bool): If true, when activated, Display offset will affect the origin mark too.
  • VistaOverride Unit (String): An optional unit to express levels.
  • VistaShow Label (Bool): If true, when activated, the object's label is displayed.
  • VistaShow Level (Bool): If true, show the level.
  • VistaShow Unit (Bool): If true, show the unit on the level tag.


  • VistaChildren Line Color (Color): The line color to apply to the children of this Building Part.
  • VistaChildren Line Width (Float): The line width to apply to the children of this Building Part.
  • VistaChildren Override (Bool): If true, the objects contained in this Building Part will adopt these line, color and transparency settings.
  • VistaChildren Shape Color (Color): The shape color to apply to the children of this Building Part.
  • VistaChildren Transparency (Percent): The transparency to apply to the children of this Building Part.


  • VistaAuto Cut View (Bool): Turn cutting on when activating this level.
  • VistaCut Margin (Length): The distance between the level plane and the cut line.
  • VistaCut View (Bool): Cut the view above this level.


  • VistaAuto Working Plane (Bool): If set to True, the working plane will be kept on Auto mode.
  • VistaDouble Click Activates (Bool): If True, double-clicking this object in the tree activates it.
  • VistaRestore View (Bool): If set, the view stored in this object will be restored on double-click.
  • VistaSave Inventor (Bool): If this is enabled, the inventor representation of this object will be saved in the FreeCAD file, allowing to reference it in other files in lightweight mode.
  • Vista (Hidden)Saved Inventor (FileIncluded): A slot to save the inventor representation of this object, if enabled.
  • VistaSet Working Plane (Bool): If true, when activated, the working plane will automatically adapt to this Building Part.
  • Vista (Hidden)View Data (FloatList): Camera position data associated with this object.


See also: Arch API and FreeCAD Scripting Basics.

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

BuildingPart = makeBuildingPart(objectslist=None)
  • Creates a BuildingPart object from objectslist, which is a list of objects.


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)

BuildingPart = Arch.makeBuildingPart([Wall1, Wall2])

Floor = Arch.makeFloor([BuildingPart])
Building = Arch.makeBuilding([Floor])
Site = Arch.makeSite(Building)