Ich hatte dieses Jahr berufsbedingt mit STL-Dateien zu tun. Für nicht-Maker: Das ist ein antikes Dateiformat, das in den 80ern für Stereolithografiemaschinen entwickelt wurde und sich in den 2010ern zum Standarformat für 3D-Druck entwickelt hat.
Die üblichen Programme, um STLs zu laden (Meshlab etc.) sind höllisch langsam und zäh. Außerdem muss ich ganze Ordner sichten, und kann dann nicht jede Datei einzeln via Datei → Öffnen lokalisieren.
Also habe ich mir einen eigenen Viewer geschrieben.
- öffnet selbst riesige Dateien in Nullkommanix
- man kann ganze Verzeichnisse durchgehen, ähnlich der Windows-Fotogallerie durch linke/rechte Pfeiltaste (ZFX-Diskussion & Quelltext)
(Quelle des Modells)
Das wäre nicht von mir, wenn die Performance nicht der absolute Kracher wäre. Daher keine Verschwendung, kein Schickimicki. Ein Diagramm sagt mehr als tausend Worte:
(Details zum Benchmark gibt’s auf der Download-Seite unter „Testdetails“)
Aber auch sonst ist es Overengineering pur. Ich habe mir mehrere Hunderttausend STLs von thingiverse heruntergeladen und erreiche über 99,9 % Kompatibilität – mehr als jedes andere Programm. Multi-Objekt, mit oder ohne Farbe, Kommas statt Punkte in Zahlen, Syntax kaputt, egal. Ich lade alles.
Ein weiteres Problem mit STL ist, dass Programme gern Y als Hoch-Achse nehmen, obwohl es eigentlich Z sein sollte. Oder Meter/Zentimeter/Zoll schreiben, wenn es Milimeter sein sollten. Ich habe anhand des riesigen Datensatzes Heuristiken entwickelt, die über 85 % richtig vorhersagen, wie eine Datei orientiert ist, und sie entsprechend anzeigen. Auch da bin ich allen anderen Programmen weit voraus.
Ich hatte es vor einem Monat online gestellt, und das Feedback zu den ersten beiden Versionen war ziemlich gut. Gestern habe ich die dritte Version fertiggemacht und mir gedacht, die kann ich dann auch direkt hier präsentieren, falls wir Windows-User mit 3D-Druckern haben :)
Einziges Problem sind Antivirenprogramme. Und ich sage euch, das ist so ein riesen Scheiß, dass ich einen eigenen Thread dafür anfangen werde. Jedenfalls: Wenn euch ein Antivirenprogramm vor meinem Viewer warnt, ignoriert das.
… und demnächt gebe ich dann ein paar Anekdoten aus der Entwicklung zum Besten.