Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Advanced Python: IFC + computational geometry
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Thomas Krijnen
December 06, 2022
Education
470
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Advanced Python: IFC + computational geometry
Thomas Krijnen
December 06, 2022
More Decks by Thomas Krijnen
See All by Thomas Krijnen
IFC5 Refresher - Budapest
aothms
0
86
BIM, IFC & IfcOpenShell
aothms
0
180
IfcVoxNet 3D segmentation and classification of voxelized IFC building models with Deep Learning
aothms
0
110
IFC5 Technical prototypes
aothms
0
120
IfcOpenShell @ FOSDEM 2024
aothms
0
160
Computational Design Day 2024
aothms
0
77
IFC5: Adequate complexity maximum reliability
aothms
0
350
Thermal analysis of IFC building models using voxelized geometries
aothms
0
160
Validation and Inference of Geometrical Relationships in IFC
aothms
1
260
Other Decks in Education
See All in Education
Estimating Group × Time Interaction in Scale-Transformed CEFR-J Self-Assessment Scores: A Case in Study-Abroad Research
uranoken
0
130
Data Management and Analytics Specialisation
signer
PRO
0
1.9k
Lectura 2 (PIT : Python Basico)
robintux
0
370
Case Studies and Future Research - Lecture 12 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
200
解決策を教えても次期リーダーは育たない ─ 器の発達に伴走するために / Partnering with leaders in their vertical development
matsu0228
1
510
モブ社員がモブエンジニアを名乗って得られたこと_20260413
masakiokuda
4
540
プログラミング言語において文字列を複数行にわたって だらだらと記載するアレ
sapi_kawahara
0
180
2026年度春学期 統計学 第8回(オンデマンド配信回) 演習(1)・問題に対する答案の書き方 (2026. 5. 21)
akiraasano
PRO
0
110
【セーフィー】テクニカルライティング&コミュニケーション実践講座(26新卒エンジニア向け研修資料)
ymzaki_m4
0
250
Πλουτοκρατία: Η Τυραννία του Μαμμωνά και η Μεταανθρώπινη Δουλεία
amethyst1
0
270
Visionary Initiative: Materials-Positive Society 「モノの進化をポジティブな社会の原動力に」|Science Tokyo(東京科学大学)
sciencetokyo
PRO
0
610
[2026前期火5] 論理学(京都大学文学部 前期 第2回)「論理的な正しさはどこにあるのか」
yatabe
0
1k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Context Engineering - Making Every Token Count
addyosmani
9
1k
How to build a perfect <img>
jonoalderson
1
5.8k
From π to Pie charts
rasagy
0
230
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Practical Orchestrator
shlominoach
191
11k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
310
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Building an army of robots
kneath
306
46k
Building AI with AI
inesmontani
PRO
1
1.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
Advanced python IFC + computational geometry
Guest lecturer • Thomas Krijnen • past: Post-doctoral researcher @
TU Delft, NL • past: PhD @ TU Eindhoven, NL • Founder AECgeeks • Maintainer IfcOpenShell.org • ✉
[email protected]
• 🐤 @aothms
Why python - Batteries included: - web: flask, django, e.g
view.ifcopenshell.org - machine learning: pytorch, tensorflow, keras, scikit, … - geometry: pythonOCC, shapely, … - graphs: networkx, rdflib, … - Readable syntax, reasonable semantics wrt typing, expressive types (e.g sets, containment operators, …) - Interpreted (no lengthy compilation times) and high performance possible (e.g numpy, numba, pypy, …)
Work (1) - geometric analysis for code compliance checking https://github.com/opensourceBIM/voxelization_toolkit
Work (2) - model validation https://github.com/buildingSMART/validate
Setup https://docs.conda.io/en/latest/miniconda.html conda create -n course2022 conda activate course2022 conda
install -c conda-forge pythonocc-core ifcopenshell jupyter
Anatomy of a simple Python script
Data extraction using IfcOpenShell Python
Entities and attributes
Inverse attributes
Comparison with a SPARQL query <http://standards.buildingsmart.org/IFC/DEV/IFC2x3/TC1/OWL#IfcWallStandardCase > basic graph pattern
aggregate function / makes this a property path, a sequence of two predicates in this used because in IfcOWL the specific type of the property nominal is emitted. IfcAreaMeasure in this case.
Example with geometry
The complexity of IFC
Continue on http://web.archive.org/web/20200711032105/http://www. pythonocc.org/quick-examples/machine-learning-and- building-models/ https://academy.ifcopenshell.org/posts/using-ifcopenshell- and-pythonocc-to-construct-new-geometry/ https://github.com/AECgeeks/tue-python-workshop-2022