PES-Embroidery/README.md

72 wiersze
2.8 KiB
Markdown

2020-11-09 16:19:00 +00:00
#### [Presentation.pdf](https://github.com/Reenforcements/PES-Embroidery/blob/master/Presentation.pdf)
#### [Report.pdf](https://github.com/Reenforcements/PES-Embroidery/blob/master/Report.pdf)
2020-11-09 16:16:44 +00:00
2018-12-14 21:45:33 +00:00
# What is this?
This project is a program for a CAD tool design class (ECE 487) at Miami University. The tool converts .SVG vector graphics to .PES embroidery files that can be used by machines such as the Brother SE600.
2018-12-15 01:20:08 +00:00
# Examples
2018-12-15 01:22:05 +00:00
![Apple](https://github.com/Reenforcements/PES-Embroidery/blob/master/DATA/Results/apple.JPG?raw=true)
![Tree](https://github.com/Reenforcements/PES-Embroidery/blob/master/DATA/Results/tree.JPG?raw=true)
![Droplet](https://github.com/Reenforcements/PES-Embroidery/blob/master/DATA/Results/droplet.JPG?raw=true)
![Zigzag](https://github.com/Reenforcements/PES-Embroidery/blob/master/DATA/Results/zigzag.JPG?raw=true)
2018-12-15 01:20:08 +00:00
2018-12-14 21:28:28 +00:00
# Installation
2019-08-13 17:17:06 +00:00
Python 2.7 is required to run the program.
2018-12-14 21:45:33 +00:00
PES-Embroidery also relies on a number of third party libraries:
2018-12-14 21:28:28 +00:00
- numpy
- svgPathTools
- pyEmbroidery
- pyGlet
These libraries can be easily installed using `pip`.
```
2018-12-14 21:45:33 +00:00
sudo pip install numpy svgpathtools pyembroidery pyglet
2018-12-14 21:28:28 +00:00
```
2018-12-14 21:45:33 +00:00
# Usage (Requires Python)
2018-12-14 21:28:28 +00:00
2018-12-14 21:45:33 +00:00
##### Sample command:
2020-02-06 22:22:06 +00:00
`python src/main.py -i ./myVectorGraphic.svg -o ./myEmbroideryFile.pes -t 2.5 -d 10 -r -d`
2018-12-14 21:28:28 +00:00
2018-12-14 21:45:33 +00:00
##### Parameter details:
2018-12-14 21:45:33 +00:00
For decimal parameters, 10 units are equal to 1mm.
- `-h` Display parameter help.
- `-i [path]` The full path of the input SVG file.
- `-o [path]` The full path of the output PES file.
2018-12-15 01:20:08 +00:00
- `-t [decimal number]` This will be used as the distance between parallel stitches. Default is 1.5.
- `-m [decimal number]` This is the max distance the sewing machine will travel between stitches. Default is 20.
2018-12-14 21:45:33 +00:00
- `-l [decimal number]` This is the mathematical slope that the stitch lines will have. Default is a slope of 1.
- `-s ['closest' or 'zigzag']` This is the stitch style for connecting parallel stitch groups. The default is closest.
- `--noOutline` If this flag is specified, the embroidery design will not contain stitches that outline each shape.
- `-d` Shows a debug rendering of the embroidery design.
- `-r` Generates a debug rendering picture of the design in the same directory as the output PES file.
# Known Issues
2018-12-14 21:45:33 +00:00
- Some SVG shapes do not convert correctly. I believe this to be a bug in the svgPathTools library.
- The outline of embroidered designs don't tend to line up with the fill stitches.
# References
2018-12-15 01:20:08 +00:00
General PES/PEC information from [here.](https://github.com/frno7/libpes/wiki/PES-format)
General PES/PEC information and colors for PES version 1 taken from [here.](https://edutechwiki.unige.ch/en/Embroidery_format_PEC#Stitch)
[svgPathTools](https://pypi.org/project/svgpathtools/)
[numpy](https://pypi.org/project/numpy/)
[pyEmbroidery](https://pypi.org/project/pyembroidery/)
2019-08-13 17:17:06 +00:00
Tux embroidery demo file from [here.](https://github.com/t2b/embroidery)