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 or construction data needs to be programmatically accessed and analyzed, such as in BIM (Building Information Modeling) workflows.

Use Case Examples

  1. Extract all elements and their properties from an IFC file to analyze building components.
  2. Extract specific IFC types like walls or doors to focus on particular building elements.
  3. Extract properties for a list of element IDs to gather detailed attribute data for those elements.
  4. Get basic information about an IFC file to understand its contents before further processing.

Properties

Name Meaning
Element IDs Comma-separated list of element IDs to extract properties for, used when extracting properties for specific elements.
Input Data Source Specifies the source of the IFC data, either from binary data of a previous node or a direct file path.
Binary Property Name of the binary property containing the IFC file data, required when using binary data as input.
File Path Path to the IFC file on the filesystem, required when using file path as input.

Output

JSON

  • operation - The operation performed (e.g., extractProperties).
  • ``
    • *
      * p - The extracted data specific to the operation, such as element properties or file info.

Dependencies

  • web-ifc library for IFC file parsing and extraction
  • 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 the binary property name matches the binary data property from the previous node when using binary data input source.
  • Initialization of the web-ifc API may fail; check error messages for details and ensure the environment supports WebAssembly.
  • If element IDs are provided, ensure they are valid integers and exist in the IFC file to avoid empty results or errors.

Links

Discussion