De meeste 3D-printers gebruiken een STL-bestand om een 3D-tekening in G-code om te zetten. Een STL-bestand beschrijft de geometrische vorm van een object in driekhoekjes. Dit kan in ASCII en binair.
De afkorting StL is afkomstig uit de StereoLithography. Elke driehoek wordt beschreven door een loodrechte richting en drie punten die de hoeken van de driehoek vormen. Met deze gegevens en een 'slice'-algoritme is een 3D object te printen met een 3D-printer.
Een STL-bestand geeft altijd een benadering van de werkelijkheid. Een boog zal nooit mooi rond zijn, maar hoekig. Hoe meer driehoeken de boog beschrijven hoe ronder de boog (en groter het bestand). Voor de meeste toepassingen is een grote nauwkeurigheid (gelukkig) niet nodig.
Er zijn verschillende programma's op de markt om STL-bestanden te analyseren en repareren. Uit ons onderzoek naar STL tools komt dat NetFabb een hele goede keuze is. Deze is ook nog gratis te downloaden. Een gratis plugin om een SketchUp-bestand naar STL te exporteren kan je vinden op guitar-list. Over de SketchUp-plugin van CADspan zijn wij niet zo tevreden.
Een binair format wordt het meest gebruikte omdat deze compacter is. Een binair STL-file met 1 driehoek ziet er als volgt uit:
| Bytes | Data type | Beschrijving |
| 80 | ASCII | Header, gegevens geen betekenis |
| 4 | float | i voor normaal |
| 4 | float | j |
| 4 | float | k voor normaal |
| 4 | float | x voor hoek 1 |
| 4 | float | y |
| 4 | float | z |
| 4 | float | x voor hoek 2 |
| 4 | float | y |
| 4 | float | z |
| 4 | float | x voor hoek 3 |
| 4 | float | y |
| 4 | float | z |
| 2 | unsigned integer | atribute byte count |
De 3D-softwarepakketten VisCAM en SolidView gebruiken de twee count bytes aan het eind van elke driehoek om een RGB kleur aan te geven:
Magics software geeft de kleur aan via 80 byte header aan het begin van het bestand.