IFC Extractor icon

IFC Extractor

Extract information from IFC files using web-ifc

Overview

This node extracts information from IFC (Industry Foundation Classes) files using the web-ifc library. It supports multiple operations including extracting all elements, extracting elements by specific IFC types, extracting elements with their properties, extracting properties for specific elements, and retrieving basic file information. It can process IFC data either from binary data passed from a previous node or directly from a file path. This node is useful in scenarios where detailed building information modeling (BIM) data needs to be programmatically accessed and analyzed, such as in construction project management, architecture, and engineering workflows.

Use Case Examples

  1. Extract all elements and their properties from an IFC file provided as binary data.
  2. Extract only walls, doors, and windows with their properties from an IFC file specified by file path.
  3. Retrieve basic metadata information about an IFC file.

Properties

Name Meaning
Filter Elements Comma-separated list of IFC types to include when extracting elements with properties. If left empty, all elements are included.
Input Data Source Specifies the source of the IFC file data, either from binary data of a previous node or directly from a file path.
Binary Property Name of the binary property that contains the IFC file data when using binary data as input.
File Path Path to the IFC file on the filesystem when using file path as input.

Output

JSON

  • operation - The operation performed (e.g., extractWithProperties).
  • elements - Extracted elements with their resolved properties (structure depends on extractor used).
  • error - Error message if the operation failed and continueOnFail is enabled.

Dependencies

  • web-ifc library for IFC file parsing
  • Node.js fs module for file system access

Troubleshooting

  • Ensure the IFC file path is correct and accessible when using file path input source.
  • Verify that the binary property name matches the property containing IFC data when using binary data input source.
  • Initialization of the web-ifc API may fail; the node attempts multiple initialization methods and throws an error if all fail.
  • If extraction fails, check that the specified IFC types or element IDs are valid and exist in the IFC file.

Links

Discussion