Skip to content
For software developers · 3D InterOp SDK

Convert 3DM to STL in your application

3D InterOp is a CAD interoperability SDK that lets your software read 3DM files and write STL, generating the STL mesh from the geometry it reads, with tessellation settings your application controls.

Spatial does not offer an online converter or a desktop conversion app. 3D InterOp is a component that software vendors embed in their own products.

  • Reads Rhino · Writes STL
  • Exact geometry → triangle mesh
  • C++ / C# APIs
shape.3dmRhino · NURBS surfaces
Your application
3D InterOp SDK
Rhino readerTessellationSTL writer
bracket.stlSTL · triangle mesh

3DM to STL at a glance

Rhino stores exact geometry; STL stores triangles. The translation is a tessellation, and the settings you choose decide how close the mesh stays to the original.

Rhino (source)STL (target)
Full nameRhinoceros 3D modelStereolithography
Standard / ownerRobert McNeel & AssociatesOpen format
File extensions.3dm.stl
GeometryExact NURBS geometry and meshesTriangle mesh
Assemblies / structureNo assembly hierarchyNo
3D InterOp supportRead onlyRead and write

What's preserved, what changes

Here is what your application can expect to carry across from Rhino to STL.

  • Changes
    Geometry is tessellated
    The exact Rhino B-Rep is replaced by a triangle mesh, generated by 3D InterOp from the exact geometry it reads. Accuracy depends on the tessellation settings your application uses.

Why software vendors add 3DM to STL conversion

Additive manufacturing

STL is still the input most slicers and print services expect. Writing it lets your users send parts to print directly.

Mesh-based processing

Inspection, scan comparison and mesh-editing tools work on triangles. A mesh output gives them a model they can open anywhere.

Lightweight sharing

A mesh is simpler than the native CAD file and needs no CAD system to open.

Things to check before you ship

  • Supported 3DM input: Rhino 2 to 8.
  • Test tessellation settings on your heaviest parts: finer meshes mean larger files.
  • Validate a sample of translated files in the target system your users actually work with.

Working with Spatial was a real milestone for us: Thanks to the powerful 3DInterOp library, we were able to successfully bring our complex CAD-based solutions to the cloud while remaining flexible to meet individual customer requirements. For us, Spatial is not just a technology partner, but a true enabler of our product strategy.

Dr. Arno Michelis, Founder, Simus Systems

Read the Case Study

About the formats

  • Source format

    What is a 3DM (.3dm) file?

    3DM is the native file format of Rhinoceros (Rhino), the NURBS modeler from Robert McNeel & Associates. It stores exact curves, surfaces and solids, as well as meshes.

  • Target format

    What is an STL file?

    STL describes a 3D surface as a set of triangles, with no units, materials or assembly structure. Its simplicity makes it the usual input for 3D printing.

Frequently asked questions

3D InterOp tessellates the geometry it reads from 3DM when it writes STL. Your application sets the tolerances, so it controls the trade-off between accuracy and file size.

No. STL stores triangles only, with no units, colors or textures. Agree on the unit with the application that reads the file; the 3D InterOp STL reader assumes millimeters.

No. 3D InterOp reads Rhino geometry, but importing mapping data isn’t supported.

3D InterOp reads Rhino 2 to 8.

No. 3D InterOp reads 3DM but doesn’t write it. To send data back to Rhino users, write a neutral format they can import, such as STEP.

  • Building software that needs to convert 3DM to STL?

    3D InterOp is an SDK that lets your application read Rhino and write STL alongside 30+ CAD and BIM formats.