Skip to content
README.md 4.06 KiB
Newer Older
raoul's avatar
raoul committed
# The OpenEmbroidery software: a free machine embroidery design interface

OpenEmbroidery software is a part of the OpenEmbroidery system wich include OSHW OpenEmbroidery module and the [openembroidery.com](http://openembroidery.com) website

## Important

This software is in an early-stage development status, not yet in alpha version (core functionnalities).
There is no ihm menu nor buttons, more details below under [Current IHM](#CurrentIHM).

## Prerequisites on Linux

  * Needs Bluetooth development packages
  * glfw library
  * CMake
  * libpakal (included)

On debian-based systems: sudo apt-get install libbluetooth-dev cmake gcc-c++

## License

OpenEmbroidery is released as opensource software under CeCILL licence

## First build

```
mkdir -p libPakalPersist/build
cd libPakalPersist/build
cmake ..
make -j4
cd ../..
mkdir build
cd build
cmake ..
make -j4
```

## <a name="CurrentIHM"/>Current IHM

Your view is an embroidery XY plan of infinite size,
you can import vector drawing (svg format, from Inkscape
or Adobe Illustrator) and move or resize them. These
drawings will be the skeleton of your embroidery.

A virtual frame of 10x10cm is displayed on your drawing
and let you evaluate the actual size of your design and
your stitches. First grid has squares of 1x1cm, and when
you zoom in a second grid of 1x1mm appears.

Based on your drawing, you will do stitches actions,
you start one by pressing the corresponding key binding
and go to next action step by pressing Enter. Each
step is action-specific and described below.

```
TODO: Note: only your drawing shapes edges will be used.
TODO: Note: you can edit your curves a little bit.
```

### View: translate, zoom in and out

  * Translate view: hold mouse middle button, then drag and release

  * Zoom in: mouse scroll up
  * Zoom out: mouse scroll down

Note: zoom is centered on screen center, not on mouse !

### Element selection

  * Select all elements in an area: mouse left button and drag, everything fully inside selecting rectangle is taken
  * Select with a simple left click: svg curve, curve control points, stitches (everything)

  * Add to selection: hold Shift when selecting
  * Remove from selection: hold Ctrl when selecting

A red rectangle surround selection.

Selected elements are highlighted.

Selected svg curves shows their control points.

### Move, resize and delete elements

  * Delete: press Suppr key

Svg curves selected can be moved and resized at your ease
with handles on your selection rectangle:

  * Move: drag the cross on top left corner
  * Resize: drag the arrow on top left corner

### Curve edit, point move, vector edit

TODO

### Save/load and undo

Current state of save and load is really rough.

  * Save: Ctrl+s, save your file to ../roger.oe
  * Load: Ctrl+o, open your file from ../roger.oe

Note: "../" means upper directory from where you ran the openEmbroider executable.
If you ran the software from it's build directory, roger.oe file will be in source directory.

Note: this file format is not yet finalized nor decided. This means your current file **will** be unusable one day. It will be stable with the alpha version.

  * Undo: Ctrl+z, undo last action. Known bug: actions **MUST** be finished, don't undo while creating a stitch !

### Action stich: line

A line stitch is an embroidery following svg lines.
This stitch embroid a pattern along svg lines and can jump between thems.

Press key b to activate line stitch mode. A red dot
now follow your cursor and find the nearest curve to snap on.
You can drag the part of line you want with a drag and drop.
You can jump to another curve as you like, when you have finished
just press enter.

Your line is now created, but you can adjust starts
and ends of lines by dragging them if you want to.

Default stitch pattern is a straight line, but you can try
the nine available patterns by selecting your stitch and
press keypad buttons 1 to 9. (keypad only, **not** other number keys).

TODO: Note: svg closed curve key r to reverse.
TODO: Note: howto change pattern parameters with +/- and Ctrl +/-.

### Action stich: birail

TODO

### Action stich: fill

TODO