Notice: Unexpected clearActionName after getActionName already called in /var/www/wiki/includes/context/RequestContext.php on line 338
Arch Level - FreeCAD Documentation Jump to content

Arch Level

From FreeCAD Documentation
(Redirected from Arch Floor/en)

Arch Level

Menu location
3D/BIM → Level
Workbenches
BIM
Default shortcut
L V
Introduced in version
-
See also
None

Description

The Arch Level tool is a special type of FreeCAD group object that has a couple of additional properties particularly suited for building levels. Particularly, they have a height property, that its children objects (walls and structures) can use to set their own height automatically. They are mostly used to organize your model.

The Arch Level is derived entirely from the Arch BuildingPart object, which is a general container to organize a building model not limited to levels or storeys. Older Level objects can be converted to the new type by right clicking on them and choosing Convert to BuildingPart.

Usage

  1. Optionally, select one or more objects to be included in your new level.
  2. There are several ways to invoke the tool:
    • Press the Level button.
    • Select the 3D/BIM → Level option from the menu.
    • Use the keyboard shortcut: L then V.

Options

  • After creating a level, you can add more objects to it by drag and dropping them in the Tree View or by using the Add Component tool.
  • You can remove objects from a level by drag and dropping them out of it the Tree View or by using the Remove Component tool.

Properties

An Arch Level object shares all properties from an Arch BuildingPart, with the DataIfc Type set to "Building Storey".

Scripting

See also: Arch API and FreeCAD Scripting Basics.

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

Floor = makeFloor(objectslist=None, baseobj=None, name="Floor")
  • Creates a Floor object from objectslist, which is a list of objects.

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()

Floor = Arch.makeFloor([Wall1, Wall2])

Building = Arch.makeBuilding([Floor])
Site = Arch.makeSite(Building)
FreeCAD.ActiveDocument.recompute()