BIM Workbench
This documentation is not finished. Please help and contribute documentation.
GuiCommand model explains how commands should be documented. Browse Category:UnfinishedDocu to see more incomplete pages like this one. See Category:Command Reference for all commands.
See WikiPages to learn about editing the wiki pages, and go to Help FreeCAD to learn about other ways in which you can contribute.
Introduction
The BIM Workbench is an external workbench aimed at implementing complete Building Information Modeling (BIM) tools and workflow in FreeCAD. It can be installed from the
Addon Manager.
The BIM Workbench is based on the built-in Arch Workbench, and both will probably be merged in the future. The BIM Workbench is a "meta workbench", intended to gather many useful tools from other workbenches in a single place, and create a workflow that is more convenient and user-friendly to both experienced BIM users and beginners. The BIM workbench also features some specific tools of its own, mostly wizards and management tools, located under the Management menu.
See FreeCAD BIM migration guide for a quick overview if you are already a user of another BIM application.
The developers of Draft, Arch and BIM also collaborate with the greater OSArch community, with the ultimate goal of improving building design by using entirely free software.
Installing
The BIM workbench is not bundled with the default FreeCAD package, but can easily be installed via the Addon Manager. Invoke it from Tools → Addon Manager. The BIM workbench code is hosted and developed on github and can also be installed manually by copying it into FreeCAD's MOD directory.
Note
The BIM workbench is a work in progress, and will change often. Be sure to update it regularly! If you have the Python-Git module installed, the BIM workbench will automatically look for available updates at start, and display an icon in the status bar if an update is available.
The tools listed below might also not all be present if your FreeCAD version is not fully up-to-date. The BIM workbench should however work seamlessly on all FreeCAD versions, it will only drop the tools not available.
Getting started
Upon starting the BIM workbench for the first time, a welcome dialog is shown, giving a quick overview of how the workbench works, and allowing the user to start an in-game tutorial. The welcome dialog is also available from the help menu. When the welcome screen is closed by clicking OK, the BIM setup dialog will be shown, that allows the user to quickly set some of the most common BIM-related preferences of FreeCAD without the need to browse through the full FreeCAD preferences pages.
The BIM project setup tool allows you to quickly setup a BIM project by filling some basic information about your project. You can then, for example, use the different 2D drafting tools to sketch guidelines and baselines, then use the different 3D modeling tools to automatically build 3D BIM objects from them. A line, for example, can become a wall simply by selecting it and pressing the Wall button.
If you are used to another BIM application, check our BIM application compatibility table to get your marks when starting with FreeCAD.
The in-game tutorial is an easy way to quickly get on track with the BIM workbench.
Tools
The BIM workbench gather tools from several other FreeCAD workbenches, mainly Draft, Arch and Part, roughly reorganized in logical categories: 2D drafting, 3D modeling, annotation and modification tools. The manage category contains tools that are specific to the BIM workbench.
Additionally, if such addons are installed, tools from Reinforcement (extra reinforcing bar tools), Fasteners (bolts and screws), Flamingo/Dodo (metal structure and piping tools) and Parts Library are automatically included in the BIM workbench.
The BIM workbench also adds a series of items in the status bar of FreeCAD, and a couple of context menu items, accessible by right-clicking in the 3D view or in the tree view.
2D drafting
2D objects are commonly used as drafting aids, or to draw base lines and profiles to build BIM objects on. They can also be used to draw symbols and annotations in your model. Apart from sketches, that use their own coordinate system, 2D objects will be drawn on the current working plane.
Sketch: Creates a new sketch and enters sketch drawing mode. Sketches are advanced 2D objects with constraints support
Line: Draws a line segment between 2 points
Wire: Draws a line made of multiple line segments (polyline)
Circle: Draws a circle from center and radius
Arc: Draws an arc segment from center, radius, start angle and end angle
Arc 3Points: draws a circular arc segment from three points that are located in the circumference
Ellipse: Draws an ellipse from two corner points
Polygon: Draws a regular polygon from a center and a radius
Rectangle: Draws a rectangle from 2 opposite points
BSpline: Draws a B-Spline from a series of points
Cubic Bezier Curve: draws a Bezier curve of third degree by dragging two points.
Bezier Curve: Draws a Bezier curve from a series of points
Point: Inserts a point object
Annotation
Annotations are visual help objects that can be placed inside your model. They can be used to export your model directly to a 2D format like DXF, or reused when creating 2D views of your model with the TechDraw Workbench.
Text: Draws a multi-line text annotation
ShapeString: Draws a text line as geometry
Dimension: Draws a linear, angular, radial or diameter dimension
Label: Places a label with an arrow pointing to a selected element
Axis: Creates a single axis or a 1-direction array of axes to the document
Axis System: Creates an axes system composed of up to 3 series of axes
Grid: Creates a grid-like object to the document
Section Plane: Adds a section plane object to the document. Section planes define 2D views such as plans, sections and elevations
Page: Creates a new TechDraw page from a SVG template
View: Inserts a view of a section plane on a page
3D / BIM modeling
3D and BIM objects are the real-world elements that will compose your BIM project.
Building structure: These tools help you to organize your model
Project: Creates a project including selected objects
Site: Creates a site including selected objects
Building: Creates a building including selected objects
Level (Building Part): Creates a building part including selected objects. Building parts are commonly used to represent levels
Space: Creates a space object in the document
Reference: Links objects from another FreeCAD file into this document
BIM tools: These tools build BIM components
Wall: Creates a wall from scratch or using a selected object as a base
Curtain Wall: creates a curtain wall from scratch or using a selected object as a base
Column: Creates a vertical structural element at a given point, optionally using a selected object as a profile
Beam: Creates a horizontal structural element between two points, optionally using a selected object as a profile
Slab: Creates a flat structural element by extruding a selected flat object
Rebar: Creates a reinforcement bar in a selected structural element using a sketch. Requires the Reinforcement addon
Window: Creates a window using a selected object as a base
Door: Creates a Window object using door presets
Pipe tools: Creates pipes and corner or tee connection between 2 or 3 selected pipes
Stairs: Creates a stairs object in the document
Roof: Creates a sloped roof from a selected face
Panel tools: Creates panel objects, and 2D cutouts from these panels
Frame: Creates a frame object from a selected layout
Fence: Creates a fence object from a selected post object and path
Truss: Creates a truss from a selected line of from scratch
Library: Inserts an equipment or furniture object. Requires the Parts Library addon
BIM Component: Turns any selected object into a BIM object, with complete IFC support
Generic 3D tools: These tools build generic 3D objects that can be turned or used into BIM components
Profile: Creates a parametric 2D profile to be used for example in extrusions
Box: Draws a box by specifying its dimensions graphically
Shapebuilder: A tool to create more complex shapes from various parametric geometric primitives
Facebinder: Creates a new object from selected faces on existing objects
Modification tools
Move: Moves object(s) from one location to another
Copy: Copies object(s) from one location to another
Rotate: Rotates object(s) from a start angle to an end angle
Clone: Clones the selected objects
Offset: Moves segments of an object about a certain distance
2D Offset: Constructs a parallel wire at certain distance from original, or enlarges/shrinks a planar face ((parametric version)
Trim/Extend (Trimex): Trims or extends an object
Scale: Scales selected object(s) around a base point
Stretch: Stretches the selected objects
Array: Creates a polar or rectangular array from selected objects
Path Array: Creates an array of objects by placing the copies along a path
Mirror: Mirrors the selected objects
Extrude: Extrudes planar faces of an object
Cut: Cuts (subtracts) one object from another
Union: Fuses (unions) two objects
Common: Extracts the common (intersection) part of two objects
Compound: Creates a compound from the selected objects
Simple copy: Creates a non-parametric copy of a selected object
Upgrade: Joins objects into a higher-level object
Downgrade: Explodes objects into lower-level objects
Shape 2D View: Creates a 2D object which is a flattened 2D view of another 3D object
Draft to Sketch: Converts a Draft object to Sketch and vice-versa
Cut with plane: Cut an object according to a plan.
Add component: Adds objects to a component
Remove component: Subtracts or removes objects from a component
Management tools
BIM setup: Configures some of the FreeCAD preferences most commonly used for BIM
Project setup: Allows to create some basic objects such as a site, a building and axes by filling basic project information.
Views and levels manager: Manage the different views and levels of your project
Windows manager: Manage the doors and windows of your project
IFC elements manager: Manage how the different elements of your project will be exported to IFC
IFC properties manager: Manage the IFC properties attached to each of your objects
IFC quantities manager: Manage how the quantities of your objects are explicitely exported to IFC
Classification manager: Manage how objects and materials of your project relate to classifications systems such as Uniclass
Layers manager: Manage the layers of your document
Material: Manages materials or multimaterials of selected objects
Schedule: Creates different types of schedules
Preflight checks: Perform different checks on your model before exporting to IFC
Annotation style editor: Manages annotation styles used by texts and dimensions
Tutorials and Learning
- Migrating to FreeCAD from Revit
- Arch & BIM tutorials on this wiki
- "BIM with FreeCAD" video series by Yorik
- "FreeCAD tutorials" video series by Regis
- "Quinta Monroy" video series by Regis
External workbenches
FreeCAD workbenches are easy to program in Python, there are therefore many people developing additional workbenches outside of the FreeCAD main developers.
The external workbenches page has some information and tutorials on some of them, and the FreeCAD Addons project aims at gathering them and making them easily installable from within FreeCAD.
New workbenches are in development, stay tuned!

- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Path, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub