At some point any 3D printing hobbyist will wonder how to edit STL files. Sometimes, the pre-downloaded STL file or your own model is good enough. In other cases, you would need to edit or repair it. There are STL editors that help users with that.
There are two types of programs that allow users to edit STL files:
How to Use Netfabb to Measure STL Files on Windows. Cura is a slicing software for 3D printers which you can use to create a 3D model and slice it into layers as G-Code for the printer. Especially for entry-level users, mastering 3D printing skills is really a daunting task. But creating STL files is of great importance because 3D prints cannot even be produced without an STL file and the print quality highly depends on the parameter settings of the files. 3D Printer Software Part 2: Sites to download STL files for 3D printing This section features a few of the most well-known STL file download sites. We also have a full article for every STL file site, marketplace and repository, including niche STL file repositories for NASA spacecraft, medical models, and more. 3D printing may seem difficult if you are a complete beginner with no experience, especially when it comes to using 3D software. This can cause people to give up before creating their finished STL files. To help you overcome this challenge and achieve your 3D printing goals, we created the following Top 11 3D software for beginners listing.
- CAD (Computer Aided Design) software. These programs aim for covering engineering and construction modeling purposes, providing precise measurements and solid modeling tools. They weren't originally developed with 3D printing in mind, although they are pretty useful for this workflow. They are not the best choice for fully fledged STL editing due to some differences in the way they represent some shapes. This article will cover some CAD programs, such as Blender, FreeCAD, SketchUp.
- Mesh editing tools. These are excellent for editing STL files, because they're developed for working with modeling and objects represented by 2D surfaces that have no filling (these objects can't be printed, although there's quite a few ways they can be solidified).
Free STL editors
3D Crafter
3D Crafter (formerly known as 3D Canvas) is a free 3D editing and animation software available only for Windows. The intuitive interface and simple controls are worth mentioning, as well as extensive animation abilities. The program supports importing and exporting a wide variety of file formats, including STL. The built-in tools make 3D Crafter a good choice for easy editing. The main shortcoming is the lack of the native ability to export STL in the free version, but you can get the Pro one rather cheaply or save files in other formats.
How to edit STL files in 3D Crafter
Opening STL files
Go to File > Import > StereoLithography (stl) and choose the object you want to import.
Editing STL files
1. Press the wheel of your mouse and move the mouse to change the view. You can also use the Orbit button in the toolbar above the model view. The Pan and Zoom buttons help as well. But if you have a mouse available, using it would be faster and more comfortable.
2. Select your part or the whole object using mouse and either right-click on the selected parts or on the rectangle in the lower-right corner of the program. It will bring the list of the options to manipulate and edit your object.
3. The left toolbar has many other tools as well.
4. You can get more tools available by changing the difficulty level in the upper toolbar from Novice tools to Intermediate or Pro Tools.
5. If you still struggle, the program has a short built-in tutorial that appears on the right when using it for the first time.
Blender
Blender is a free and open-source cross-platform 3D editing software. It's probably the most popular free 3D program on the market. It's used for creation, editing and animation of 3D models in various industries – from video game development to landscape design and construction. STL files can be easily imported and prepared, and there are many algorithms that help working with surfaces.
The program isn't easy to use, requires a learning curve and the amount of features may overwhelm new users. Blender requires a powerful PC for working with complex models but same can be said about many other CAD programs. Blender also wasn't developed with 3D printing in mind, but it's still possible to edit and repair STL files in the software.
How to edit and repair STL files in Blender
Opening STL files
1. After opening Blender there's usually a default cube present. You can delete it by placing the mouse cursor above it and pressing the 'Del' button.
2. Go to File > Import > STL, choose a file and import it.
Editing STL files
1. Switch to Edit mode. The edges of your model will now be visible.
2. Hitting Alt+L selects all elements. It will allow you to select individual points, planes and edges by pressing RMB.
3. Alt+J converts triangles into rectangles.
4. Searching for Subdivide or Un-Subdivide grants the ability to change the number of tiles.
5.Selection options Vertexes, Edge or Face select allows you to manipulate the parts of the model
6. You can search for different shapes such as Cube or Sphere to add them the model
7. You can extrude the area by using the Extrude command
8. The Boolean command can be used to cut or merge forms.
Repairing STL
1. Using the 3D Print Toolbox: Edit > Preferences > Add-Ons > Mesh: 3D Print Toolbox. It's now available in the left sidebar.
2. 3D Print Toolbox can help you fixing the issues with your STL files, the ones that prevent it from printing correctly. Most important issues are:
Overhangs requiring adding support structure.
Wall-thickness shows the thinnest walls that would be problematic to print.
Manifolds.
3. Pressing Check All checks for every issues. The list of errors is located at the bottom of the toolbox.
4. Pressing Isolated repairs edges and vertices.
5. The Make Manifold button creates mesh manifold.
Exporting STL
Go to File > Export > Stl to export your model.
Here's one of the tutorials that show how to fix mesh issues in Blender:
FreeCAD
FreeCAD is a free and open-source (LGPLv2+) cross-platform CAD software. It supports full parametric modeling as well as several 2D tools handy for drafting purposes. There are various add-ons that extends the software's abilities.
FreeCAD is not the best solution for STL editing and repairing but it's still pretty functional. Among its shortcomings are the lack of a full move-around 3D view and the problems with intercepting structures.
How to edit and repair STL files in FreeCAD
Opening STL files
1. Open the program and go to File > New.
2. Click File > Import and choose the STL file. Other formats such as OBJ and AST are also supported. FreeCAD can open other mesh formats such as OBJ and AST as well.
3. Change the workbench to Part.
4. Select the model you just imported in the Model window.
5. Go to Part > Create shape from mesh. The object will be split into several triangles. The precision of the process can be changed, but 0.10 will be good enough for the majority of objects.
6. The mesh can now be deleted or hidden.
7. Click Advanced utility and select Solid from shell. Choose any object with triangles, click on it and then click on the Create button. Click Close. The object is now solidified.
8. The old shape can now be deleted and hidden. Your solid object is ready for editing.
Editing STL files
1. Change the workbench to Part Design.
2. Choose where you want to add or remove material, click on the surface so it's highlighted.
3. Click Create Sketch.
4. Create a shape you want to manipulate using the tools for drawing.
5. Click Close. Double-click on the model tree if you want to edit your sketch.
6. You can use the Pad for extrusion. And the tool called Pocket allows you to cut.
Repairing STL
1. Switch workbench to Mesh Design.
2. Go to Meshes > Analyze > Evaluate & repair mesh.
3. You can choose any possible defect in the list and click the Analyze button.
Choosing the All above tests together window and clicking Analyze works like a 'select all' option and looks for all of the possible defects.
4. Click Repair.
3d Stl Software Free
Exporting STL
Select the last feature in the model tree. Then go to File > Export and choose Mesh formats.
Here's a good video (no commentary) that shows FreeCAD's editing abilities:
MeshLab
MeshLab is a free and open-source cross-platform STL editing and repairing software. It doesn't even have an option to create new objects but the program is a powerful editor. The meshes can be converted and merged and later inspected and repaired. MeshLabs supports working with point clouds and can import and export many different file types, including 3DS, OBJ, OFF and, of course, STL.
How to edit and repair STL files in MeshLab
Opening STL files
Go to File > Import Mesh and select your model.
Editing STL files
MeshLab can't create new objects but it has various editing tools, especially for merging.
Merging two models:
1. Load both models
2. Click on Show Layers. Select the models.
3. Select the object in the Layer menu and click on Manipulator Tools to manipulate it.
4. Pressing T uses the Transform option, R allows you to rotate the object and pressing S gives you the access to scaling options.
5. Rotating the view changes the axis you're working in. Use arrows and drag-and-drop functions to manipulate the objects.
6. When everything is where it should be, press RMB after selecting any part of the combined mesh and choose Flatten Visible Layers. Check the first three boxes and click on Apply.
How to delete a section:
1. Click on Select Face.
2. Click Delete the Current Selected Face and Vertices.
How to repair your object or search for holes:
1. If your model is manifold, click on Fill Hole. Apple drivers for windows 10 download.
2. A window will appear and show you all the holes. You can select the ones you want to fill, then click on Fill and then on Accept once they're highlighted.
Repairing STL
1. Go to Filters > Quality Measures and Computations > Compute Geometric Measures if you want to check if your object is manifold. A volume file or an error will appear in a window.
2. If it's not manifold (watertight), go to Filters > Cleaning and Repairing > Merge Close Vertices, and apply it.
Go to Filters > Cleaning and Repairing > Remove Duplicate Faces, click Apply.
Go to Filters > Cleaning and Repairing > Remove Duplicated Vertices.
3. Check the file again.
Exporting STL
Go to File > Export Mesh.
This video shows how to repair STL file using MeshLab:
Meshmixer
Meshmixer is a free and open-source 3D printing software. It's available for MacOS and Windows and developed by Autodesk. Rich functionality allows for various ways to work with STL files – including editing and repairing (the older versions even used to have a built-in slicer tool). The developers call it a 'state-of-the-art software for working with triangle meshes'. And the amount of features seems to prove that – hollowing, support structure branching and other abilities are useful for editing your meshes.
How to edit and repair STL files in Meshmixer
Opening STL files
1. Click on Import and choose the model.
2. Go to Edit > Make solid to solidify your object. You can also make it hollow by choosing the 'Hollow' option
Editing STL files
1. The Select option will let you mark the parts of the object.
2. Pressing Del removes the elements you marked.
3. The Meshmix option will let you manipulate various forms. They can be combined by using the Sculpt tool. You can switch to using more complex forms. The objects can be easily drag-and-dropped and rotate by using colored arrows. more models by switching from basic forms to for example arms or legs. Drag and drop the object you want to insert. Use different colored arrows to rotate or move your model.
4. Clicking on Sculpt will let you extrude or smoothen different parts.
Repairing STL
1. In the sidebar, click on Print. It will show various tools for repairing and preparation for 3D printing.
2. Select your 3D Printer from the list. If yours is absent, you can add it manually by providing its specs.
3. Click on Repair Selected. This will automatically fix all of the issues in the mesh. You can also hollow it and adjust the minimum wall thickness.
4. Click Add Support for making a support structure. Change the settings according your printer's requirements and click Generate Support. Then choose Done.
5. Once everything is ready, click Send to Printer.
Exporting STL
Go to File > Export and select the .Stl option.
This tutorial demonstrates how you can fix STL with Meshmixer:
SculptGL
SculptGL is a free web-based 3D sculpting software. It's based on WebGL and is rather minimal, including only the necessary tools and features but still manages to be powerful enough. Obviously, it cannot be compared to much more extensive competitors such as Zbrush. But it's the best STL editor for those interested in 3D sculpting.
While it's great for editing, it lacks the ability to repair STL files and sometimes the finished result is non-manifold, which will require using repairing programs (such as those described in the article).
How to edit STL files in SculptGL
Opening STL files
1. Delete the default shape by clicking Scene > Clear Scene.
Stl Printer Files
2. Go to File (import/export) > Add (obj, sgl, ply, stl) to open an STL file.
Editing STL files
1. Use the Radius slider in the Sculpting & Painting toolbar to control the size of the tool. The tools are used to define the key features of your model. Use the smaller ones for more precise editing.
2. Pressing the Symmetry button will help you to streamline the process by mirroring the changes you make in the other half of the mesh.
You can increase the resolution if you run into problems or need to work on smaller details. There are two different ways to achieve so.
Subdividing: go to Topology > Multiresolution > Subdivide.
Remeshing: go to Topology > Voxel Remeshing > Resolution, select the resolution and click the Remesh button.
Exporting STL
Go to File (import/export) > Save STL.
SketchUp Make
SketchUp is a paid 3D modeling and editing CAD software available for Windows and macOS. It has two free versions – web-based SketchUp Free (which won't be covered in this article, because it doesn't support STL editing and repair) and a discontinued (but still available at the website) version called SketchUp Make. The program is powerful and is widely used by the professionals. Its abilities can be extended by various plugins, including the STL plugin which will be covered below.
How to edit and repair STL files in SketchUp Make
Installing the STL plugin
1. Go to Window > Extension Warehouse.
2. Search for SketchUp STL, log in using Google account and install it.
Opening STL files
Go to File > Import… Choose the STL type. Browse for your model. Browse for the object you want to open and import it.
Editing STL files
1. The Eraser tool can be used to remove the triangles' edges, so at the end you will get a rectangle. The Pencil will let you to create new sketches.
2. The Push/Pull feature and the Move tool allow you to manipulate the model after finishing the sketches.
Repairing STL
SketchUp lacks the STL repair ability out of the box, but you can get the feature using various plugins. We recommend installing the free plugin called Solid Inspector.
1. Install the Solid Inspector Plugin by going to Extension Warehouse.
2. Select the mesh and click the Solid Inspector button that is now available at the toolbar.
3. The list of errors will appear.
4. The Tab feature (Shift+Tab) will help you check all the errors of the STL file and zoom.
5. The errors can be automatically fixed by pressing Fix or Fix All buttons.
Cleanup is another useful plugin that can help deleting hidden or redundant geometrical feature.
Exporting STL
Go to File > Export and choose .stl format.
This video shows how to work with STL files in SketchUp:
Wings 3D
Wings 3D is a free and open-source (BSD licensed) 3D software. It's a rather simple and minimalistic program, which is pretty useful for creating basic models before exporting them to more powerful editors (such as Blenders). It works with its own .wings format, but it supports various other file formats, including STL and OBJ. The software lacks repairing features, but it's STL editing capabilities are very useful and impressive for such a simple program. The functionality of Wings 3D can be extended by using different plugins.
How to edit STL files in Wings 3D
Opening STL files
Go to File > Import > StereoLithography (.stl)… and choose the object you want to import. Keep in mind that Wings 3D will open your model to a random scaling, since the program doesn't measure the size of the imported model.
Editing STL files
1. The toolbar above the model window shows different selection modes: Vertex, Edges, Face and Body. Choose one you want to work in.
2. Select the part or the whole object so it's highlighted.
3. Press RMB and see the options available. There will be a long list covering everything from moving and rotating to more complex abilities.
4. Move and rotate options are rather intuitive – you just click on them and choose the axis you want to work in. After that you just manipulate the elements with your mouse.
5. The Absolute Commands option allows you to precisely manipulate the object setting the exact parameters.
6. While working in the Face Selection mode, right-clicking the chosen parts will show the Tesselate option. It will make possible to convert triangles of your object to rectangles, vice-versa and other options.
Exporting STL
Go to File > Export > StereoLithography (.stl)…
If you only want to export some parts, select the ones you need and go to File > Export Selected > StereoLithography (.stl)…
Here's a tutorial covering the first steps of using Wings 3D:
A CAD representation of a torus (shown as two concentric red circles) and an STL approximation of the same shape (composed of triangular planes) | |
Filename extension | |
---|---|
Internet media type | |
Developed by | 3D Systems |
Initial release | 1987 |
Type of format | Stereolithography |
STL is a file format native to the stereolithographyCAD software created by 3D Systems.[1][2][3] STL has several backronyms such as 'Standard Triangle Language' and 'Standard Tessellation Language'.[4] This file format is supported by many other software packages; it is widely used for rapid prototyping, 3D printing and computer-aided manufacturing.[5] STL files describe only the surface geometry of a three-dimensional object without any representation of color, texture or other common CAD model attributes. The STL format specifies both ASCII and binary representations. Binary files are more common, since they are more compact.[6]
An STL file describes a raw, unstructured triangulated surface by the unitnormal and vertices (ordered by the right-hand rule) of the triangles using a three-dimensional Cartesian coordinate system. In the original specification, all STL coordinates were required to be positive numbers, but this restriction is no longer enforced and negative coordinates are commonly encountered in STL files today. STL files contain no scale information, and the units are arbitrary.[7]
ASCII STL[edit]
An ASCII STL file begins with the line
where name is an optional string (though if name is omitted there must still be a space after solid). The file continues with any number of triangles, each represented as follows:
where each n or v is a floating-point number in sign-mantissa-'e'-sign-exponent format, e.g., '2.648000e-002'. The file concludes with
The structure of the format suggests that other possibilities exist (e.g., facets with more than one 'loop', or loops with more than three vertices). In practice, however, all facets are simple triangles.
White space (spaces, tabs, newlines) may be used anywhere in the file except within numbers or words. The spaces between 'facet' and 'normal' and between 'outer' and 'loop' are required.[6]
Binary STL[edit]
Because ASCII STL files can become very large, a binary version of STL exists. A binary STL file has an 80-character header (which is generally ignored, but should never begin with 'solid' because that may lead some software to assume that this is an ASCII STL file). Following the header is a 4-byte little-endian unsigned integer indicating the number of triangular facets in the file. Following that is data describing each triangle in turn. The file simply ends after the last triangle.
Each triangle is described by twelve 32-bit floating-point numbers: three for the normal and then three for the X/Y/Z coordinate of each vertex – just as with the ASCII version of STL. After these follows a 2-byte ('short') unsigned integer that is the 'attribute byte count' – in the standard format, this should be zero because most software does not understand anything else.[6]
Floating-point numbers are represented as IEEE floating-point numbers and are assumed to be little-endian, although this is not stated in documentation.
Color in binary STL[edit]
There are at least two non-standard variations on the binary STL format for adding color information:
- The VisCAM and SolidView software packages use the two 'attribute byte count' bytes at the end of every triangle to store a 15-bit RGB color:
- bits 0 to 4 are the intensity level for blue (0 to 31),
- bits 5 to 9 are the intensity level for green (0 to 31),
- bits 10 to 14 are the intensity level for red (0 to 31),
- bit 15 is 1 if the color is valid, or 0 if the color is not valid (as with normal STL files).
- The Materialise Magics software uses the 80-byte header at the top of the file to represent the overall color of the entire part. If color is used, then somewhere in the header should be the ASCII string 'COLOR=' followed by four bytes representing red, green, blue and alpha channel (transparency) in the range 0–255. This is the color of the entire object, unless overridden at each facet. Magics also recognizes a material description; a more detailed surface characteristic. Just after 'COLOR=RGBA' specification should be another ASCII string ',MATERIAL=' followed by three colors (3×4 bytes): first is a color of diffuse reflection, second is a color of specular highlight, and third is an ambient light. Material settings are preferred over color. The per-facet color is represented in the two 'attribute byte count' bytes as follows:
- bits 0 to 4 are the intensity level for red (0 to 31),
- bits 5 to 9 are the intensity level for green (0 to 31),
- bits 10 to 14 are the intensity level for blue (0 to 31),
- bit 15 is 0 if this facet has its own unique color, or 1 if the per-object color is to be used.
The red/green/blue ordering within those two bytes is reversed in these two approaches – so while these formats could easily have been compatible, the reversal of the order of the colors means that they are not – and worse still, a generic STL file reader cannot automatically distinguish between them. There is also no way to have facets be selectively transparent because there is no per-facet alpha value – although in the context of current rapid prototyping machinery, this is not important.
The facet normal[edit]
In both ASCII and binary versions of STL, the facet normal should be a unit vector pointing outwards from the solid object. In most software this may be set to (0,0,0), and the software will automatically calculate a normal based on the order of the triangle vertices using the 'right-hand rule'. Some STL loaders (e.g. the STL plugin for Art of Illusion) check that the normal in the file agrees with the normal they calculate using the right-hand rule and warn the user when it does not. Other software may ignore the facet normal entirely and use only the right-hand rule. Although it is rare to specify a normal that cannot be calculated using the right-hand rule, in order to be entirely portable, a file should both provide the facet normal and order the vertices appropriately.A notable exception is SolidWorks, which uses the normal for shading effects.
Use in 3D printing[edit]
3D printers build objects by solidifying one layer at a time. This requires a series of closed 2D contours that are filled in with solidified material as the layers are fused together. A natural file format for such a machine would be a series of closed polygons corresponding to different Z-values. However, since it is possible to vary the layer thicknesses for a faster though less precise build, it was easier to define the model to be built as a closed polyhedron that can be sliced at the necessary horizontal levels.
The STL file format appears capable of defining a polyhedron with any polygonal facet, but in practice it is only ever used for triangles, which means that much of the syntax of the ASCII protocol is superfluous.
Stl 3d Printing Software
To properly form a 3D volume, the surface represented by any STL files must be closed and connected, where every edge is part of exactly two triangles, and not self-intersecting. Since the STL syntax does not enforce this property, it can be ignored for applications where the closedness does not matter. The closedness only matters insofar as the software that slices the triangles requires it to ensure that the resulting 2D polygons are closed. Sometimes such software can be written to clean up small discrepancies by moving vertices that are close together so that they coincide. The results are not predictable, but it is often sufficient.
Use in other fields[edit]
STL file format is simple and easy to output. Consequently, many computer-aided design systems can output the STL file format. Although the output is simple to produce, some connectivity information is discarded.
Many computer-aided manufacturing systems require triangulated models. STL format is not the most memory- and computationally efficient method for transferring this data, but STL is often used to import the triangulated geometry into the CAM system. The format is commonly available, so the CAM system will use it. In order to use the data, the CAM system may have to reconstruct the connectivity. As STL files do not save the physical dimension of a unit, a CAM system will ask for it. Typical units are mm and inch.
STL can also be used for interchanging data between CAD/CAM systems and computational environments such as Mathematica.
Representation of curved surfaces[edit]
It is not possible to use triangles to perfectly represent curved surfaces. To compensate, users often save enormous STL files to reduce the inaccuracy. Native formats of 3D design software files use mathematical surfaces to preserve detail losslessly in small files.
History[edit]
STL was invented by the Albert Consulting Group for 3D Systems in 1987.[8] The format was developed for 3D Systems' first commercial 3D printers. Since its initial release, the format remained relatively unchanged for 22 years. In 2009, an update to the format, dubbed STL 2.0, was proposed.[9][10]
4. Select the model you just imported in the Model window.
5. Go to Part > Create shape from mesh. The object will be split into several triangles. The precision of the process can be changed, but 0.10 will be good enough for the majority of objects.
6. The mesh can now be deleted or hidden.
7. Click Advanced utility and select Solid from shell. Choose any object with triangles, click on it and then click on the Create button. Click Close. The object is now solidified.
8. The old shape can now be deleted and hidden. Your solid object is ready for editing.
Editing STL files
1. Change the workbench to Part Design.
2. Choose where you want to add or remove material, click on the surface so it's highlighted.
3. Click Create Sketch.
4. Create a shape you want to manipulate using the tools for drawing.
5. Click Close. Double-click on the model tree if you want to edit your sketch.
6. You can use the Pad for extrusion. And the tool called Pocket allows you to cut.
Repairing STL
1. Switch workbench to Mesh Design.
2. Go to Meshes > Analyze > Evaluate & repair mesh.
3. You can choose any possible defect in the list and click the Analyze button.
Choosing the All above tests together window and clicking Analyze works like a 'select all' option and looks for all of the possible defects.
4. Click Repair.
3d Stl Software Free
Exporting STL
Select the last feature in the model tree. Then go to File > Export and choose Mesh formats.
Here's a good video (no commentary) that shows FreeCAD's editing abilities:
MeshLab
MeshLab is a free and open-source cross-platform STL editing and repairing software. It doesn't even have an option to create new objects but the program is a powerful editor. The meshes can be converted and merged and later inspected and repaired. MeshLabs supports working with point clouds and can import and export many different file types, including 3DS, OBJ, OFF and, of course, STL.
How to edit and repair STL files in MeshLab
Opening STL files
Go to File > Import Mesh and select your model.
Editing STL files
MeshLab can't create new objects but it has various editing tools, especially for merging.
Merging two models:
1. Load both models
2. Click on Show Layers. Select the models.
3. Select the object in the Layer menu and click on Manipulator Tools to manipulate it.
4. Pressing T uses the Transform option, R allows you to rotate the object and pressing S gives you the access to scaling options.
5. Rotating the view changes the axis you're working in. Use arrows and drag-and-drop functions to manipulate the objects.
6. When everything is where it should be, press RMB after selecting any part of the combined mesh and choose Flatten Visible Layers. Check the first three boxes and click on Apply.
How to delete a section:
1. Click on Select Face.
2. Click Delete the Current Selected Face and Vertices.
How to repair your object or search for holes:
1. If your model is manifold, click on Fill Hole. Apple drivers for windows 10 download.
2. A window will appear and show you all the holes. You can select the ones you want to fill, then click on Fill and then on Accept once they're highlighted.
Repairing STL
1. Go to Filters > Quality Measures and Computations > Compute Geometric Measures if you want to check if your object is manifold. A volume file or an error will appear in a window.
2. If it's not manifold (watertight), go to Filters > Cleaning and Repairing > Merge Close Vertices, and apply it.
Go to Filters > Cleaning and Repairing > Remove Duplicate Faces, click Apply.
Go to Filters > Cleaning and Repairing > Remove Duplicated Vertices.
3. Check the file again.
Exporting STL
Go to File > Export Mesh.
This video shows how to repair STL file using MeshLab:
Meshmixer
Meshmixer is a free and open-source 3D printing software. It's available for MacOS and Windows and developed by Autodesk. Rich functionality allows for various ways to work with STL files – including editing and repairing (the older versions even used to have a built-in slicer tool). The developers call it a 'state-of-the-art software for working with triangle meshes'. And the amount of features seems to prove that – hollowing, support structure branching and other abilities are useful for editing your meshes.
How to edit and repair STL files in Meshmixer
Opening STL files
1. Click on Import and choose the model.
2. Go to Edit > Make solid to solidify your object. You can also make it hollow by choosing the 'Hollow' option
Editing STL files
1. The Select option will let you mark the parts of the object.
2. Pressing Del removes the elements you marked.
3. The Meshmix option will let you manipulate various forms. They can be combined by using the Sculpt tool. You can switch to using more complex forms. The objects can be easily drag-and-dropped and rotate by using colored arrows. more models by switching from basic forms to for example arms or legs. Drag and drop the object you want to insert. Use different colored arrows to rotate or move your model.
4. Clicking on Sculpt will let you extrude or smoothen different parts.
Repairing STL
1. In the sidebar, click on Print. It will show various tools for repairing and preparation for 3D printing.
2. Select your 3D Printer from the list. If yours is absent, you can add it manually by providing its specs.
3. Click on Repair Selected. This will automatically fix all of the issues in the mesh. You can also hollow it and adjust the minimum wall thickness.
4. Click Add Support for making a support structure. Change the settings according your printer's requirements and click Generate Support. Then choose Done.
5. Once everything is ready, click Send to Printer.
Exporting STL
Go to File > Export and select the .Stl option.
This tutorial demonstrates how you can fix STL with Meshmixer:
SculptGL
SculptGL is a free web-based 3D sculpting software. It's based on WebGL and is rather minimal, including only the necessary tools and features but still manages to be powerful enough. Obviously, it cannot be compared to much more extensive competitors such as Zbrush. But it's the best STL editor for those interested in 3D sculpting.
While it's great for editing, it lacks the ability to repair STL files and sometimes the finished result is non-manifold, which will require using repairing programs (such as those described in the article).
How to edit STL files in SculptGL
Opening STL files
1. Delete the default shape by clicking Scene > Clear Scene.
Stl Printer Files
2. Go to File (import/export) > Add (obj, sgl, ply, stl) to open an STL file.
Editing STL files
1. Use the Radius slider in the Sculpting & Painting toolbar to control the size of the tool. The tools are used to define the key features of your model. Use the smaller ones for more precise editing.
2. Pressing the Symmetry button will help you to streamline the process by mirroring the changes you make in the other half of the mesh.
You can increase the resolution if you run into problems or need to work on smaller details. There are two different ways to achieve so.
Subdividing: go to Topology > Multiresolution > Subdivide.
Remeshing: go to Topology > Voxel Remeshing > Resolution, select the resolution and click the Remesh button.
Exporting STL
Go to File (import/export) > Save STL.
SketchUp Make
SketchUp is a paid 3D modeling and editing CAD software available for Windows and macOS. It has two free versions – web-based SketchUp Free (which won't be covered in this article, because it doesn't support STL editing and repair) and a discontinued (but still available at the website) version called SketchUp Make. The program is powerful and is widely used by the professionals. Its abilities can be extended by various plugins, including the STL plugin which will be covered below.
How to edit and repair STL files in SketchUp Make
Installing the STL plugin
1. Go to Window > Extension Warehouse.
2. Search for SketchUp STL, log in using Google account and install it.
Opening STL files
Go to File > Import… Choose the STL type. Browse for your model. Browse for the object you want to open and import it.
Editing STL files
1. The Eraser tool can be used to remove the triangles' edges, so at the end you will get a rectangle. The Pencil will let you to create new sketches.
2. The Push/Pull feature and the Move tool allow you to manipulate the model after finishing the sketches.
Repairing STL
SketchUp lacks the STL repair ability out of the box, but you can get the feature using various plugins. We recommend installing the free plugin called Solid Inspector.
1. Install the Solid Inspector Plugin by going to Extension Warehouse.
2. Select the mesh and click the Solid Inspector button that is now available at the toolbar.
3. The list of errors will appear.
4. The Tab feature (Shift+Tab) will help you check all the errors of the STL file and zoom.
5. The errors can be automatically fixed by pressing Fix or Fix All buttons.
Cleanup is another useful plugin that can help deleting hidden or redundant geometrical feature.
Exporting STL
Go to File > Export and choose .stl format.
This video shows how to work with STL files in SketchUp:
Wings 3D
Wings 3D is a free and open-source (BSD licensed) 3D software. It's a rather simple and minimalistic program, which is pretty useful for creating basic models before exporting them to more powerful editors (such as Blenders). It works with its own .wings format, but it supports various other file formats, including STL and OBJ. The software lacks repairing features, but it's STL editing capabilities are very useful and impressive for such a simple program. The functionality of Wings 3D can be extended by using different plugins.
How to edit STL files in Wings 3D
Opening STL files
Go to File > Import > StereoLithography (.stl)… and choose the object you want to import. Keep in mind that Wings 3D will open your model to a random scaling, since the program doesn't measure the size of the imported model.
Editing STL files
1. The toolbar above the model window shows different selection modes: Vertex, Edges, Face and Body. Choose one you want to work in.
2. Select the part or the whole object so it's highlighted.
3. Press RMB and see the options available. There will be a long list covering everything from moving and rotating to more complex abilities.
4. Move and rotate options are rather intuitive – you just click on them and choose the axis you want to work in. After that you just manipulate the elements with your mouse.
5. The Absolute Commands option allows you to precisely manipulate the object setting the exact parameters.
6. While working in the Face Selection mode, right-clicking the chosen parts will show the Tesselate option. It will make possible to convert triangles of your object to rectangles, vice-versa and other options.
Exporting STL
Go to File > Export > StereoLithography (.stl)…
If you only want to export some parts, select the ones you need and go to File > Export Selected > StereoLithography (.stl)…
Here's a tutorial covering the first steps of using Wings 3D:
A CAD representation of a torus (shown as two concentric red circles) and an STL approximation of the same shape (composed of triangular planes) | |
Filename extension | |
---|---|
Internet media type | |
Developed by | 3D Systems |
Initial release | 1987 |
Type of format | Stereolithography |
STL is a file format native to the stereolithographyCAD software created by 3D Systems.[1][2][3] STL has several backronyms such as 'Standard Triangle Language' and 'Standard Tessellation Language'.[4] This file format is supported by many other software packages; it is widely used for rapid prototyping, 3D printing and computer-aided manufacturing.[5] STL files describe only the surface geometry of a three-dimensional object without any representation of color, texture or other common CAD model attributes. The STL format specifies both ASCII and binary representations. Binary files are more common, since they are more compact.[6]
An STL file describes a raw, unstructured triangulated surface by the unitnormal and vertices (ordered by the right-hand rule) of the triangles using a three-dimensional Cartesian coordinate system. In the original specification, all STL coordinates were required to be positive numbers, but this restriction is no longer enforced and negative coordinates are commonly encountered in STL files today. STL files contain no scale information, and the units are arbitrary.[7]
ASCII STL[edit]
An ASCII STL file begins with the line
where name is an optional string (though if name is omitted there must still be a space after solid). The file continues with any number of triangles, each represented as follows:
where each n or v is a floating-point number in sign-mantissa-'e'-sign-exponent format, e.g., '2.648000e-002'. The file concludes with
The structure of the format suggests that other possibilities exist (e.g., facets with more than one 'loop', or loops with more than three vertices). In practice, however, all facets are simple triangles.
White space (spaces, tabs, newlines) may be used anywhere in the file except within numbers or words. The spaces between 'facet' and 'normal' and between 'outer' and 'loop' are required.[6]
Binary STL[edit]
Because ASCII STL files can become very large, a binary version of STL exists. A binary STL file has an 80-character header (which is generally ignored, but should never begin with 'solid' because that may lead some software to assume that this is an ASCII STL file). Following the header is a 4-byte little-endian unsigned integer indicating the number of triangular facets in the file. Following that is data describing each triangle in turn. The file simply ends after the last triangle.
Each triangle is described by twelve 32-bit floating-point numbers: three for the normal and then three for the X/Y/Z coordinate of each vertex – just as with the ASCII version of STL. After these follows a 2-byte ('short') unsigned integer that is the 'attribute byte count' – in the standard format, this should be zero because most software does not understand anything else.[6]
Floating-point numbers are represented as IEEE floating-point numbers and are assumed to be little-endian, although this is not stated in documentation.
Color in binary STL[edit]
There are at least two non-standard variations on the binary STL format for adding color information:
- The VisCAM and SolidView software packages use the two 'attribute byte count' bytes at the end of every triangle to store a 15-bit RGB color:
- bits 0 to 4 are the intensity level for blue (0 to 31),
- bits 5 to 9 are the intensity level for green (0 to 31),
- bits 10 to 14 are the intensity level for red (0 to 31),
- bit 15 is 1 if the color is valid, or 0 if the color is not valid (as with normal STL files).
- The Materialise Magics software uses the 80-byte header at the top of the file to represent the overall color of the entire part. If color is used, then somewhere in the header should be the ASCII string 'COLOR=' followed by four bytes representing red, green, blue and alpha channel (transparency) in the range 0–255. This is the color of the entire object, unless overridden at each facet. Magics also recognizes a material description; a more detailed surface characteristic. Just after 'COLOR=RGBA' specification should be another ASCII string ',MATERIAL=' followed by three colors (3×4 bytes): first is a color of diffuse reflection, second is a color of specular highlight, and third is an ambient light. Material settings are preferred over color. The per-facet color is represented in the two 'attribute byte count' bytes as follows:
- bits 0 to 4 are the intensity level for red (0 to 31),
- bits 5 to 9 are the intensity level for green (0 to 31),
- bits 10 to 14 are the intensity level for blue (0 to 31),
- bit 15 is 0 if this facet has its own unique color, or 1 if the per-object color is to be used.
The red/green/blue ordering within those two bytes is reversed in these two approaches – so while these formats could easily have been compatible, the reversal of the order of the colors means that they are not – and worse still, a generic STL file reader cannot automatically distinguish between them. There is also no way to have facets be selectively transparent because there is no per-facet alpha value – although in the context of current rapid prototyping machinery, this is not important.
The facet normal[edit]
In both ASCII and binary versions of STL, the facet normal should be a unit vector pointing outwards from the solid object. In most software this may be set to (0,0,0), and the software will automatically calculate a normal based on the order of the triangle vertices using the 'right-hand rule'. Some STL loaders (e.g. the STL plugin for Art of Illusion) check that the normal in the file agrees with the normal they calculate using the right-hand rule and warn the user when it does not. Other software may ignore the facet normal entirely and use only the right-hand rule. Although it is rare to specify a normal that cannot be calculated using the right-hand rule, in order to be entirely portable, a file should both provide the facet normal and order the vertices appropriately.A notable exception is SolidWorks, which uses the normal for shading effects.
Use in 3D printing[edit]
3D printers build objects by solidifying one layer at a time. This requires a series of closed 2D contours that are filled in with solidified material as the layers are fused together. A natural file format for such a machine would be a series of closed polygons corresponding to different Z-values. However, since it is possible to vary the layer thicknesses for a faster though less precise build, it was easier to define the model to be built as a closed polyhedron that can be sliced at the necessary horizontal levels.
The STL file format appears capable of defining a polyhedron with any polygonal facet, but in practice it is only ever used for triangles, which means that much of the syntax of the ASCII protocol is superfluous.
Stl 3d Printing Software
To properly form a 3D volume, the surface represented by any STL files must be closed and connected, where every edge is part of exactly two triangles, and not self-intersecting. Since the STL syntax does not enforce this property, it can be ignored for applications where the closedness does not matter. The closedness only matters insofar as the software that slices the triangles requires it to ensure that the resulting 2D polygons are closed. Sometimes such software can be written to clean up small discrepancies by moving vertices that are close together so that they coincide. The results are not predictable, but it is often sufficient.
Use in other fields[edit]
STL file format is simple and easy to output. Consequently, many computer-aided design systems can output the STL file format. Although the output is simple to produce, some connectivity information is discarded.
Many computer-aided manufacturing systems require triangulated models. STL format is not the most memory- and computationally efficient method for transferring this data, but STL is often used to import the triangulated geometry into the CAM system. The format is commonly available, so the CAM system will use it. In order to use the data, the CAM system may have to reconstruct the connectivity. As STL files do not save the physical dimension of a unit, a CAM system will ask for it. Typical units are mm and inch.
STL can also be used for interchanging data between CAD/CAM systems and computational environments such as Mathematica.
Representation of curved surfaces[edit]
It is not possible to use triangles to perfectly represent curved surfaces. To compensate, users often save enormous STL files to reduce the inaccuracy. Native formats of 3D design software files use mathematical surfaces to preserve detail losslessly in small files.
History[edit]
STL was invented by the Albert Consulting Group for 3D Systems in 1987.[8] The format was developed for 3D Systems' first commercial 3D printers. Since its initial release, the format remained relatively unchanged for 22 years. In 2009, an update to the format, dubbed STL 2.0, was proposed.[9][10]
See also[edit]
- 3D Manufacturing Format (3MF), a standard for 3D file manufacturing
- Additive Manufacturing File Format (AMF), a standard with support for color, multiple materials, and constellations
- PLY (file format), an alternative file format
- Wavefront .obj file, a 3D geometry definition file format with .obj file extension
- X3D, a royalty-free ISO standard for 3D computer graphics
References[edit]
- ^StereoLithography Interface Specification, 3D Systems, Inc., July 1988
- ^StereoLithography Interface Specification, 3D Systems, Inc., October 1989
- ^SLC File Specification, 3D Systems, Inc., 1994
- ^Grimm, Todd (2004), User's Guide to Rapid Prototyping, Society of Manufacturing Engineers, p. 55, ISBN0-87263-697-6. Many names are used for the format: for example, 'standard triangle language', 'stereolithography language', and 'stereolithography tesselation language'. Page 55 states, 'Chuck Hull, the inventor of stereolithography and 3D Systems' founder, reports that the file extension is for stereolithography.'
- ^Chua, C. K; Leong, K. F.; Lim, C. S. (2003), Rapid Prototyping: Principles and Applications (2nd ed.), World Scientific Publishing Co, ISBN981-238-117-1 Chapter 6, Rapid Prototyping Formats. Page 237, 'The STL (STeroLithography) file, as the de facto standard, has been used in many, if not all, rapid prototyping systems.' Section 6.2 STL File Problems. Section 6.4 STL File Repair.
- ^ abcBurns, Marshall (1993). Automated Fabrication. Prentice Hall. ISBN978-0-13-119462-5.
- ^fabbers.com Historical resource on 3D printing, The StL Format: Standard Data Format for Fabbers, reprinted from Marshall Burns, Automated Fabrication, http://www.ennex.com/~fabbers/StL.asp stating, 'The object represented must be located in the all-positive octant. In other words, all vertex coordinates must be positive-definite (nonnegative and nonzero) numbers. The StL file does not contain any scale information; the coordinates are in arbitrary units.'
- ^'STL File Format for 3D Printing - Explained in Simple Terms'. All3DP. 17 November 2016. Retrieved 5 May 2017.
- ^'STL 2.0 May Replace Old, Limited File Format'. RapidToday. Retrieved 5 May 2017.
- ^Hiller, Jonathan D.; Lipson, Hod (2009). 'STL 2.0: A Proposal for a Universal Multi-Material Additive Manufacturing File Format'(PDF). Cornell University. Retrieved 5 May 2017.
External links[edit]
Stl Files For 3d Printing
- The STL Format - Standard Data Format for Fabbers