abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
DE
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
Frank Beister
Moderator

Polygonreduktion | STEP-Dateien | OBJ-Dateien

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)

FrankBeister_1-1776774011393.png

 

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

FrankBeister_0-1776771381139.png

 

 

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).

bim author since 1994 | bim manager since 2018 | author of selfGDL.de | openGDL | skewed archicad user hall of fame | author of bim-all-doors.gsm
22 ANTWORTEN 22
Hmooslechner
Moderator

Zitat: 

  • dass schon das Einzelelement zu groß ist - schon bei der Anzeige wird das Mesh stark beschnitten und mann kann gar nicht das komplette Bad darstellen

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:



Hmooslechner_0-1776846157099.png

 

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. 

 

AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
runxel
Moderator

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.

Lucas Becker | AC 29 on Mac (Sequoia) | Graphisoft Insider Panelist | Akroter.io – high-end GDL objects | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text

My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»
Frank Beister
Moderator

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.

bim author since 1994 | bim manager since 2018 | author of selfGDL.de | openGDL | skewed archicad user hall of fame | author of bim-all-doors.gsm
torben_wadlinger
Virtuoso

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.

 

Archicad seit v5.0 bis v29 | macOS und Windows | BIMCloud selbst gehostet | BIM-zertifiziert gemäß BAK und BIngK | BIM-Referent AK RLP
Frank Beister
Moderator

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.

bim author since 1994 | bim manager since 2018 | author of selfGDL.de | openGDL | skewed archicad user hall of fame | author of bim-all-doors.gsm
torben_wadlinger
Virtuoso

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

 
 
 
 
Claude hat die Antwort abgeschlossen

 

Verstehst Du IFC und STEP?

15:01
 
 
 
 
 

Claude hat geantwortet: Ja, beide Formate kenne ich gut — und sie hängen auch direkt zusammen.

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 nutzt STEP als Serialisierungsformat (die .ifc-Datei) und als Modellierungssprache (EXPRESS, ISO 10303-11) für die Schemadefinition.
  • Daneben gibt es IFC auch als XML (.ifcXML, STEP Part 28) und als ZIP-komprimierte Variante (.ifcZIP).
  • Neuere IFC-Versionen unterstützen auch das effizientere ifcJSON und ifcHDF5 (Part 26).

Was möchtest du damit machen? Analyse, Verarbeitung, Dateikonvertierung, oder geht es um etwas Spezifisches aus deiner Arbeit?

 
 
 
 
 

Du hast gesagt: Kannst Du IFC in STEP konvertieren und umgegkehrt?

Kannst Du IFC in STEP konvertieren und umgegkehrt?

15:02
 
 
 
 
 

Claude hat geantwortet: Kurze Antwort: Nicht wirklich nötig — und technisch etwas differenzierter.

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)
  • IFC-Daten parsen und umstrukturieren (Python mit ifcopenshell)
  • Zwischen .ifc und .ifcXML konvertieren (per Skript)
  • Geometrie aus IFC extrahieren und weiterverarbeiten

Hast du eine konkrete Aufgabe — z.B. aus einem Bestandsmodell bestimmte Daten ziehen, oder geht es um den Workflow mit deinem neuen Arbeitgeber?

 
 
 
 
 

Du hast gesagt: Ich habe eine STEP-Datei und muss sie nach IFC konvertieren

Ich habe eine STEP-Datei und muss sie nach IFC konvertieren

15:03
 
 
 
 
 

Claude hat geantwortet: Das ist eine andere Ausgangslage — hier geht es dann wirklich um eine echte Konvertierung.

Das ist eine andere Ausgangslage — hier geht es dann wirklich um eine echte Konvertierung. Ein paar wichtige Fragen vorab:

 
 
 
 
 

Du hast gesagt: F: Welches STEP-Schema hat die Datei?

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

15:13
 
 
 
 
 

Claude hat geantwortet: Gut, das hilft.

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:

  • FreeCAD (kostenlos): STEP importieren → als IFC exportieren via BlenderBIM-Addon oder nativer IFC-Export
  • Rhino + VisualARQ oder Rhino + IFC-Exporter: STEP öffnen, IFC ausgeben
  • Autodesk Inventor / Fusion 360: STEP öffnen, dann über Revit-Brücke
  • CADEX Converter / Datakit: kommerzielle Konverter, sehr zuverlässig

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

  • CAD Exchanger (cadexchanger.com): gut für AP203 → IFC
  • IFC.js / ifcconvert (IfcOpenShell CLI)

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?

 
 
 
 
 

Du hast gesagt: Es genügt wenn BREP ausgegebenb werden

Es genügt wenn BREP ausgegebenb werden

15:14
 
 
 
 
 

Claude hat geantwortet: Perfekt — dann ist das gut lösbar.

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:

3 Befehle ausgeführt
 
3 Befehle ausgeführt
 

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:

Datei erstellt, datei lesen
 
Datei erstellt, datei lesen
 

Installation & Aufruf:

 
 
bash
pip install ifcopenshell pythonocc-core
python step_to_ifc.py eingabe.stp ausgabe.ifc

Was das Skript macht:

  • Liest die STEP-Datei mit dem OCC-STEP-Reader (robust für AP203)
  • Tesselliert jeden Shape mit BRepMesh_IncrementalMesh (einstellbare Deflection, Standard 1 cm)
  • Erzeugt pro Shape ein IfcBuildingElementProxy mit IfcFacetedBrep-Geometrie
  • Schreibt ein vollständiges IFC2x3-Grundgerüst (Projekt → Site → Building → Storey)

Hinweise:

  • Den Deflection-Wert (0.01 m) kannst du in Zeile tessellate_shape(shape, deflection=0.01) anpassen — kleiner = feinere Dreiecke, größere Datei
  • Alle Shapes landen im Erdgeschoss; eine Storey-Zuordnung ist nachträglich in Revit/Archicad möglich
  • pythonocc-core ist der kritische Teil — auf Windows am einfachsten per conda install -c conda-forge pythonocc-core

Wenn du die STEP-Datei hochlädst, kann ich sie hier direkt verarbeiten und dir die fertige IFC ausgeben.

Archicad seit v5.0 bis v29 | macOS und Windows | BIMCloud selbst gehostet | BIM-zertifiziert gemäß BAK und BIngK | BIM-Referent AK RLP
Frank Beister
Moderator

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. 😞

bim author since 1994 | bim manager since 2018 | author of selfGDL.de | openGDL | skewed archicad user hall of fame | author of bim-all-doors.gsm
Hmooslechner
Moderator

Habt Ihr auch schon mal gefragt, ob sie eine Python-Script dafür schreiben könnten? Wenns Regelbasiert ist, dann sollte das eigentlich gehen..

AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
torben_wadlinger
Virtuoso

Das hatte ich mal benutzt:

https://cadexchanger.com/products/gui/

Hat extrem gut funktioniert. Gibt es auch als funktionsfähige Demo.

Archicad seit v5.0 bis v29 | macOS und Windows | BIMCloud selbst gehostet | BIM-zertifiziert gemäß BAK und BIngK | BIM-Referent AK RLP
runxel
Moderator

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!

Lucas Becker | AC 29 on Mac (Sequoia) | Graphisoft Insider Panelist | Akroter.io – high-end GDL objects | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text

My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»

Keine Antwort gefunden?

Andere Beiträge
im Board ansehen

Zurück zum Board

Neueste Lösungen durchsuchen

Akzeptierte Lösungen zeigen

Eine neue Diskussion starten!

Neues Thema erstellen