The 3D printing industry uses a number of common file formats. Learn everything you need to know about the most common file formats in this quick-start guide.
There are a number of different file formats, that can be used to capture information about the shape of an object in three dimensions. What we are referring to here as '3D printing files' are a subcategory of these that can be used in 3D printing workflows, rather than say, videogame development.
The typical workflow that most professionals use, starts with the creation of a CAD (computer aided design) model of the component that they want to print, using any one of a number of software tools. The user then exports the design in a particular file format (most commonly in STL format) before loading that file into 'slicing' software. This software is then used to set the particular parameters for the 3D printing process, before instructions are sent to the 3D printer itself.
In the world of 3D printing, STL (Standard Tessellation Language or Standard Triangle Language) files are by far the most common. The STL file format was created by 3D Systems in 1987, and was created specifically for use in stereolithography (SLA) 3D printing, but has since become the default file type for all forms of additive manufacturing technology.
Each STL file contains information size and position information about a series of linked triangles, that approximate the shape of the underlying 3D model. The files have no units, and no other metadata, such as the author of the file. Other useful information about an object, such as its texture or colour, is also impossible to capture using the format.
Exporting STL files from CAD software is usually quite straightforward, but often inexperienced users may choose the wrong export settings, which results in either an overly complex file, or an insufficiently detailed one, being produced. The right file size is the smallest possible file that still captures all of the important topology.
The simplify of the STL file does have advantages however. The file size is smaller than some other options, and as it is the standard, every 3D printing service, machine, specialist and software is comfortable working with them.
There are a number of other common file types that are used for 3D printing.
A 3MF (3D Manufacturing Format) file is a relatively recent, open-source xml based format, developed by the 3MF consortium in 2015. It is specifically intended for use in additive manufacturing workflows, and captures scale, colour and texture information. It is very space efficient, and can also efficiently represent beam lattice structures that are incorporated into a design.
The 3MF file type also allows the inclusion of multiple models, in one 'scene'. This is very useful when trying to export an entire build plate/tray of models to another manufacturer, for example, or when sending a set of components that make up one assembly.
A STEP, or STP, file (Standard for the Exchange of Product Data) is a format defined by ISO 10303. It is used throughout the engineering and design industry, and is the 'go-to' file type for sending CAD data between individuals and teams who use different CAD programs. Unlike some other file formats, STEP files store data as solid geometry, rather than a mesh, which makes them far more editable.
We like STEP files at Printpool, as they allow us to check the file in a CAD program BEFORE we export it to another format, like STL. That gives us full control over the process, so we can ensure a good result. It is often far easier working with STEP data than a proprietary file format from a particular software, such as Solidworks and their .SLDPRT format, as all major CAD programs can open and edit them.
OBJ files, or Wavefront Objects, were developed in the 1990s by Wavefront Technologies. They are more useful than STLs in certain ways, as they can capture information about colour and scale.
OBJs are often used as a conversion format, as most applications support them. The OBJ format notorious for being unreasonably large however, and so can be cumbersome and difficult to export and edit.
These file types are used less often in 3D printing workflows.
The PLY (Polygon File Format) is an important part of the 3D scanning workflow, as many 3D scanners, and 3D scanning softwares export to the PLY format. It stores information about an object as a series of nominally flat polygons. It is almost always converted immediately to another format.
The Initial Graphics Exchange Specification (IGES) format is equivalent to the STEP format, in that it is commonly used to transfer CAD models from one software program to another. It is supported by almost every CAD software used today.
For general CAD use, and in 3D printing workflows, it is worse than STEP in absolutely every way. Do not use this format unless STEP isn't an option. Files are highly error prone, and often completely un-editable.
The AMF (Additive Manufacturing File) format once looked promising as the logical successor to the STL file, until the 3MF format came along. Everything that AMF does, 3MF does better, so it is unlikely to continue on into the next decade.
VRML (Virtual Reality Modeling Language) are useful for a particular type of 3D printing called PolyJet, owned by Stratasys. When producing voxel files in full colour, VRML is a convenient way to capture the data required. For most other 3D printing workflows however, the format isn't particularly useful.
There are a number of things that commonly go wrong when dealing with 3D printing files, either as the engineer who produced them, or as a machine operator working with them afterwards.
Some formats, like 3MF, are able to capture information about the units that a model has been designed in, such as inches, or millimetres. Unfortunately, some other formats don't capture this information (such as STL). Printing a file that is 25.4 times larger than it should be is frustratingly common, and so great care should always be taken to convey the scale of a design before having it manufactured.
Many of the formats mentioned above capture only a representation of the original CAD model, as it was produced using design software. This leaves room for imperfect conversions, and features can be altered or lost along the way.
In general, the fewer conversions between file formats the better, and the shorter the path from CAD software to G-code, the better. Always check generated mesh files carefully to ensure that they have accurately captured smoother surfaces, which tend to be difficult to represent in surface geometry.