Exports label images to 3D-printable stl files.
This plugin allows to import and export surface data in Napari to common file formats. The generated file formats can be read by other common applications, and - in particular - allow 3D-printing.
This section explains which data can be written with the napari-stl-exported and how you can do so.
Supported file formats:¶
Currently supported file formats for export include and rely on the vedo io API.
Supported Napari layers:¶
Currently supported Napari layer types are:
- Surface layers
- Label layers: The label data is converted to surface data under the hood using the marching cubes algorithm implemented in scikit-image and is then exported using Vedo. Warning: This can be slow for large image data!
Interactively: To export the data, simply save the selected layer with
File > Save Selected Layer(s) and specify the file ending to be
some_file.[file_ending], for supported file types, see above. Similarly, supported file types can be imported into Napari with
import napari import numpy as np # Load and binarize image label_image = np.zeros((100, 100, 100), dtype=int) label_image[25:75, 25:75, 25:75] = 1 # Add data to viewer viewer = napari.Viewer() label_layer = viewer.add_labels(data, name='3D object') # save the layer as 3D printable file to disc napari.save_layers(r'/some/path/test.stl', [label_layer])
You can create sample label/surface data for export using the built-in functions as shown here:
...or from code with
import napari_stl_exporter pyramid = napari_stl_exporter.make_pyramid_surface()
To actually send your object to a 3D-printer, it has to be further converted to the .gcode format with a Slicer program. The latter convert the 3D object to machine-relevant parameters (printing detail, motor trajectories, etc). Popular slicers are:
Note: You can also upload the STL file to github.com and interact with it in the browser:
You can install
napari-stl-exporter via pip:
pip install napari-stl-exporter
Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.
Distributed under the terms of the BSD-3 license, "napari-stl-exporter" is free and open source software
If you encounter any problems, please file an issue along with a detailed description or post to image.sc and tag
- 02 August 2022
- 06 October 2021
- Information not submitted
- Stars: 0
- Forks: 0
- Issues + PRs: 0