Everything you need to know about STL files
3D printers build components in layers using files of digital 3D models. These files contain data-carrying bits, which 3D slicers use to divide models into horizontal layers and generate G-code, a language that tells 3D printers which movements to make. However, you can’t use just any file format for 3D printing because each format contains different information. Here’s everything you need to know about STL files.
What is an STL file?
STL files — the “STL” stands for Standard Tessellation Language, Standard Triangle Language, or stereolithography, depending on who you ask — are considered the standard for 3D printing because they’re light and simple. STL files are compatible with most 3D printers and CAD software and save geometries by tiling the surface with millions of triangles. These triangles create a mesh without any gaps or overlaps (tessellation).
In STL files, you’ll find a long list of three-dimensional coordinates grouped into sets of three and a vector. Every coordinate group represents a triangle’s vertices, while the vector will be normal or perpendicular to the triangle’s plane. More triangles result in a higher resolution and a larger file size.
The advantages and disadvantages of STL files
Since 3D STL files only contain geometric information, they’re light, simple, and widely used in the additive manufacturing space. STL files are open source, so it’s easy to find software or printers that are compatible with them. Given STL’s popularity, the technology capable of processing STL files is already quite mature and will continue to advance in the future. STL files are also more secure than other formats. While CAD files often contain sensitive information, STL files only include the external surface and shape of a digital model.
These benefits notwithstanding, there are a few disadvantages that product teams should keep in mind. For instance, STL files are notoriously difficult to modify. Even though this helps designers retain ownership over designs, it makes altering STL files so inconvenient that it’s often easier to start over rather than reverse engineer the tessellated geometry into boundary representation (BREP) surfaces. Also, STL files aren’t very accurate. Since triangles are flat, STL files can only accurately represent 3D models with flat surfaces. Curved surfaces are approximated and may be coarse, even at the highest resolution. Plus, higher resolution files are larger, which can cause slow slicing.
It’s also important to remember that STL files only store geometric data. The object’s scale or units aren’t specified, and copyright, authorship, material, color, or texture data isn’t included in STL files. If you’re printing a simple prototype, this probably won’t impact you. However, if you need to print a multi-color, multi-material object, you should use a different file format.
Compared to an OBJ file, another standard 3D file format, STL files for 3D printing are simpler and smaller, making them easier to share and publish. The trade-off is that OBJ files contain information about color and texture. On the other hand, PLY files are used for objects that have been 3D scanned. Compared to file formats that use precise surface encoding, STL offers lower fidelity — even with the highest level of resolution.
What are some key considerations for 3D printing with STL files?
If you determine that 3D printing with STL files is right for your project, there are a few things you’ll want to keep in mind, including:
- The vertex rule: This rule requires every triangle to share two vertices with adjacent triangles, so a triangle’s vertex can’t lie on a different triangle’s side.
- Chord height or tolerance: Chord height, or the maximum distance between the original design’s surface and the STL mesh, can affect your print’s surface. Large chord heights can result in a pixelated look, so set your chord tolerance between 0.01 mm and 0.0001 mm for a smooth print.
- The orientation rule: This rule requires you to define a facet’s orientation in two ways to help ensure data is consistent and uncorrupted. Make sure the normal vector points outward and your vertices are listed in counter-clockwise order when looking from the outside.
- The triangle sorting rule: Listing triangles in ascending z-value order will accelerate the slicing process.
- The positive octant rule: Only including positive coordinates for triangle vertices saves space because it eliminates the need to include positive or negative signs.
- Angular tolerance: Decreasing angular tolerance can improve resolution, but the default of 15 degrees (or 0) is usually suitable for most situations.
- Your encoding method: ASCII-encoded STL files can be helpful when manually debugging files but become unwieldy with large, detailed models. Instead, use the more compact and easier-to-read binary encoding format.
- Your needs: Weigh your need for accuracy and details against your need for speed. For most product teams, we recommend using a binary STL format, a chordal tolerance of 0.1 mm, an angular tolerance of 1 degree, and a minimum triangle side length of 0.1 mm.
3D printing with Fast Radius
While STL files are simple and compact, preparing them for 3D printing isn’t always straightforward. Luckily, working with an experienced manufacturing partner like Fast Radius can help.
When you work with us, we’ll quickly and cost-effectively print components that meet your needs. Our team of experts can help you throughout the manufacturing process, from design to production. Contact us today to get started.
Visit our resource center to learn more about the importance of 3D printing layer height, common 3D printing filaments, and more.