Quick virtual environment setups

First of all, install Python and Visual Studio Code

A folder as environment

mkdir demos
cd demos
code .

Python and IfcOpenShell

// F# code
let a = 20
pip install ifcopenshell
# Python code
import pandas as pd
import ifcopenshell
pth = r""
ifc = ifcopenshell.open(pth)
print("Hello everyone!")

Setup Visual Studio Code

Setup Python Virtual Environment

Install Packages

Workflow Example


Pset in model not fitting requirement from the platform

Goal: Linking element to create cashflow Process: See the needs of positions, edit geometry accordingly, gather properties and correct quantities Contract posisitions, Schedule positions Deal with: Geometry, properties, quantities Pset, Qset Assembly, Curtain walls, Stairs

Where are the elements with changed identities

Goal: Find if there are elements with different ifc identity Process: Find and mark the global ids not existing in both models Contract positions Deal with: Properties, geometry Changed element identities from two models Setup a customized property set

How to compare the changing element properties from three models

Goal: Listing the property difference for the same global id Process: Ask wanted information and list in Excel sheets Deal with: Properties Three different model versions Reading properties, writing to Excel

What we have learned?

Quick setup Python virtual environment Quick understanding Ifc model structure - dig in relations (property set, assembly) - Python, Jupyter, Pandas Property set manipulation - IfcOpenShell Retrieving Base Quantities - SimpleBim, IfcOpenShell Spatial containment modification - IfcOpenShell API Model geometry comparison - overlapping geometry, different global id - IfcOpenShell, Solibri Multiple model historical comparison - same global id, different properties - IfcOpenShell, Excel