BIM Material

BIM Material

Menu location
Manage → Material
Workbenches
BIM
Default shortcut
None
Introduced in version
-
See also
None

Description

Shows the BIM Material dialog. The dialog allows to quickly and easily perform material-related operations, with extra focus on efficient working with many objects and many materials.

  1. Create new material or multimaterial.
  2. Attribute an existing material or multimaterial to selected object(s).

The BIM Material Manager

Usage

  1. (Optionally) select one or more objects
  2. Press the Material button in the toolbar.

When BIM objects with a shape are attributed a material, their DataMaterial (Link) property is assigned that material (such BIM objects are generally based on Arch Component and inherit its properties).

Material Manager tools

The materials Manager allows you to:

The New Material task panel.
The New Multimaterial task panel.

New material

TBD

Material properties

An Arch Material object will have the following properties

Data

Material

New multi-material

TBD

The relationship between the BIM and Core material systems

Since version 1.0, FreeCAD contains two distinct and parallel systems for managing materials: a legacy, Python-based system primarily used by the BIM workbench, and a modern, C++ based system intended for global use in any workbench.

The Core (C++) material system

The BIM (Python) material system

The point of interaction: a one-way import

The two systems do not have a deep or persistent integration. Their interaction is limited to a one-way data import initiated from the BIM system.

  1. It reads the data from the selected .FCMat file.
  2. It uses this data to populate the fields for a new, native App::MaterialObjectPython.
  3. This new object is then created within the active document.

Once this import process is complete, there is no further link between the newly created Arch/BIM material and the original .FCMat file. It is a one-time copy of the data at that specific moment. Subsequent changes to the source material in the core library will have no effect on the Arch/BIM materials that were created from it.

Physical vs. appearance Properties

The FreeCAD material systems are designed with a distinction between a material's physical characteristics and its visual appearance. However, these properties differ significantly between the core Material system and the legacy BIM system.

The Core material system

The core, C++-based system provides an extensible framework for defining a wide range of material properties. It is organized into "Models," which are schemas that group related properties.

The BIM material system

This legacy, Python-based system has a fixed and more limited set of properties, focusing primarily on visual representation and basic metadata for BIM workflows.

This distinction is critical: the core system is necessary for any engineering analysis (like FEM), while the BIM system is tailored for architectural visualization and IFC compatibility.

Coexistence and interoperability of material systems

While the long-term goal is full migration of the BIM workbench to the core Materials system, a transition period requires understanding how they can coexist on a single object.

Can both systems be assigned to one object?

It is technically possible to assign a material from both systems to the same object (e.g., an Arch Wall). The two systems use different, non-conflicting properties to store their data:

An object can have both of these properties simultaneously.

The "dual-assignment" workflow for maximum compatibility

For users who require both advanced engineering analysis and correct BIM data exchange (specifically IFC export), a "dual-assignment" workflow is currently the only viable approach.

Why it is necessary: The tools for different domains are coded to look for different properties.

Recommended Workflow: Users who require physical and appearance material properties, and to ensure an object is fully functional across both domains, can perform the following two steps:

  1. Assign the Core Material: Select the object and use the context menu (Right-click -> Material...) to assign the desired material. This makes the object's physical data available for analysis.
  2. Assign the BIM Material: With the same object selected, use the BIM Workbench's Material tool (BIM_Material command) to assign a corresponding BIM material. This ensures the object will be exported to IFC with the correct material information.

Caveats and Risks: This workaround introduces a significant risk of data desynchronization. The two material assignments are completely independent. If you update the name or color of the BIM material, it will not affect the Core material, and vice-versa. Users must manually ensure that the two assigned materials are kept consistent to avoid conflicting information between their internal analyses and their external BIM deliverables. The BIM system's MultiMaterial object, which has no equivalent in the Core system, must still be used and managed exclusively with BIM materials.