STL, kort voor "Stereolithografie", is een populair bestandsformaat voor 3D printen en CAD. Het stelt een 3D-object voor als een verzameling driehoeken of veelhoeken die de vorm van het oppervlak definiëren. Er zijn backroniemen verbonden aan het STL-bestandstype en dat zijn: Standard Tessellation Language of Standard Triangle Language.
STL vereenvoudigt complexe vormen in driehoekige vlakken, waardoor ze gemakkelijk te begrijpen zijn voor 3D-printers. Hoe ingewikkelder het ontwerp, hoe meer driehoeken er worden gebruikt, waardoor de resolutie toeneemt.
Het onderscheidende kenmerk van een STL-afbeelding is de bestandsextensie stl en de afwezigheid van kleur en textuur.

Geschiedenis van het STL-bestandsformaat
Het werd in 1987 opgericht door 3D Systems. Het STL-formaat kreeg al snel aandacht als de industriestandaard voor hun stereolithografische CAD-programma. STL is gemaakt voor 3D printen en is relevant gebleven door zijn eenvoud. Daarom wordt het vooral gebruikt voor 3D printen en modelleren. In 2009 werd een bijgewerkte versie van het STL-bestandsformaat, STL 2.0, geïntroduceerd.
Ondanks zijn eenvoud heeft STL zijn relevantie in de 3D-print- en modelleerindustrie behouden.
Voordelen van STL-bestanden in digitale productie en CAD
Digitale fabrikanten vertrouwen sterk op STL-bestanden, waarmee ontwerpers prototypes kunnen ontwerpen, delen en afdrukken. STL-bestanden dienen als brug tussen 3D-modellen en fysieke objecten in CAD. Deze eenvoud maakt STL onmisbaar voor industrieën zoals lucht- en ruimtevaart en geneeskunde, die vaak complexe onderdelen nodig hebben.
Hoe STL-bestanden werken
STL-bestanden coderen voornamelijk de oppervlaktegeometrie van een 3D-object met behulp van een proces dat "vlakvulling" wordt genoemd.
Vlakvulling is een techniek die ingewikkelde oppervlakken vereenvoudigt in eenvoudigere, platte veelhoeken. In STL-bestanden zijn deze veelhoeken driehoekig. In 1987, Chuck Hull, de uitvinder van de stereolithografie, had een manier nodig om 3D CAD-modellen naar zijn 3D-printer te sturen. Albert Consulting Group loste dit probleem op door vlakvullingen van het 3D modeloppervlak te gebruiken om de informatie te coderen.

i) Oppervlaktebenadrukking
Bij vlakvulling worden zelfs gekromde oppervlakken, zoals cilinders en bollen, weergegeven door een reeks mesh-driehoeken. Hoe vloeiender de benadering van het gebogen oppervlak, hoe meer driehoeken er nodig zijn. Dit vergroot echter ook de bestandsgrootte en de rekencomplexiteit, wat resulteert in een afweging tussen prestatie en resolutie.
ii) Driehoeken in 3D-ruimte
Een driehoek heeft drie hoekpunten en elk hoekpunt heeft een x-, y- en z-coördinaat in de 3D-ruimte. De hoekpunten vormen de hoeken van de driehoek die van de ene rand naar de andere rand loopt en zo het totale oppervlak van het object vormt.
iii) Net maken
De STL-bestandsstructuur bestaat uit driehoeken die een driehoekig net vormen dat de digitale oppervlaktekaart van het object voorstelt. Ze zijn klein genoeg om de originele vorm nauwkeurig te benaderen, maar toch eenvoudig te verwerken door 3D-printers of software.
iv) Resolutiecontrole
De resolutie van het model wordt weergegeven door het aantal driehoeken dat gebruikt wordt in de vlakvulling. Een hoger aantal driehoeken resulteert in een nauwkeuriger en gedetailleerder model, maar vergroot de bestandsgrootte en de proceseisen. Daarentegen vereenvoudigen weinig driehoeken het model, maar kunnen curven er blokkerig of gefacetteerd uitzien.
v) STL-weergave
In STL-bestanden zijn driehoeken handig omdat ze gemakkelijker te berekenen en te bewerken zijn voor 3D-printen. Elke driehoek heeft een bijbehorende normaalvector die aangeeft in welke richting het oppervlak wijst. Dit helpt 3D printers om te begrijpen hoe het object laag voor laag moet worden opgebouwd.
Binaire vs. ASCII STL-bestandstypen
STL-bestanden zijn er in twee formaten: ASCII-codering en binaire codering.
ASCII STL-bestanden
ASCII STL-bestanden zijn leesbaar voor mensen en geven een tekstuele beschrijving van de oriëntatie en positie van elke driehoek. Hoewel ze gemakkelijker te debuggen en te lezen zijn, zijn ze groter dan binaire tegenhangers.
Een grotere bestandsgrootte kan bijvoorbeeld onpraktisch worden in het geval van complexe modellen. Een eenvoudig 3D-model heeft misschien 1 MB in binair formaat, maar als het wordt omgezet in ASCII wordt het 5-10 MB, waardoor het moeilijk wordt om bestanden over te zetten en te verwerken. Als u werkt met een 3D printer of CAD-softwaremoet het elke regel lezen en interpreteren. Door de grootte duurt het laden van met name complexe modellen langer, waardoor de stappen vertraging oplopen.
ASCII STL-bestanden beginnen met het sleutelwoord "solid" en bevatten een reeks "facet"-definities. Elk facet bestaat uit drie vertices en een normaalvector.
Binaire STL-bestanden
Binaire STL-bestanden genieten de voorkeur in verschillende toepassingen omdat ze compact en efficiënt zijn. Ze versnellen de verwerking en verkleinen de bestandsgrootte van vergelijkbare informatie. Bij grootschalige projecten zoals complexe prototypes of industriële types werken bedrijven met honderden bestanden per dag. Kleine bestanden van binaire STL zorgen voor snelle downloads en uploads, waardoor minder bandbreedte wordt verbruikt. Bovendien resulteren sommige bewerkingen zoals renderen en slicen voor 3D printen in een snellere verwerkingstijd.
Binaire bestanden zijn eenvoudig te beheren door moderne 3D-software. Bewerkings- en foutcontroleprogramma's zoals MeshLab en Netfab kunnen deze bestanden moeiteloos verwerken.
Binaire STL-bestanden beginnen met een header van 80 bytes. Daarna volgen unsigned integers van 4 bytes die het aantal driehoeken in het bestand voorstellen. Elke driehoek heeft 12 bytes voor de normaal en 36 bytes voor de hoekpunten (3 hoekpunten)

STL-bestanden maken en exporteren
Met sommige populaire CAD-programma's kunnen gebruikers STL-bestanden maken en exporteren. De bekendste zijn:
SolidworksHet meest gebruikt door ingenieurs en professionals in 3D modelleren. Biedt geavanceerde mogelijkheden zoals ingebouwde simulaties en analyses om ontwerpen te testen voor het printen. Biedt uitgebreide STL-exportopties zoals controle over formaat (ASCII of binair) en resolutie.
Tinkercad: Heeft drag-and-drop interfaces voor het eenvoudiger maken van 3D-modellen. Geschikt voor beginners en docenten die geen ervaring hebben met ontwerpen. Biedt directe export naar STL-indeling.
Fusion 360: een populair hulpmiddel voor 3D CAD, CAM en CAE, is handig bij productontwerp en engineering. Biedt sterke modelleringsfuncties zoals sculpting en parametrisch ontwerp.
Naast deze opties kunnen verschillende andere CAD-programma's, waaronder FreeCAD, SketchUp en Blender, ook STL-bestanden exporteren.
Een STL-bestand maken en exporteren
- Open Solidworks of Tinkercad, afhankelijk van de CAD-toepassing van je keuze.
- Maak het model of ontwerp met hulpmiddelen van de software.
- Het ontwerp opslaan en exporteren: met de functie Automatisch opslaan kan een STL-bestand dat door de software is gemaakt gemakkelijk worden opgeslagen en geëxporteerd naar de computer. Controleer echter voor het exporteren de uniformiteit van het model, de gaten in de onderdelen en de afmetingen. Controleer de resolutie, bij een lage resolutie verschijnen de driehoeken op het modeloppervlak na het printen. Stel het tolerantieniveau hoog in zodat de STL-bestanden naadloos geprint kunnen worden.
Parameters zoals de hoek en de hoogte van de koorde geven de afstand aan tussen de 3D print en het CAD oppervlak. Idealiter is de koordehoogte 1/20th de grootte van het afdrukoppervlak. Koordlengte onder 1 micron maar niet te laag en hoektolerantie 150.
- Kies een slicerprogramma- Cura is de meest gebruikte open-source slicer van Ultimaker omdat het gemakkelijker en flexibeler in gebruik is.
- Laad het bestand en converteer het naar een G-code (printertaal) bestand met de snijsoftware van je voorkeur.
STL-bestand Speciale regel
1. Oriëntatieregel
Deze regel definieert hoe de richting van elke driehoek (facet) beïnvloed wordt door zijn nominale vector. Deze vector geeft de richting aan waarin de driehoek wijst en helpt bij het bepalen van de binnen- en buitenkant van het object. De normaalvector wijst weg van het oppervlak en toont "buiten", wat de buitenkant van de 3D printer aangeeft. De verkeerde oriëntatie van de normaal verandert de interpretatie van de kenmerken met printfouten tot gevolg.
De hoekpunten volgen de rechterhandregel, waarbij de duim in de richting van de normaal wijst en de vingers in de richting van de hoekpunten. Dit volgt de volgorde tegen de klok in.
2. Hoekpuntregel
Deze regel stelt dat elke driehoek twee hoekpunten moet delen met de driehoeken. Aangrenzend. Dit zorgt ervoor dat de driehoeken nauwkeurig gepositioneerd zijn en is fundamenteel voor bot rendering en een soepele werking bij 3D printen.

3. De volledig positieve octantregel
Volgens deze regel moeten alle coördinaten van de hoekpunten van de driehoeken allemaal positief zijn. Dit beperkt het hele 3D-model of de eerste octant van het 3D-coördinatenstelsel. tot het gebied waar alle coördinaten positief zijn. Dit vereenvoudigt het ontwerp en bespaart ruimte. Deze aanpak vereenvoudigt het modelleren in specifieke contexten, maar is geen vereiste voor alle STL-bestanden.
4. De driehoeksorteerregel
Op basis van de sorteerregel voor driehoeken worden de driehoeken in oplopende volgorde van hun z-coördinaten gerangschikt. Deze indeling stroomlijnt het snijproces voor 3D-modellen, wat resulteert in een snellere en effectievere voorbereiding voor 3D-printen.
STL-bestand optimaliseren voor 3D printen
Het STL-bestandsformaat recreëert gedeeltelijk het oppervlak van een CAD-model door een mesh te produceren die geschikt is voor 3D-printen. Optimalisatie is echter essentieel voor optimale resultaten. De resolutie van het STL-bestand heeft een grote invloed op de kwaliteit van de print. Meer driehoeken betekent een hogere resolutie en gladde oppervlakken, maar een grotere bestandsgrootte. Het aantal polygonen verminderen door vertices samen te voegen of onnodige polygonen te reduceren, verlicht de belasting. De slicingsoftware vindt het makkelijker om te verwerken en ervaart weinig fouten. Tot slot moet een waterdicht model zonder gaten of spleten zeker zijn voor een soepel proces. Een balans vinden tussen kwaliteit en grootte is de sleutel tot het optimaliseren van STL-bestanden.
Alternatieven voor STL-bestanden
Hoewel STL-bestanden een veelgebruikte optie zijn voor 3D-printen, zijn er maar weinig alternatieven die betere mogelijkheden en functionaliteit bieden.
STL vs OBJ
STL-bestanden worden veel gebruikt bij 3D-printen. Ze gebruiken het principe van driehoekige mazen om geometrie te coderen.OBJ daarentegen wordt meestal gebruikt voor 3D scannen. Het combineert verschillende polygonen in een enkel bestand om het oppervlak weer te geven.
De tabel illustreert de vergelijkingen.
| STL | OBJ |
| Eenvoudige, driehoekige mesh | Op veelhoeken gebaseerd, met ondersteuning voor quads |
| Geen ondersteuning voor kleur of textuur | Ondersteunt kleur, textuurmapping en UV-coördinaten |
| Meestal kleiner, maar kan groeien met de resolutie | Groter door extra gegevens (texturen, kleuren) |
| Beperkt tot oppervlaktegeometrie (geen details in materialen of uiterlijk) | Omgaan met complexe geometrieën, materialen en visuele details |
| Het beste voor 3D-printen en basis CAD-ontwerpen | Ideaal voor gedetailleerde modellen in games, film en visuele projecten |
| Eenvoudig, gemakkelijk te verwerken | Complexer met materiaalbibliotheken |

STL vs STEP
STL-bestanden slaan in dit geval alleen oppervlaktegeometrie op door middel van driehoekige mazen, wat resulteert in een lichtgewicht en eenvoudig te verwerken bestand. STEP-bestanden zijn veel uitgebreider. Ze behouden de ontwerpintentie en kunnen de modellen opslaan als afzonderlijke entiteiten, wat leidt tot hogere nauwkeurigheid en vloeiendere krommingen.
Hieronder volgt een vergelijkingstabel:
| STL | STAP |
| Op oppervlak gebaseerd driehoekig net | Grensrepresentatie (B-rep) en solide modellering |
| Geen ondersteuning voor kleur of textuur | Ondersteunt kleuren, materiaaleigenschappen en texturen |
| Meestal kleiner, afhankelijk van de maasresolutie | Groter door meer gedetailleerde geometrische informatie |
| Vereenvoudigde oppervlaktegeometrie (geen interne structuur) | Bevat volledige ontwerpgegevens, inclusief complexe samenstellingen en geometrie |
| Voornamelijk voor 3D printen en eenvoudige CAD-modellen | Ideaal voor engineering, productie en CAD-interoperabiliteit |
| Eenvoudig, gemakkelijk te verwerken | Complexer, slaat zowel geometrie als metadata op (ontwerpintentie, afmetingen) |
| Bij benadering, gebaseerd op oppervlaktedriehoeken | Hoge precisie, exacte geometrie voor productie- en engineeringtoepassingen |
| Beperkt, vereist vaak conversie voor CAD-software | Zeer interoperabel met verschillende CAD-systemen |

STL vs 3MF
3D-printen geeft de voorkeur aan STL-bestanden vanwege hun eenvoud en compatibiliteit. Het 3MF-bestand (3D Manufacturing Format) is gebaseerd op XML en is geavanceerder omdat het alle informatie bevat die nodig is om een object te printen.
Hieronder staat een vergelijkingstabel;
| STL | 3MF |
| Op driehoekige mazen gebaseerde oppervlaktegeometrie | Het XML-formaat ondersteunt zowel mesh- als volledige modeldetails. |
| Geen ondersteuning voor kleur of textuur Volledig | ondersteunt kleur, texturen en materialen. |
| Meestal kleiner, afhankelijk van de maasresolutie | Efficiëntere compressie, kleinere bestanden vergeleken met STL met hetzelfde detailniveau |
| Vereenvoudigde oppervlaktegeometrie | Verwerkt complexe geometrieën, modellen met meerdere materialen en meer gedetailleerde eigenschappen |
| Voornamelijk voor 3D-printen en basis CAD-ontwerpen | Goed voor modern 3D printen, vooral wanneer multimateriaal en kleur nuttig zijn |
| Eenvoudig en licht, gemakkelijk te verwerken | Gestructureerd met metadata (materialen, kleuren, afdrukinstellingen) |
| Bij benadering, gebaseerd op driehoekige facetten | Hogere precisie ondersteunt rijkere ontwerpdetails en metadata voor nauwkeurig afdrukken. |
| Toepasbaar in 3D printsoftware. | Bruikbaar voor moderne 3D-printers en software dankzij geavanceerde functies. |
STL vs G-code
Het STL-bestand is voor 3D-printen. 3D slicer software helpt het om te communiceren met de printer voor het afdrukken. Het G-code bestandsformaat is een set instructies voor het printerproces. Veel voorkomend in snijmachines zoals molens en draaibanken.
Hieronder zie je een vergelijking tussen de twee formaten.
| STL | G-code |
| 3D-modelgegevens, driehoekig gaas | Machine-instructies, gereedschapspadopdrachten voor 3D-printers |
| Vertegenwoordigt de vorm en geometrie van een 3D-model | Geeft precieze instructies voor een 3D printer om uit te voeren |
| Geen ondersteuning voor kleur of textuur | Kan instructies bevatten voor het printen van meerdere materialen (als de printer dit ondersteunt) |
| Kan instructies bevatten voor het printen van meerdere materialen (als de printer dit ondersteunt) | Groot, afhankelijk van de complexiteit van de print en het aantal lagen |
| Vereenvoudigde oppervlaktegeometrie | Bevat gedetailleerde machinespecifieke opdrachten (bijv. spuitmondbeweging, temperatuurinstellingen) |
| Gebruikt om 3D-modellen weer te geven voor ontwerp en visualisatie | Wordt gebruikt om het afdrukproces te regelen, waarbij wordt gespecificeerd hoe het model fysiek moet worden gemaakt. |
| Eenvoudige op mesh gebaseerde gegevens | Regel-voor-regel instructies voor elke beweging, temperatuur, snelheid en extrusie |
| Moet via slicingsoftware worden omgezet in G-code | Direct leesbaar door 3D-printers als productie-instructies |
| Benaderende, oppervlaktegebaseerde driehoeken | Exact, tot op specifieke machinebewegingen en afdrukparameters |
Conclusie
Het STL bestandsformaat is als de digitale blauwdrukken van de 3D printwereld. Ondanks de eenvoud en de snelle vertaling van digitale modellen naar een printbaar formaat, heeft het zijn beperkingen. Ongeacht de geavanceerde functies van de nieuwere formaten, blijft STL voor veel ontwerpers een veelgebruikte optie. Toch is het altijd belangrijk om het bestandsformaat te kiezen op basis van de bedoeling van het 3D bestand.









