Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/felixfeliz/paperfoldmodels
A Python script for unfolding triangular meshes in order to create papercraft models
https://github.com/felixfeliz/paperfoldmodels
Last synced: 13 days ago
JSON representation
A Python script for unfolding triangular meshes in order to create papercraft models
- Host: GitHub
- URL: https://github.com/felixfeliz/paperfoldmodels
- Owner: felixfeliz
- License: mit
- Created: 2018-11-27T10:19:53.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-14T10:35:23.000Z (almost 2 years ago)
- Last Synced: 2024-08-01T22:52:22.983Z (3 months ago)
- Language: Python
- Homepage:
- Size: 183 KB
- Stars: 32
- Watchers: 2
- Forks: 10
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# paperfoldmodels
A python module that unfolds triangular surfaces onto the plane. The result can be used to create papercraft models.The python bindings of [OpenMesh](http://www.openmesh.org) are used and thus the original mesh can be loaded from any format supported by it.
The output consists of several SVG files, each containing an intersection-free component of the unfolding.## Dependencies
* Python 3
* NumPy
* OpenMesh
* NetworkX## Example
The usage is shown in testUnfold.pyUnfolding of the stanford bunny:
![bunny](bunnyReduced.svg)
The colors indicate the folding direction and the numbers the corresponding glued edge.## Method
The algorithm consists of three steps:1. Find a minimum spanning tree of the dual graph of the mesh.
2. Unfold the dual graph.
3. Remove self-intersections by adding additional cuts along edges.## Reference
The code is mostly based on the algorithm presented in this [report](https://geom.ivd.kit.edu/downloads/proj-paper-models_cut_out_sheets.pdf) by Straub and Prautzsch.## Language
Because the original target audience was a group of German-speaking high-school students, many of the comments are written in German.## Author
**Felix Scholz**