Ich habe für mich eine Lösung gefunden und möchte die "as it is" mit euch teilen. Wer perfektionieren möchte, ist eingeladen das zu tun.

Ich exportiere inzwischen gern mit 0,1000 % und 5,0°. den Unterschied kann man hier an 10mm-Zylindern gut erkennen:

An der Stelle wären wir fertig, wenn ... die Einstellung nicht das komplette Modell betreffen würde.
Es gibt eine Nebenwirkung, da alle Niete (Kugeln) ebenfalls sauber gerundet werden. Während der einzelne perfekte Niet mit einem Durchmesser von vielleicht 0.15mm beim fertigen Modell kaum aus der Farbe schaut, bläht sich die STL extrem auf. Ich hatte auf dem Weg STLs mit mehr 1GB, die ich dann mühevoll über MeshLab wieder klein gerechnet habe, da Slicer und Plattformen damit Probleme haben.
Mit der KI meines geringsten Misstrauens wurde in vielen Iterationen ein Makro für FreeCAD gedichtet, im Pfad C:/Users/<username>/AppData/Roaming/FreeCAD/Macro abgelegt. Folgende Varianten bietet es an:


Bei der Ausführung des Makros zunächst die FreeCAD Datei speichern! Dann wird analysieren (Button "Kugeln analysieren" anklicken) und dann die "Kugeln ersetzen". Dabei wird die eigentliche Datei geschlossen und eine neue Datei angelegt.
Die bisherigen Kugeln verbleiben unsichtbar geschaltet in der Datei -- kann man per Hand löschen oder ignorieren.
Ich würde grundsätzlich mit der Kugel-Datei bei eine groben Tessellierung von 0,5% und 28,5° entwerfen und die Optimierung erst am Ende vor dem finalen, hoch auflösenden Export durchführen.
Größen der Beispiel-STL-Dateien (1/4 Zylinder, 27 Kugeln):
Damit wird ohne im Modell sichtbaren Verlust auch schon zum Standard-Export eine deutlich kleinere Datei erzeugt.
Das Makro (Facetierte_Kugeln) und das FreeCAD-Testobjekt hängen jeweils als Zip an.
Problemlage
Bei der Nutzung von FreeCAD für die Wagen gibt es ein Problem beim STL-Export: Große Rundungen am Dach werden stufig. Dem lässt sich begegnen, indem man die Tessellierung verfeinert. Bei FreeCAD unter Bearbeiten / Einstellungen / Part/Part Design / Formanzeige.
Ich exportiere inzwischen gern mit 0,1000 % und 5,0°. den Unterschied kann man hier an 10mm-Zylindern gut erkennen:

An der Stelle wären wir fertig, wenn ... die Einstellung nicht das komplette Modell betreffen würde.
Es gibt eine Nebenwirkung, da alle Niete (Kugeln) ebenfalls sauber gerundet werden. Während der einzelne perfekte Niet mit einem Durchmesser von vielleicht 0.15mm beim fertigen Modell kaum aus der Farbe schaut, bläht sich die STL extrem auf. Ich hatte auf dem Weg STLs mit mehr 1GB, die ich dann mühevoll über MeshLab wieder klein gerechnet habe, da Slicer und Plattformen damit Probleme haben.
Idee
Mein Ansatz war, alle kleinen Part-Kugeln (Niete) innerhalb der CAD-Datei durch andere Formen zu ersetzen. Das muss auch für Arrays funktionieren, ein Niet kommt selten allein.Mit der KI meines geringsten Misstrauens wurde in vielen Iterationen ein Makro für FreeCAD gedichtet, im Pfad C:/Users/<username>/AppData/Roaming/FreeCAD/Macro abgelegt. Folgende Varianten bietet es an:
- Ikosaeder (20 Flächen)
- Oktaeder unterteilt (32 Flächen)
- Ikosaeder unterteilt (80 Flächen)
- Kugel 64 Flächen
- Kugel 72 Flächen
- Oktaeder unterteilt (96 Flächen)


Bei der Ausführung des Makros zunächst die FreeCAD Datei speichern! Dann wird analysieren (Button "Kugeln analysieren" anklicken) und dann die "Kugeln ersetzen". Dabei wird die eigentliche Datei geschlossen und eine neue Datei angelegt.
Die bisherigen Kugeln verbleiben unsichtbar geschaltet in der Datei -- kann man per Hand löschen oder ignorieren.
Ich würde grundsätzlich mit der Kugel-Datei bei eine groben Tessellierung von 0,5% und 28,5° entwerfen und die Optimierung erst am Ende vor dem finalen, hoch auflösenden Export durchführen.
Größen der Beispiel-STL-Dateien (1/4 Zylinder, 27 Kugeln):
| Größe | Erklärung |
|---|---|
| 1,3M | Originalmodell (Tessellierung 0,5% und 28,5°) |
| 14M | Feines Modell (Tessellierung 0,1000 % und 5,0°) |
| 71K | Kugel (Unterteilung 64) (Tessellierung 0,1000 % und 5,0°) |
| 29K | Ikosaeder Grundform (Tessellierung 0,1000 % und 5,0°) |
| 108K | Ikosaeder unterteilt (Tessellierung 0,1000 % und 5,0°) |
| 50K | Oktaeder unterteilt (Tessellierung 0,1000 % und 5,0°) |
Damit wird ohne im Modell sichtbaren Verlust auch schon zum Standard-Export eine deutlich kleinere Datei erzeugt.
Das Makro (Facetierte_Kugeln) und das FreeCAD-Testobjekt hängen jeweils als Zip an.