-
Notifications
You must be signed in to change notification settings - Fork 106
Open
Labels
enhancementNew feature or requestNew feature or request
Description
It was raised in #18 that it could be desirable to export the generated mesh of the printed extrusion, potentially as an STL file or similar.
Conceptually that should mostly involve a small amount of data wrangling to create data in an appropriate format, but I think it's important to establish the context and desired features first, so we can determine which file format(s) are most valuable to support exporting as.
A few potential considerations as a starting point for discussion:
- Some applications require closed meshes
- This should be achievable using the
cappedoption intube_mesh.py - I'm unsure whether there could be issues if the mesh is self-intersecting
- This should be achievable using the
- Generated extrusion paths can have multiple parts
- This may not be supported by all file types and may be precluded by / incompatible with a closed mesh requirement
- The data we generate is more extensive than just geometry, and it may be valuable to be able to save some/all of the extra information
- Colours is a potentially big one here, along with things like travel movements, temperature/speed changes, and possibly things like tool type and/or orientation as use-cases expand
- Different file types have varying degrees of data compression, and small files are likely desirable (especially for large models)
I think we should make a list of features we care about, then turn that into a comparison table for viable file type options, and use that to determine which file types make the most sense to implement. Here's a quick first pass:
| File Type | Colours? | Normals? | Lines? | Multi-part? | Physical Units? | Animation? | File Size? | Expected Implementation Difficulty? |
|---|---|---|---|---|---|---|---|---|
| STL | Non-standard | Required | No | ? | Non-standard | No | Ascii: big Binary: small |
Easy-ish (need normals) |
| OBJ | Yes (external) |
Optional | Yes | ? | Non-standard | No | big-ish | Easy-ish |
| PLY | Optional | Optional | Optional | Optional | Non-standard | No | Ascii: big Binary: small-ish |
? |
| AMF | Optional | Implicit | No | Yes | ? | No | XML: big zipped: small |
? |
| 3MF | Optional | ? | ? | Yes | Yes | ? | XML: big-ish? | ? |
| glTF | Yes | Optional | ? | Yes | ? | Yes | ASCII/JSON: small-ish? binary: small |
Likely complicated |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request