OBJ naar STL omzetten

Hier zet je OBJ naar STL om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. De omzetting gebeurt binnen je eigen browser, dus het bestand wordt nooit geüpload. Het werkt hetzelfde op Windows, macOS en Linux als op iPhone en Android, en het blijft werken als je de verbinding verbreekt.

  • Waar het draait In je browser. Het bestand wordt nooit geüpload.
  • Opnieuw opgebouwd STL werkt anders dan OBJ. Het is dus niet het geleidelijke kwaliteitsverlies van een lossy codec: wat STL kan uitdrukken wordt getrouw weergegeven, en wat daar geen equivalent heeft blijft helemaal weg.
  • Maximale grootte Tot 100 MB per bestand, gratis en zonder account.
  • Goed om te weten Alleen de meetkunde. Materialen, kleuren, texturen en animatie gaan niet mee, en een model dat meerdere keren geplaatst is komt terug met elke kopie vastgezet op zijn eigen plek.

Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.

Het uploadformulier dat alleen STL accepteert

Deze omzetting is bijna altijd verplicht in plaats van een voorkeur. Een online printdienst vermeldt `.stl` bij de geaccepteerde formaten. Een CAM-pakket importeert meshes en importeert er precies één soort. Een fabrikant van machines schreef zijn software rond STL en heeft dat nooit herzien.

Discussiëren is zelden mogelijk en zelden de moeite waard. Wat wel de moeite waard is: zeker weten dat de STL die je aanlevert de juiste is, want een STL vertelt niets over zichzelf — geen eenheden, geen onderdeelnamen, geen materiaal, geen herkomst — dus elke fout erin blijft stil tot iets op de verkeerde grootte wordt gemaakt.

De MTL naast je OBJ wordt nooit geopend

Een OBJ komt vaak met een metgezel: een `.mtl`-bestand met materialen, en een map met textuurafbeeldingen waar de `.mtl` naar verwijst. Niets daarvan wordt gelezen, want er is nergens in een STL plaats voor een materiaal, een textuur, een UV-coördinaat of een kleur.

Het gevolg is duidelijk: een model gekocht om zijn uiterlijk komt eruit als een egaal grijze vaste vorm, en dat is geen tekortkoming van de omzetting maar de definitie van het doelformaat. Gaat het om kleur, dan is 3MF het printformaat dat dat wel draagt.

Elke OBJ-groep versmelt tot één STL-driehoekslijst

OBJ organiseert geometrie met `o`- en `g`-regels, en een model van enige complexiteit gebruikt die — een romp, een deksel, een handvat, elk benoemd. Een STL heeft één lijst driehoeken van begin tot eind en geen begrip van een object, dus alle groepen worden in die volgorde geschreven.

De schalen blijven geometrisch gescheiden en de identiteit is weg. PrusaSlicer en Cura detecteren losse schillen bij het laden en bieden aan ze te splitsen op het platform, wat de indeling terugbrengt maar niet de namen.

Vierhoeken en n-hoeken worden gewaaierd vanaf de eerste hoek

OBJ-vlakken mogen elk aantal hoeken hebben, en STL-driehoeken hebben er precies drie, dus elk veelhoek wordt gesplitst. De methode is een waaier: hoek één wordt verbonden met elk opeenvolgend paar, zodat een vierhoek twee driehoeken wordt en een zeshoek er vier.

Dat is precies goed voor een convex vlak en het enige punt waar deze omzetting geometrie kan produceren die fout is in plaats van slechts vereenvoudigd. Een concave veelhoek gewaaierd vanaf een hoek buiten zijn eigen binnenkant levert overlappende driehoeken op. Modelleerpakketten leveren vrijwel altijd convexe vlakken, dus dit is zeldzaam.

Een OBJ declareert geen eenheid, dus de STL beweert millimeters

Geen van beide formaten legt een eenheid vast. OBJ heeft geen veld ervoor, en het ecosysteem eromheen heeft geen conventie — een mesh uit een scantool is vaak millimeters, een uit een architectuurpakket meters. STL is hetzelfde, behalve dat elke slicer het als millimeters interpreteert.

De getallen krijgen dus een betekenis die ze niet hadden. Dat is de duurste manier waarop deze omzetting misgaat, en de controle kost tien seconden: laad de STL in een slicer, lees het begrenzingsvak, en vergelijk met een afmeting die je kent.

Negatieve en relatieve indices in de OBJ worden opgelost

OBJ-vlakindices zijn één-gebaseerd, en het formaat staat ook negatieve toe, die achterwaarts tellen vanaf de meest recente vertex. Sommige exporttools gebruiken die vorm consequent omdat dat bestanden samenvoegen triviaal maakt.

Beide vormen worden opgelost terwijl het bestand wordt gelezen, in volgorde, wat de enige manier is waarop het kan: een negatieve index hangt af van hoeveel vertices op dat punt al waren gedeclareerd.

Versmelten bij het lezen, en waarom de STL het weer weggooit

De lezer versmelt samenvallende vertices binnen elke groep, vergeleken op zes decimalen. Dat telt voor andere doelformaten op deze site — een OBJ omgezet naar glTF of PLY behoudt de gedeelde vertices en is daardoor veel kleiner — en het is onzichtbaar in een STL.

STL kent helemaal geen gedeelde vertices: elke driehoek draagt zijn drie hoeken onafhankelijk, dus een hoek gebruikt door zes driehoeken wordt zes keer geschreven, wat de bron ook deed. Het bestand is daardoor exact 84 + 50n bytes voor n driehoeken.

De STL controleren voordat je voor een print betaalt

Vier dingen, in deze volgorde, en steeds in een slicer die je zelf bestuurt. Het begrenzingsvak, tegen een afmeting die je kunt verifiëren. Het aantal objecten, voor het geval het model uit meerdere onderdelen bestond en je er één bedoelde te sturen. Het manifold-rapport — PrusaSlicer en Cura signaleren allebei open randen bij het laden. En de gesliceerde voorvertoning op een paar hoogtes.

Dat laatste vangt dingen die de rest mist: omgekeerde vlakken die een holte maken waar vast materiaal hoort, een waaierartefact van een concave veelhoek, een interne schil waar niemand van wist.

Wanneer je de OBJ ergens anders naartoe stuurt dan STL

Ga je zelf printen, dan is 3MF de betere bestemming en elke huidige slicer accepteert het: het declareert expliciet millimeters, houdt elke groep als eigen object op het platform, en is een gecomprimeerd pakket in plaats van vijftig bytes per driehoek.

Wordt het model bewerkt in plaats van gemaakt, bewaar dan de OBJ — die heeft de groepen, de materiaalverwijzingen en een tekstvorm die je kunt inspecteren, en niets daarvan overleeft een reis via STL.

Waar de OBJ wordt omgezet

In dit browsertabblad, door gewone JavaScript. Er wordt geen WebAssembly-module opgehaald, niets wordt geüpload, er is geen account en geen daglimiet, en het netwerktabblad tijdens een omzetting bevestigt dat.

Het gratis plafond ligt op 100 MB voor de invoer, en let op dat de uitvoer groter kan zijn dan de invoer bij een dicht model — een OBJ bewaart elke vertex eenmalig en een STL herhaalt hem per driehoek.

Zo zet je OBJ naar STL om

  1. Sleep je OBJ-bestand op deze pagina, of klik om er een te kiezen.
  2. Kies STL als doel. De omzetting gebeurt in je browser en het bestand wordt niet geüpload.
  3. Download het klare STL-bestand.

OBJ of STL: wat er verandert

OBJ vergeleken met STL
OBJSTL
Volledige naamWavefront-objectStereolithography
Bestandsextensie.obj.stl
Mediatypemodel/objmodel/stl
Voor het eerst gepubliceerd19921987
Uitgegeven doorWavefront Technologies3D Systems
LicentieOpen standaardOpen standaard
Stand van zakenActueelActueel
Opent in een browserGeen browserGeen browser
In plaats daarvan overwogenGLTF, PLY3MF, PLY

Het resultaat openen

Blender leest zowel OBJ als STL, dus je kunt het resultaat naast het origineel leggen zonder een tweede programma.

Waarvoor elk formaat bedoeld is

De twee mikken op ander werk: OBJ op gegevens tussen programma’s verplaatsen en bewerken, STL op 3D-printen. Dat is het afwegen waard, want de reden dat het ene bestaat is meestal de reden dat het andere onhandig is.

STL komt van 3D Systems en stamt uit 1987. Blender, PrusaSlicer en Cura lezen het formaat.

Van OBJ naar STL: veelgestelde vragen

Wordt mijn OBJ-bestand ergens heen geüpload?

Nee. Deze omzetting gebeurt volledig in je browser, dus het bestand verlaat je apparaat niet. Je kunt het zelf nagaan: open het netwerktabblad van de ontwikkelaarshulpmiddelen en zet iets om. Je ziet de pagina zelf en de verzoeken voor statistiek en advertenties waarmee deze dienst betaald wordt, en geen enkel verzoek dat je bestand meeneemt.

Is OBJ naar STL omzetten gratis?

Ja. Geen account, geen watermerk en geen dagtegoed dat opraakt: het draait op je eigen machine, dus je mag zo vaak terugkomen als je wilt. De browser verwerkt bestanden tot 100 MB, 100 tegelijk.

Gaat er kwaliteit verloren bij het omzetten van OBJ naar STL?

OBJ en STL beschrijven de inhoud op fundamenteel andere manieren. De omzetting is daarom een reconstructie en geen kopie: getrouw, maar niet byte voor byte identiek. Alleen de meetkunde. Materialen, kleuren, texturen en animatie gaan niet mee, en een model dat meerdere keren geplaatst is komt terug met elke kopie vastgezet op zijn eigen plek.

Moet ik iets installeren om een STL-bestand te openen?

Voor de omzetting niet: die gebeurt in de browser die je al open hebt staan. Om het resultaat te openen heb je daarna het programma nodig waarmee je apparaat Stereolithography normaal weergeeft.

Meer over deze formaten