BIM Workbench: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 24: Line 24:


<!--T:53-->
<!--T:53-->
The [[File:Workbench_BIM.svg|24px]] [[BIM_Workbench|BIM Workbench]] provides a modern [http://en.wikipedia.org/wiki/Building_Information_Modeling Building Information Modelling] workflow in FreeCAD, with fully parametric objects such as walls, beams, roofs, windows, stairs, pipes, and furniture. It supports [[Arch_IFC|Industry Foundation Classes]] (IFC) files, and the production of 2D plans in combination with the [[File:Workbench_TechDraw.svg|16px]] [[TechDraw_Workbench|TechDraw Workbench]].
The [[File:Workbench_BIM.svg|24px]] [[BIM_Workbench|BIM Workbench]] provides a modern [https://en.wikipedia.org/wiki/Building_information_modeling Building Information Modelling] workflow in FreeCAD, with fully parametric objects such as walls, beams, roofs, windows, stairs, pipes, and furniture. It supports [[Arch_IFC|Industry Foundation Classes]] (IFC) files, and the production of 2D plans in combination with the [[File:Workbench_TechDraw.svg|16px]] [[TechDraw_Workbench|TechDraw Workbench]].


<!--T:54-->
<!--T:54-->
Line 60: Line 60:
<!--T:50-->
<!--T:50-->
The [[BIM_ingame_tutorial|in-game tutorial]] is an easy way to quickly get on track with the BIM workbench.
The [[BIM_ingame_tutorial|in-game tutorial]] is an easy way to quickly get on track with the BIM workbench.

== General concepts ==

The BIM workbench allows to create complete BIM projects from scratch, including modelling, managing IFC data, creating construction drawings and creating quantity schedules. The BIM workbench offers two modes: '''unlocked''', where you can freely create your model with any FreeCAD tool, BIM or not, and '''locked''', also called NativeIFC, where your FreeCAD model is linked to an IFC file, and everything you modify is reflected in the linked IFC file. In locked mode, it is therefore no longer needed to save a FreeCAD file, as the linked IFC file contains all the model data.

In locked mode, all the objects you create are immediately converted to IFC, and might therefore loose some of their original properties and some of their parametric behaviour when these are not supported by the IFC format. This mode is more restrictive, which is a disadvantage at some points in project development, but become an advantage when data integrity and reliability become essential.

It is generally recommend to start a project using unlocked mode, export your model to IFC as often as needed, and switch to locked mode if or when the IFC file becomes a common data source between different actors of the project, and each change needs to be carefully tracked. Project developers who work alone or keep full control over their project authoring usually have little or no need for IFC.

Building elements such as [[Arch Wall|walls]] or [[BIM Column|columns]] are easily created by pressing the appropriate toolbar button and clicking points in the 3D view. They can be moved and edited after being created. Most BIM elements are created in the current [[Draft SelectPlane|working plane]], so a typical workflow usually involves placing the working plane first, then creating a BIM element. More complex elements can be created by drawing 2D elements first, then using one of the BIM tools to convert them into the desired element.

Elements of building projects can be organized using [[Arch Site|sites]], [[Arch Building|buildings]] and [[Arch BuildingPart|levels]], to reproduce what is commonly done in other BIM applications. In FreeCAD, however, such structures are not mandatory, and you are free to organize your model elements as you see fit, for example using Groups.

2D drawings can be generated from a model to represent plan, section or elevation views. To generate such a drawing,[[Arch SectionPlane|section planes]] are placed in the model, to indicate where it should be cut or viewed from. Once the section planes are in place, two methods are possible:

# Create projected views in the document using [[Draft Shape2DView|shape views]], then add all the necessary annotations such as texts and dimensions, then put all this on a page. This is the recommended way, as it offers more flexibility
# Create a view on a page directly from the section plane. Then all the needed 2D annotations must either be added to the section plane, or done directly on the page. This is less flexible

Finally, quantities schedules can be created using the [[Arch Schedule|schedule]] tool.


== Tools == <!--T:9-->
== Tools == <!--T:9-->
Line 125: Line 144:


<!--T:71-->
<!--T:71-->
* [[Image:BIM_Project.svg|32px]] [[BIM_Project|Project]]: Creates a project including selected objects.
* [[Image:BIM_Project.svg|32px]] [[BIM_Project|Project]]: Creates an IFC project including selected objects.


<!--T:72-->
<!--T:72-->
Line 259: Line 278:


<!--T:114-->
<!--T:114-->
* [[Image:BIM_Text.svg|32px]] [[BIM_Text|Text]]:
* [[Image:BIM_Text.svg|32px]] [[BIM_Text|Text]]: Creates a 2D text in a document or on a TechDraw page


<!--T:115-->
<!--T:115-->
Line 265: Line 284:


<!--T:116-->
<!--T:116-->
* [[Image:BIM_DimensionAligned.svg|32px]] [[BIM_DimensionAligned|Aligned dimension]]:
* [[Image:BIM_DimensionAligned.svg|32px]] [[BIM_DimensionAligned|Aligned dimension]]: Creates a dimension aligned with two points points or a selected edge.


<!--T:117-->
<!--T:117-->
* [[Image:BIM_DimensionHorizontal.svg|32px]] [[BIM_DimensionHorizontal|Horizontal dimension]]:
* [[Image:BIM_DimensionHorizontal.svg|32px]] [[BIM_DimensionHorizontal|Horizontal dimension]]: Creates an horizontal dimension between two points or from a selected edge.


<!--T:118-->
<!--T:118-->
* [[Image:BIM_DimensionVertical.svg|32px]] [[BIM_DimensionVertical|Vertical dimension]]:
* [[Image:BIM_DimensionVertical.svg|32px]] [[BIM_DimensionVertical|Vertical dimension]]: Creates a vertical dimension between two points or from a selected edge.


<!--T:119-->
<!--T:119-->
* [[Image:BIM_Leader.svg|32px]] [[BIM_Leader|Leader]]:
* [[Image:BIM_Leader.svg|32px]] [[BIM_Leader|Leader]]: Creates a 2-segment polyline with an arrow at its end, to be used as a leader line in conjunction with a [[BIM_Text|Text]].


<!--T:120-->
<!--T:120-->
Line 295: Line 314:


<!--T:126-->
<!--T:126-->
* [[Image:BIM_TDPage.svg|32px]] [[BIM_TDPage|Page]]:
* [[Image:BIM_TDPage.svg|32px]] [[BIM_TDPage|Page]]: Creates a [[TechDraw PageTemplate|TechDraw page]] from a template SVG file.


<!--T:127-->
<!--T:127-->
* [[Image:BIM_TDView.svg|32px]] [[BIM_TDView|View]]:
* [[Image:BIM_TDView.svg|32px]] [[BIM_TDView|View]]: Creates a view of the selected object(s) such as a [[Arch SectionPlane|Section plane]] or a Group containing the different elements of a 2D view.


<!--T:128-->
<!--T:128-->
* [[Image:BIM_Shape2DView.svg|32px]] [[BIM_Shape2DView|Shape-based view]]:
* [[Image:BIM_Shape2DView.svg|32px]] [[BIM_Shape2DView|Shape-based view]]: Creates a 2D projected view from a selected object such as a [[Arch SectionPlane|Section plane]] or a [[Arch_BuildingPart|Level]].


=== Snapping === <!--T:129-->
=== Snapping === <!--T:129-->
Line 380: Line 399:


<!--T:155-->
<!--T:155-->
* [[File:Draft_CircularArray.svg|32px]] [[Draft_CircularArray|Circular array]]: Creates an array from a selected object by placing copies along concentric circumferences. It can optionally create a [[App_Link|Link]] array.
* [[File:Draft_PolarArray.svg|32px]] [[Draft_PolarArray|Polar array]]: Creates an array from a selected object by placing copies along a circumference. It can optionally create a [[App_Link|Link]] array.


<!--T:156-->
<!--T:156-->
Line 489: Line 508:


<!--T:192-->
<!--T:192-->
* [[Image:Arch_ToggleIfcBrepFlag.svg|32px]] [[Arch_ToggleIfcBrepFlag|Toggle IFC Brep flag]]: Forces a selected object to be exported as an [http://www.buildingsmart-tech.org/ifc/IFC4/final/html/schema/ifcgeometricmodelresource/lexical/ifcfacetedbrep.htm IfcFacetedBrep].
* [[Image:Arch_ToggleIfcBrepFlag.svg|32px]] [[Arch_ToggleIfcBrepFlag|Toggle IFC Brep flag]]: Forces a selected object to be exported as an [[https://standards.buildingsmart.org/IFC/DEV/IFC4_2/FINAL/HTML/schema/ifcgeometricmodelresource/lexical/ifcfacetedbrep.htm IfcFacetedBrep].


<!--T:193-->
<!--T:193-->
Line 589: Line 608:
=== Status bar === <!--T:225-->
=== Status bar === <!--T:225-->


The status bar contains a few buttons that allow to easily change different states:
<!--T:226-->

* [[BIM ToggleOutput|Toggle output windows]]: Shows or hides output windows (Report view and Python console)
* [[BIM ToggleViews|Toggle BIM views manager]]: Shows or hides the [[BIM Views]] panel
* [[BIM ToggleBackground|Toggle background]]: Cycles between vertical gradient, radial gradient and simple color background modes. This is mostly useful to toggle between a dark background used for modelling and a white background used for 2D drawing
* [[BIM ToggleNativeIFC|IFC Lock]]: Switches between locked and unlocked IFC mode

=== Draft toolbar ===

TBD
TBD


Line 643: Line 670:
* [https://www.youtube.com/playlist?list=PLDd21g-eSHwnAYyutuKhrPY51skaBhrVU "Quinta Monroy" video series by Regis]
* [https://www.youtube.com/playlist?list=PLDd21g-eSHwnAYyutuKhrPY51skaBhrVU "Quinta Monroy" video series by Regis]


== Example files ==

* FreeCAD features a BIM example file on the Start page
* More example BIM files are available online. From within FreeCAD, use menu Help -> BIM examples.


<!--T:241-->
<!--T:241-->

Latest revision as of 13:19, 25 June 2024

In v1.0 the BIM, Native-IFC and Arch Workbenches have been merged into the integrated BIM Workbench.
This page has been updated for that version.
BIM Workbench icon

Introduction

The BIM Workbench provides a modern Building Information Modelling workflow in FreeCAD, with fully parametric objects such as walls, beams, roofs, windows, stairs, pipes, and furniture. It supports Industry Foundation Classes (IFC) files, and the production of 2D plans in combination with the TechDraw Workbench.

The BIM Workbench imports tools from the Draft Workbench, as it uses its 2D objects to build 3D parametric objects. But it can also use solid shapes created with other workbenches like Part and PartDesign.

See FreeCAD BIM migration guide for a quick overview if you are already a user of another BIM application.

The developers of Draft and BIM also collaborate with the greater OSArch community, with the ultimate goal of improving building design by using entirely free software.

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.

General concepts

The BIM workbench allows to create complete BIM projects from scratch, including modelling, managing IFC data, creating construction drawings and creating quantity schedules. The BIM workbench offers two modes: unlocked, where you can freely create your model with any FreeCAD tool, BIM or not, and locked, also called NativeIFC, where your FreeCAD model is linked to an IFC file, and everything you modify is reflected in the linked IFC file. In locked mode, it is therefore no longer needed to save a FreeCAD file, as the linked IFC file contains all the model data.

In locked mode, all the objects you create are immediately converted to IFC, and might therefore loose some of their original properties and some of their parametric behaviour when these are not supported by the IFC format. This mode is more restrictive, which is a disadvantage at some points in project development, but become an advantage when data integrity and reliability become essential.

It is generally recommend to start a project using unlocked mode, export your model to IFC as often as needed, and switch to locked mode if or when the IFC file becomes a common data source between different actors of the project, and each change needs to be carefully tracked. Project developers who work alone or keep full control over their project authoring usually have little or no need for IFC.

Building elements such as walls or columns are easily created by pressing the appropriate toolbar button and clicking points in the 3D view. They can be moved and edited after being created. Most BIM elements are created in the current working plane, so a typical workflow usually involves placing the working plane first, then creating a BIM element. More complex elements can be created by drawing 2D elements first, then using one of the BIM tools to convert them into the desired element.

Elements of building projects can be organized using sites, buildings and levels, to reproduce what is commonly done in other BIM applications. In FreeCAD, however, such structures are not mandatory, and you are free to organize your model elements as you see fit, for example using Groups.

2D drawings can be generated from a model to represent plan, section or elevation views. To generate such a drawing,section planes are placed in the model, to indicate where it should be cut or viewed from. Once the section planes are in place, two methods are possible:

  1. Create projected views in the document using shape views, then add all the necessary annotations such as texts and dimensions, then put all this on a page. This is the recommended way, as it offers more flexibility
  2. Create a view on a page directly from the section plane. Then all the needed 2D annotations must either be added to the section plane, or done directly on the page. This is less flexible

Finally, quantities schedules can be created using the schedule tool.

Tools

The BIM workbench gathers tools from several other FreeCAD workbenches, mainly Draft and Part, roughly reorganized in logical categories.

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 edit mode. Sketches are advanced 2D objects with constraints support.
  • Line: Creates a straight line.
  • Polyline: Creates a polyline (also called wire), a sequence of several connected line segments.
  • Circle: Creates a circle from a center and a radius.
  • Arc: Creates a circular arc from a center, a radius, a start angle and an aperture angle.
  • Arc by 3 points: Creates a circular arc from three points that define its circumference.
  • Fillet: Creates a fillet, a rounded corner, or a chamfer, a straight edge, between two Draft Lines.
  • Ellipse: Creates an ellipse from two points defining a rectangle in which the ellipse will fit.
  • Polygon: Creates a regular polygon from a center and a radius.
  • Rectangle: Creates a rectangle from two points.
  • B-spline: Creates a B-spline curve from several points.
  • Point: Creates a simple point.

3D/BIM

3D and BIM objects are the real-world elements that will compose your BIM project.

  • Project: Creates an IFC project including selected objects.
  • Site: Creates a site including selected objects.
  • Building: Creates a building including selected objects.
  • Level: Creates a floor including selected objects.
  • Space: Creates a space object.
  • 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.
  • Door: Creates a Window object using door presets.
  • Window: Creates a window from scratch or using a selected object as a base.
  • Pipe: Creates a pipe.
  • Connector: Creates a corner or T-connection between 2 or 3 selected pipes.
  • Stairs: Creates a stairs object.
  • Roof: Creates a sloped roof from a selected wire.
  • Panel: Creates a panel object from a selected 2D object.
  • Frame: Creates a frame object from a selected layout.
  • Fence: Creates a fence object from a selected post and path.
  • Truss: Creates a truss from a selected line or from scratch.
  • Equipment: Creates an equipment or furniture object.
  • Reinforcement tools:
These tools, except the first, are only available if the Reinforcement Workbench has been installed.
  • Custom Rebar: Creates a custom reinforcement bar in a selected structural element using a sketch.
  • Straight Rebar: Creates a straight reinforcement bar in a selected structural element.
  • U-Shape Rebar: Creates a U-shape reinforcement bar in a selected structural element.
  • L-Shape Rebar: Creates an L-shape reinforcement bar in a selected structural element.
  • Stirrup: Creates a stirrup reinforcement bar in a selected structural element.
  • Bent-Shape Rebar: Creates a bent-shape reinforcement bar in a selected structural element.
  • Helical Rebar: Creates a helical reinforcement bar in a selected structural element.
  • Generic 3D tools:
These tools build generic 3D objects that can be turned or used into BIM components.
  • Profile: Creates a parametric 2D profile.
  • Box: Creates a box by specifying its dimensions graphically.
  • Shape builder...: Creates more complex shapes from various geometric primitives.
  • Facebinder: creates a surface object from selected faces.
  • Component: Creates a non-parametric Arch component.

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: Creates a 2D text in a document or on a TechDraw page
  • Aligned dimension: Creates a dimension aligned with two points points or a selected edge.
  • Vertical dimension: Creates a vertical dimension between two points or from a selected edge.
  • Leader: Creates a 2-segment polyline with an arrow at its end, to be used as a leader line in conjunction with a Text.
  • Label: Creates a multi-line text with a 2-segment leader line and an arrow.
  • Axis: Adds a 1-direction array of axes.
  • Axis System: Adds an axis system composed of several axes.
  • Grid: Adds a grid-like object.
  • Hatch: Creates hatches on the planar faces of a selected object.
  • View: Creates a view of the selected object(s) such as a Section plane or a Group containing the different elements of a 2D view.

Snapping

This menu contains the Draft Snap tools as well as the following tools:

Modify

  • Move: Moves or copies selected objects from one point to another.
  • Copy: Copies selected objects from one point to another.
  • Rotate: Rotates or copies selected objects around a center point by a given angle.
  • Clone: Clones selected objects.
  • Offset: Offsets each segment of a selected object over a given distance, or creates an offset copy of the selected object.
  • 2D Offset...: Constructs a parallel wire at a given distance from the original, or enlarges/shrinks a planar face (parametric version). This is the same tool as Part Offset2D.
  • Trimex: Trims or extends a selected object.
  • Scale: Scales or copies selected objects around a base point.
  • Stretch: Stretches objects by moving selected points.
  • Upgrade: Upgrades selected objects.
  • Array: Creates an orthogonal array from a selected object. It can optionally create a Link array.
  • Path array: Creates an array from a selected object by placing copies along a path.
  • Polar array: Creates an array from a selected object by placing copies along a circumference. It can optionally create a Link array.
  • Point array: Creates an array from a selected object by placing copies at the points from a point compound.
  • Mirror: Creates mirrored copies from selected objects.

Manage

  • BIM Setup...: Configures some of the FreeCAD preferences most commonly used for BIM.
  • Views manager: Manage the different views and levels of your project.
  • Schedule: Creates different types of schedules.
  • Annotation styles...: Allows you to define styles that affect the visual properties of annotation-like objects.

Utils

  • Split Mesh: Splits a selected mesh into separate components.
  • Mesh to Shape: Converts a mesh into a shape, unifying coplanar faces.
  • Close holes: Closes holes in a selected shape-based object.
  • Check: Check if the selected objects are solids and don't contain defects.
  • Survey: Enters or leaves surveying mode.
  • Panel tools:
  • Panel: Creates a panel object from a selected 2D object.
  • Panel Cut: Creates a 2D cut view from a panel.
  • Panel Sheet: Creates a 2D cut sheet including panel cuts or other 2D objects.
  • Nest: Allows to nest several flat objects inside a container shape.
  • Structure tools:
  • Structure: Creates a structural element from scratch or using a selected object as a base.
  • Nudge:

Status bar

The status bar contains a few buttons that allow to easily change different states:

  • Toggle output windows: Shows or hides output windows (Report view and Python console)
  • Toggle BIM views manager: Shows or hides the BIM Views panel
  • Toggle background: Cycles between vertical gradient, radial gradient and simple color background modes. This is mostly useful to toggle between a dark background used for modelling and a white background used for 2D drawing
  • IFC Lock: Switches between locked and unlocked IFC mode

Draft toolbar

TBD

Tree view context menu

TBD

3D view context menu

TBD

Obsolete tools

  • Arch 3Views: Creates top, front and side views from a mesh. Not available in version 1.0 and above.
  • Arch Project: Creates a project including selected objects. Not available in version 1.0 and above. Use BIM Project instead.

Preferences

  • Preferences: General preferences for the BIM Workbench.
  • Fine tuning: Extra parameters to fine-tune BIM behavior.

File formats

  • IFC: industry foundation classes
  • DAE: Collada mesh format
  • OBJ: OBJ mesh format (export only)
  • JSON: JavaScript Object Notation format (export only)
  • 3DS: 3DS format (import only)
  • SHP: GIS Shapefiles (import only)

API

The Arch module can be used in Python scripts and macros using the Arch Python API functions.

Tutorials and learning

Example files

  • FreeCAD features a BIM example file on the Start page
  • More example BIM files are available online. From within FreeCAD, use menu Help -> BIM examples.