1 · Unpack the container
3MF is a zip with an XML model inside. The reader opens it in the tab and walks the build items.
2 · Merge the parts
Every object referenced by the build is transformed into place and merged into one mesh. Part names and colours are not carried.
3 · Write STL
The merged triangles are written as binary STL. The 3MF unit is converted to millimetres; STL then declares nothing, so the numbers are already in mm.
Where the limits are
| Property | In the file | Why it matters |
|---|---|---|
| Units | Converted to millimetres | Micron, mm, cm, inch, foot and metre are scaled |
| Parts | Merged | Build items flattened into one mesh |
| Colour | Dropped | No colour in STL |
| Print settings | Dropped | Slicer profile is not part of STL |
| Geometry | Kept | Triangles and coordinates unchanged |
If the print depends on per-part settings, colour or declared units, send the 3MF to the slicer instead of converting it.
Checking the result yourself
- Note the triangle count and bounding box the page shows.
- Open the result in the program you will actually use and read its statistics.
- Compare the dimensions with the source; a silent unit change shows up here first.
- Look at the model from both sides: flipped normals are visible immediately.
A result is one reading, not a certificate
The result panel reports the triangle count, the bounding box and any warning the reader raised. It cannot tell you that the file will slice cleanly on your machine. That is why the notes keep a second reading: the exported STL is parsed independently. A required-production package can convert without a warning here and still fail in another reader; a split production package can produce a stack-overflow message in the browser while PrusaSlicer 2.9.7 opens it. The panel is the start of the check, not the end.