gcode zeichnen, SVG to gcode Konverter
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
build
dist
exampel
js
work
.gitattributes
.gitignore
README.md
index.html
main.js
package-lock.json
package.json
packen.bat
start.bat
style.css

README.md

screenshot_1

Wozu das ganze?

Ich brauchte ein Programm mit dem man Zeichnungen erstellen/konvertieren kann, um sie später auf einen Plotter auszugeben.

Die Zeichnungen können im gcode-Format oder als SVG gespeichert werden. Mann kann also gcode nach svg und umgekehrt konvertieren (gcodetosvg, svgtogcode).

Es können, neben gcode, auch SVG-Gafiken geladen werden. In den SVG-Grafiken müssen die Linien in "pfad"-, "line"- oder "polyline"-Tags angelegt sein, andere Tags werde nicht ausgewertet.

Für die Ausführung ist ein Gerät mit Marlin-Firmeware ausgelegt, das ein Servo für den Stifthalter benutzt. Ich benutze "Marlin 1.1.0-RC6" auf einem Rumba-Board (https://www.instagram.com/p/BZHirZBgRO-/ https://www.instagram.com/p/BY3j2lXDd58/). Ab der Version v0.1.2 ist die gcode-Ausgabe soweit anpassbar, das man auch einen Laser als Ausgabegerät nutzen kann. Vorlagen sind im Programm enthalten.

Beispiel

Projekt updates

  • v0.0.1: erste Version;
  • v0.0.2: neue Option: MoveTo Ymax; Einheiten für Geschwindigkeit; niedrigere Defaultwerte
  • v0.0.3: Korrektur Einheiten
  • v0.0.5: speichern optimiert; letzter Pfad wird gemerkt
  • v0.0.6: Bugfixes and SVG export; import SVG-polyline
  • v0.0.7: Bugfix read polyline (Leerzeichen, Tab, Umbrüche im SVG-Attribut); ließt auch den line-Tag
  • v0.0.8: Switch added to display the grid
  • v0.0.9: fix Scalierungsfehler
  • v0.1.0: die Zeichenfläche läßt sich vergrößern
  • v0.1.1: Linien können so sortiert werden, das die Leerfahrten reduziert werden. Punkteanzeige wird der 1.Punkt rot und die restlichen orange gefärbt.
  • v0.1.2: gcode Einstellungen in Dialog ausgelagert, mit Möglichkeit je nach eigener Maschine Eintellungen vorzunehmen (z.B: für Laser statt Plotter)
  • v0.1.3: kleine fix, eigene Maschinensetups können gespeichert werden.
  • v0.1.5: Importoption hinzugefügt, je nach Regler werden die SVG-Grafiken genauer aber mit mehr Punkten importiert.

Programm benutzen

Für Windows-Nutzer liegt eine fertige Installation im Ordner "dist".

Projekt bearbeiten

Für die Bearbeitung diese Projektes benötigt man:
https://nodejs.org dabei ist der npm-Packetmanager
mit

npm install --global electron

wird electron global installiert. mit

npm install electron-builder

kommt noch der builder zum packen des Projektes hinzu.

In der Eingabeaufforderung kann, im Verzeichnis des Projektes mit

electron .

das Programm gestartet werden (Entwicklungsversion).
Mit

build

kann ein Packet zur Installation erzeugt werden. Das kann dann wie jedes normale Programm von Nutzern installiert werden. Das Installationsprogramm ist dann im Verzeichnis dist zu finden.

Eingabeproblem-Tipp

Ich benutze zu Eingebe ein Wacom-Tablett. Dabei hatte ich Probleme das der Anfang des Striches nicht aufgezeichnent wird (erst nach einigen Pixeln).

Die Lösung:

In den Treibereinstellungen von Wacom → Stiftmodus → „Windowsfreihand verwenden“: aus