Warum SpeakCAD 3MF exportiert (und wie wir es im Browser bauen)
3MF ist das moderne 3D-Druck-Format: Einheiten, Namen, indizierte Meshes, slicer-nativ. Wie SpeakCAD clientseitig eine gültige 3MF erzeugt und wann du sie statt STL wählen solltest.STL ist eine Dreieckssuppe
Eine STL-Datei ist eine Liste von Dreiecken ohne gemeinsame Eckpunkte, ohne Einheiten und ohne Namen. Es funktioniert, aber jeder Slicer muss die Konnektivität neu aufbauen und die Einheit erraten. Dateien sind groß, und Layouts mit mehreren Teilen verschmelzen zu einem einzigen Klumpen.
3MF ist ein Paket
3MF ist ein ZIP-Archiv mit einem kleinen XML-Modell darin. Es legt die Einheit fest (Millimeter), benennt Objekte, speichert Eckpunkte nur einmal und referenziert sie aus den Dreiecken, und unterstützt mehrere Objekte mit Transformationen. PrusaSlicer, Bambu Studio und OrcaSlicer nutzen es als natives Projektformat.
Wie SpeakCAD es erzeugt
Die OpenSCAD-Engine in deinem Browser gibt eine binäre STL aus. SpeakCAD parst sie, dedupliziert Eckpunkte (identische Koordinaten werden zu einem Eckpunkt), verwirft entartete Dreiecke und schreibt das 3MF-XML: [Content_Types].xml, _rels/.rels und 3D/3dmodel.model. Die drei Dateien werden mit einer winzigen reinen JavaScript-Zip-Bibliothek gezippt, alles clientseitig. Deine Geometrie verlässt für den Export nie den Tab.
Das Ergebnis
- 30 bis 60 % kleiner als die entsprechende STL
- Einheit und Modellname bleiben im Slicer erhalten
- Ein sauberes, indiziertes Mesh, das Slicer nicht reparieren müssen
Wann STL immer noch die richtige Wahl ist
Für ältere Tools, OpenSCADs eigenes import(), oder Dienste, die nur STL akzeptieren. Beide Downloads desselben Designs sind durch eine Zahlung abgedeckt, also hol dir im Zweifel gleich beide.
Eine Anmerkung zur Validierung
Jede 3MF, die SpeakCAD schreibt, öffnet sich in PrusaSlicer, Bambu Studio, OrcaSlicer, Cura, dem Windows-3D-Viewer und Blenders Importer. Findest du ein Tool, das eine ablehnt, sag uns Bescheid; das behandeln wir als Bug.
