am 2026-04-21 02:23 PM
Wir hatten das Thema schon öfter, aber ich finde keine passende Lösung in den bisherigen Unterhaltungen dazu.
Meine Aufgabe:
Ich habe Fertigbäder die bis in den Wulst von Gummilagern durchdetailliert sind. >40t Polygone pro Rohrschelle.
Der Modelllieferant kann das nicht reduzieren. Ist abgeklärt.
Die Modelle kommen als STEP Dateien (ca. 30MB-40MB / Bad)
Lösungsweg 1:
Import STEP in FreeCAD
Export als OBJ (ca. 250Mb-670Mb / Bad)
Weiterverarbeitung in Desite resp. in Archicad
Lösungsweg 2:
Import STEP in FreeCAD
Export als IFC (ca. 30Mb-80Mb / Bad)
Weiterverarbeitung in Desite resp. in Archicad
Lösungsweg 1 geht so natürlich nicht. Lösungsweg 2 liefert sehr grobe Auflösungen der gekrümmten Flächen. Das geht so auch nicht.
Die Polygonexplosion passiert in FreeCAD beim Export. Ebenso die Reduktion bei Weg 2. Die in FreeCAD derzeit möglichen Einstellungen auf Detailierung und Exportart (Extrusion/BREP) wirken sich nicht auf IFC oder OBJ aus.
Kennt jemand noch einen anderen Weg? Mir stehen Allplan, Archicad, Desite und m.E. Revit zur Verfügung. (Blender habe ich auch eingerichtet, aber ehrlicherweise hat sich da seit ich das das letzte Mal benutzt habe so viel verändert, dass ich da so schnell keinen Weg gefunden habe).
2026-04-22 10:23 AM - bearbeitet 2026-04-22 10:26 AM
Zitat:
Dies könnte damit zu tun haben, daß der Maßstab des Teiles so groß ist, daß Blender nur Teile darstellt, aber das kann man ganz einfach umstellen - also die Sichtweite, die Blender zulässt. Drücke n - und die Auswahl rechts oben erscheint - und unter View:
Hatte mit sowas Probleme, als ich mir mit dem blosm-Adoon Teile aus den 3D-Daten von Google-Earth hereingeholt hatte und "Salzburg" schon 430m über dem Z=0-Punkt "schwebte". Einfach 10000 eingeben oder mehr.
am 2026-04-22 11:24 AM
Ugh.. da hatte ich Brain Freeze und hab überlesen, dass du das Ding als STEP bekommst.
Rhino kann STEP sehr gut verarbeiten, Archicad kann STEP leider nur auf Windows, für Mac gibts das Plugin nicht (für dich jetzt wohl eher weniger ein Problem). In Rhino sollten mit STEP die Schrauben dann auch einzeln ankommen.
am 2026-04-22 04:50 PM
Zwischenstand:
Lösungsweg 1:
Import der Step-dateien in Mayo und Export als OBJ. OBJ in Desite importiert (mehrfach) und verortet. Ausfiltern der Schellen durch Elementnamen im Desite möglich, in Mayo sehr umständlich. Getestet mit Einstellung (Mayo) BREP:"Normal". Überwiegend OK, aber beim OBJ-Import in Desite gibt es Geometriefehler (die andere OBJ-Viewer nicht haben), was zu relevanten Verlusten führt. Gesamt IFC-Datei für 19 Bäder 260Mb. Das ist problemlos zu verarbeiten.
Die Einstellung "Präzise" in Mayo erzeugt ca. doppelte Datenmenge, dafür aber keine offensichtlichen Geometriefehler mehr. Kompletttest steht aus.
Lösungsweg 2:
STEP Import in Archicad. Platzierung und Verortung als importierte Objekte. (Dass ich den Weg erst jetzt testet liegt daran, dass ich in Erinnerung hatte, dass AC STEP nur Exportieren, nicht Importieren kann 🙄).
Vorteil: Ich muss nicht für jede Instanz eine Datei erzeugen. Verorten geht geometrisch, nicht numerisch wie in Desite.
Nachteil: Keine Filterung der übergenauen Geometrien. Keine differenzierten Elemente mehr ("ein Bad"). Für die Platzierung muss man das GSM modifizieren.
Genauer Test steht aus. V.a. die präzise Verortung des dann notwendigen IFC-Importes wird spannend.
am 2026-04-22 05:11 PM
Die STEP-Semantik ist doch die gleiche wie im IFC, oder? Wenn das entsprechend eine Textdatei ist, dann könntest Du versuchen die Datei z.B. mit Claude.AI nach den Schrauben zu durchsuchen und aus der STEP-Datei löschen zu lassen.
Ich komm' da drauf, weil ich eben mal eine GAEB zu Claude geladen hatte, mit der Bitte die Positionen (Tür-LV) inhaltlich und strukturell anzupassen (weil das Ding Kraut und Rüben ist). Das hat Claude auch brav gemacht und mir wieder eine XML-GAEB ausgegeben. Eben mal Stunden an Arbeit gespart.
am 2026-04-23 08:31 AM
Ja, das ist eine gute Idee. Wenn ich Weg 2 gehe, werde ich das versuchen. Netterweise enthalten alle kritische Elemente im Namen "Schelle".
Ich vermute, dass in Zukunft sogar ein direkter Wandel von STEP zu IFC per KI machbar ist, da eigentlich ja nur die Struktur geändert werden müsste. Ich glaube in ein auf API/Format-Schnittstellen trainiertes LLM brächte uns immens voran.
2026-04-23 03:01 PM - bearbeitet 2026-04-23 03:22 PM
Brauchst Du nicht. Probiere mal Claude aus. Claude konnte auch keine XML-GAEB zunächste schreiben (Angabe von Claude: ihm fehlt die entsprechende skill.md). Aber das Ding hat dann selbständig ein Python zum Export geschrieben.
Ich würde das einfach mal probieren.
Ergänzung: ich hab das eben mal nach Claude.AI geschoben. Claude kann das nicht von sich aus, hat aber ein Python geschrieben, mit dem das gegen soll.
Hier der Dialog mit Claude
Verstehst Du IFC und STEP?
Ja, beide Formate kenne ich gut — und sie hängen auch direkt zusammen.
IFC (Industry Foundation Classes) ist der offene Standard für den Datenaustausch im Bauwesen (BIM). Er beschreibt Gebäudeobjekte wie Wände, Stützen, Räume, Anlagen usw. mit Geometrie, Eigenschaften und Beziehungen untereinander. Herausgeber ist buildingSMART International. Die verbreitetsten Versionen sind IFC2x3 und IFC4 (bzw. IFC4.3 für Infrastruktur).
STEP (Standard for the Exchange of Product model data, ISO 10303) ist der übergeordnete ISO-Standard für Produktdatenmodelle — ursprünglich aus dem Maschinenbau und der Luft- und Raumfahrt. IFC basiert auf STEP: Die physische Dateiform .ifc ist das sogenannte STEP Physical File Format (SPF), auch „Part 21" genannt. Wer eine IFC-Datei im Texteditor öffnet, sieht die typische STEP-Syntax mit #1 = IFCPROJECT(...) usw.
Konkret bedeutet das:
.ifc-Datei) und als Modellierungssprache (EXPRESS, ISO 10303-11) für die Schemadefinition..ifcXML, STEP Part 28) und als ZIP-komprimierte Variante (.ifcZIP).Was möchtest du damit machen? Analyse, Verarbeitung, Dateikonvertierung, oder geht es um etwas Spezifisches aus deiner Arbeit?
Kannst Du IFC in STEP konvertieren und umgegkehrt?
Kurze Antwort: Nicht wirklich nötig — und technisch etwas differenzierter.
IFC ist bereits STEP
Eine .ifc-Datei ist eine STEP-Datei (Part 21 / SPF). Sie hat denselben Aufbau:
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(...);
...
ENDSEC;
DATA;
#1 = IFCPROJECT(...);
#2 = IFCSITE(...);
...
ENDSEC;
END-ISO-10303-21;
Es gibt also keine Konvertierung „IFC → STEP" im eigentlichen Sinne — du hast STEP bereits in der Hand.
Was es tatsächlich gibt
| Richtung | Was passiert | Machbar? |
|---|---|---|
.ifc → .ifcXML |
Serialisierung wechseln, Schema bleibt | ✅ Ja, verlustfrei |
.ifc → .ifcZIP |
Komprimierung | ✅ Ja, trivial |
.ifc → STEP für Maschinenbau (AP203/AP214/AP242) |
Anderes STEP-Schema | ⚠️ Sehr verlustbehaftet, kaum praxisrelevant |
| STEP (AP203 etc.) → IFC | Geometrie übertragbar, Semantik geht verloren | ⚠️ Begrenzt |
Was ich direkt tun kann
.ifc-Dateien lesen und analysieren (Entitäten, Eigenschaften, Struktur)ifcopenshell).ifc und .ifcXML konvertieren (per Skript)Hast du eine konkrete Aufgabe — z.B. aus einem Bestandsmodell bestimmte Daten ziehen, oder geht es um den Workflow mit deinem neuen Arbeitgeber?
Ich habe eine STEP-Datei und muss sie nach IFC konvertieren
Das ist eine andere Ausgangslage — hier geht es dann wirklich um eine echte Konvertierung. Ein paar wichtige Fragen vorab:
F: Welches STEP-Schema hat die Datei? A: AP203 (Geometrie/CAD)
F: Was ist der Inhalt der Datei? A: Gemischt / Unbekannt
F: Was ist das Ziel der IFC-Datei? A: BIM-Modell in Revit / Archicad etc. laden
Gut, das hilft. Hier ist die ehrliche Einschätzung:
Das Grundproblem
AP203 enthält nur Geometrie (B-Rep, NURBS, Solids) — keine Semantik. Es gibt keine Information darüber, ob ein Objekt eine Wand, Stütze oder Decke ist. IFC braucht aber genau diese Semantik. Die Konvertierung ist deshalb zwangsläufig verlustbehaftet: du bekommst in Revit/Archicad geometrische Körper, keine intelligenten BIM-Objekte.
Praktische Wege
Option 1 — Über CAD-Software (empfohlen)
Die sauberste Route für Revit/Archicad:
STEP (AP203) → CAD-Kernel → IFC
Konkrete Tools:
Option 2 — IfcOpenShell (Python, skriptbasiert)
IfcOpenShell kann STEP-Geometrie lesen und IFC-Hüllen erzeugen — aber ohne automatische Klassifizierung. Ergebnis sind IfcBuildingElementProxy-Objekte mit Geometrie.
Option 3 — Online-Konverter
Realistisches Ergebnis in Revit/Archicad
Du wirst generische Körper erhalten, keine Revit-Familien oder Archicad-Elemente. Für ein echtes BIM-Modell müsstest du danach manuell klassifizieren — oder zumindest die Geometrie als Referenzmodell nutzen.
Mein Vorschlag
Wenn du die Datei hochlädst, kann ich sie analysieren und dir sagen, was drin steckt — und dann den sinnvollsten Weg empfehlen. Alternativ kann ich ein Python-Skript mit IfcOpenShell vorbereiten, das die Konvertierung automatisiert.
Wie möchtest du vorgehen?
Es genügt wenn BREP ausgegebenb werden
Perfekt — dann ist das gut lösbar. B-Rep aus AP203 → IFC als IfcBuildingElementProxy mit IfcFacetedBrep oder IfcClosedShell ist ein sauberer, verlustfreier Weg für die Geometrie.
Ich bereite das Skript vor:
OCC ist in dieser Umgebung nicht verfügbar — das ist die Library, die STEP-Geometrie wirklich robust lesen kann. Ich schreibe dir trotzdem ein vollständiges, praxistaugliches Skript, das du lokal ausführen kannst:
Installation & Aufruf:
pip install ifcopenshell pythonocc-core
python step_to_ifc.py eingabe.stp ausgabe.ifc
Was das Skript macht:
BRepMesh_IncrementalMesh (einstellbare Deflection, Standard 1 cm)IfcBuildingElementProxy mit IfcFacetedBrep-GeometrieHinweise:
tessellate_shape(shape, deflection=0.01) anpassen — kleiner = feinere Dreiecke, größere Dateipythonocc-core ist der kritische Teil — auf Windows am einfachsten per conda install -c conda-forge pythonocc-coreWenn du die STEP-Datei hochlädst, kann ich sie hier direkt verarbeiten und dir die fertige IFC ausgeben.
am 2026-04-23 04:26 PM
Das habe ich so mit Copilot auch ausdiskutiert, macht aber am Ende nichts anderes als das, was ich bisher händisch gemacht habe. Der Fallstrick ist die Tesselierung und die BReps. Da habe ich noch immer Verluste an den Übergängen STEP - Freecad/Mayo - Desite - Dalux. Immer irgendwo anders, schlecht identifizierbar und noch schlechter zu eliminieren. STEP basiert aber auf einer Geometriebeschreibung die 1:1 in IFC funktionieren sollte und beides ist auch noch textbasiert. Ich möchte, dass die KI einfach die STEP in IFC umwandelt. Alle Vorschläge laufen darauf raus die Geometrie in BRep zu wandeln. 😞
am 2026-04-23 07:19 PM
Habt Ihr auch schon mal gefragt, ob sie eine Python-Script dafür schreiben könnten? Wenns Regelbasiert ist, dann sollte das eigentlich gehen..
am 2026-04-23 08:55 PM
Das hatte ich mal benutzt:
https://cadexchanger.com/products/gui/
Hat extrem gut funktioniert. Gibt es auch als funktionsfähige Demo.
am 2026-04-24 09:09 PM
Dass die KI das vollautomatisch selbst löst, da sind wir glaub ich noch nicht angelangt. Bzw. was tatsächlich passiert, ist, dass im Hintergrund dann ohnehin Code erstellt wird, der temporär nur gespeichert wird, dann ausgeführt wird, und anschließend gelöscht wird. Halte ich ja für wenig nachhaltig 😉
Also habe ich mal die Denkmaschine angeschmissen; den erzeugten Python-Code habe ich hier.
Leider stimmt es nicht ganz, was du sagst, denn es gibt einige STEP Geometrie, die IFC nicht hat (IFC 4 hat zum Glück sehr viel hinzugefügt, sodass man schon mal bessere Chancen hat, als mit 2x3, aber z.B. für CONICAL_SURFACE gibt es meines Wissens immer noch keine Entsprechung). Das ist doof, wenn man Teile hat, die so beschrieben sind.
Aktuell kommt der Code ohne jegliche Evaluierung aus, es wird also direkt übersetzt und es findet keine Triangulierung statt.
Das funktioniert (solange wie gesagt nicht nicht-erzeugbare Geometrie in der STEP ist) auch ziemlich gut. Ich habe das schon mal mit etlichen Modellen probiert. Archicad erzeugt beim Dazuladen dieser IFC dann Ojekte aus NURBS. Dadurch lässt sich direkt im Objekt die gewünschte Tessellierung einstellen. Ziemlich cool!