Nikolay Gerasimov

ArbeitErkennung mehrschichtiger Konstruktionen

Erkennung mehrschichtiger Konstruktionen in IFC-Modellen

Ein eigenständiges Proof-of-Concept-Tool zur Erkennung mehrschichtiger Konstruktionen in IFC-Modellen. Es implementiert umfangreiches Wissen aus der Computational Geometrie unter Verwendung von OpenCascade und berücksichtigt dabei die Einschränkungen des IFC-Formats sowie des Revit-Exports.

Auftraggeber

ATP

Abschluss

2024

Art

Geometrieverarbeitung

Farbcodierte mehrschichtige Wände aus benachbarten IFC-Elementen.

Überblick

Architekten und Tragwerksplaner modellieren Wände und Decken als eigenständige Elemente. Selbst ein Verbundmodell enthält keine zusammengefassten Informationen darüber, wie die endgültige Struktur einer Wand von einer Oberflächenschicht zur nächsten aussieht. Während dies für die Materialliste und die Baubarkeit kein Problem darstellt, erfordern technische Berechnungen – allen voran die thermische Analyse –, dass alle Schichten in einem einzigen Gesamtpaket zusammengefasst und Wände sowie Decken in Bereiche gleicher Bauweise unterteilt werden.

Das Tool nimmt eine oder mehrere IFC-Dateien entgegen, erkennt benachbarte Wände und Decken und fasst diese zu mehrschichtigen Bereichen gleicher Bauweise zusammen. Das Ergebnis ist ein neues IFC-Modell mit mehrschichtigen Wänden und Decken.

Zusätzlich erstellt das Tool einen Bericht mit einer Zusammenfassung der Bauweisen und ihrer Flächen.

Was ich tat

Ich entwickelte einen Algorithmus zur Verarbeitung von BREPs in OpenCascade: Berechnung ihrer „Berührungsfläche“, Aufteilung in „berührende“ und „nicht berührende“ Teile sowie Zusammenführung der „berührenden“ Teile zu einem einzigen BREP.

Die Herausforderung bestand darin, die Reihenfolge der Schichten in Normalenrichtung beizubehalten – dies erforderte eine spezielle Behandlung von Normalen und Flächen sowie eigene Attribute an den BREPs, um deren Konstruktionsreihenfolge zu speichern.

Schließlich habe ich den Algorithmus mithilfe der IfcOpenShell-Bibliothek an das IFC-Format angebunden. Das klingt nach einem einzigen Satz, war aber monatelange Arbeit.

Entscheidungen

Das Projekt war mit einer steilen Lernkurve verbunden, da es Unterschiede zwischen der rein mathematischen Geometrie und den tatsächlichen Einschränkungen von OpenCascade und IfcOpenShell gab.

Die Entscheidung für das IFC-Format wurde eigentlich getroffen, um das Tool universeller zu gestalten, doch es stellte sich heraus, dass IFC für Entwickler nach wie vor äußerst unfreundlich ist.

Alternative Lösungen für die Verarbeitung neutraler Geometrie auf Basis von Speckle wurden verworfen, da Speckle lediglich eine Mesh-Darstellung der Geometrie speichert und BREP nicht unterstützt.

Ergebnis

Ein Tool als eigenständige Kommandozeilenanwendung.

Es hat sich in den meisten gängigen Fällen von mehrschichtigen Konstruktionen in IFC-Modellen bewährt, einschließlich gebogener Flächen und geneigter Wände.

Die größte Einschränkung war das IFC-Format selbst und die Tatsache, dass Revit bei komplexen Fällen immer noch keine zu 100% korrekte Geometrie in IFC exportieren kann.

Dieses Projekt war der Auftakt für die Arbeit an einem direkten Exporter von Revit nach OpenCascade, wurde jedoch nicht fertiggestellt.