File Optimization
The platform automatically performs a mesh optimization after a 3D file has been uploaded.
Parametric File Formats
Parametric file format such as “.stp“ and “.iges“ contain surface representations of a 3D model. Although this representation provides an extremely precise and compact description of the model, it is not suitable for 3D printing. Our platform automatically converts surface representations into triangular meshes and proceeds with mesh optimization.
Make sure that the surfaces of a single object in your parametric file are joined together before uploading your file. Conversion may fail otherwise.
Mesh File Formats
A mesh is a triangulated approximation of a 3D surface and is a suitable representation for any 3D printer on the market. The most common mesh file formats are “.stl“, “.wrl“ and “.obj“. A mesh file does not require any pre-processing and is immediately suitable for mesh optimization.
Mesh Optimization
Mesh optimization will automatically start after the upload of a mesh file or the upload and the conversion of a parametric file.
Goal
The goal of mesh optimization is to ensure that your file is printable and that the outcome has the best possible quality.
Minimum requirements for printability
Printers of several manufacturers will reject the 3D model if the following requirements are not met:
Manifoldness or Watertightness:
Manifold meshes are characterized by strong connectivity. In simple words, each triangle of a mesh should be connected to exactly three neighbor triangles.
Strong connectivity guarantees that none of the following problems occurs:Holes
Redundant triangles
Merged objects
Correct triangle orientation:
Meshes with correct triangle orientation uniquely define the inside and the outside of the object. If this requirement is not met, printers may not be able to correctly distinguish between printing volume and empty space. Triangles with incorrect orientation (in black) may also be visualized incorrectly by CAD programs.
Requirements for best surface quality
Absence of intersections:
For a high quality printout, the volume of each object needs to be uniquely defined, but self intersecting objects may define the same volume multiple times .Although many printers accept files with self intersections, the surface quality of the final printout may be negatively impacted. Additionally, computing the volume and surface area of such meshes for further printability analysis yields incorrect results.
Improvements in version 22.0.x
Higher success rate: Up to 33% higher optimization success rate on heavily broken 3D models.
Smart false positive detection: In the old algorithm some files were considered repaired although significant parts of the model were removed. The new algorithm is 14 times more accurate in detecting and handling such cases.
Faster printable files recognition: The new algorithm is up to 50% faster for large files, avoiding unnecessary optimizations on already printable models.
Better quality: Internal triangles are being removed more carefully and consistently now, improving print quality. Self-intersections are resolved by triangle splitting instead of triangle removal, providing a more accurate result.
Better hardware utilization: Switching to a higher resource package will now reduce the processing time of individual file uploads even more than before thanks to 45% better hardware utilization.
A rough diagram on the new algorithm can be found here. The new algorithm reuses the hole filling logic from the old one and adds an Outer Hull concept which is based on this and this paper.
Disabling mesh optimization
Only on-premise installations can have mesh optimization disabled.
Mesh optimization should only be disabled when there are strict quality assurance processes in place, when models are already pre-processed by other data preparation software or when runtime performance is a serious issue.
Workflow differences with enabled and disabled optimization:
Workflows with and without optimization are fully compatible and produce exactly the same files.
When mesh optimization is enabled, the uploaded file is converted into <file_name>_original.stl (if needed) and then optimized and saved into <file_name>_optimized.stl.
When mesh optimization is disabled, the uploaded file is converted into <file_name>_original.stl and then copied into <file_name>_optimized.stl.