Impressum DatenschutzerklärungNeu: diese Seite per HTTPS ansehen.


Splinewriter - SVG to gcode to SVG geschrieben am 23.09.2017

Nach dem ich mir einen Plotter mit Marlin-Firmeware gebaut hatte, brauchte ich ein Programm mit dem ich Zeichnungen erstellen oder konvertieren kann.
Das Programm wurde mit electron erstellt. Die Programmierung erfolgt hierbei in Javascript.
Ich habe Javascript gewählt, da es einfach und effizient ist und die Aufgabe keine Hochsprache erfordert. Der Vorteil mit electron ist, dass das Programm auch für Linux und MacOS kompiliert werden kann (habe ich aber nicht ausprobiert).
Screenshot von der splinewriter-App

Bedienung und Funktion

Die Bedienung habe ich einfach gehalten, mit "Grafik laden" kann eine gcode-Datei oder eine SVG-Grafik geladen werden.
Das dargestellt Raster zeichnet ein 1x1cm² Gitter.
Mit "Vorlage laden" kann man hinter der Grafik eine Vorlage (jpeg,png,...) zum nachzeichnen legen.
Die Strichstärke soll den Späteren Plotterstift simulieren.
Als kleine Spielerei kann man mit "Zeichnung zeichnen" eine kleine Animation abspielen. Dies gibt einen Eindruck in welcher Reihenfolge die Linien gezeichnet werden.
Die Speicherfunktionen sind speziell auf meinen Plotter erstellt. Dabei sind hier die Einstellungen für das Servo und die Geschwindigkeiten zu machen.
Mit der Option "endmove" kann man den Plotter in eine günstige Position am Ende verfahren. Die ist nützlich, wenn man Filmaufnahmen machen möchte.
Gespeichert wird die Zeichnung in gcode oder SVG - je nach dem welche Endung man beim speichern angibt.
Der Plotter in Aktion kann auch auf Instagram gestaunt werden.

Interne Besonderheit

Das Besondere in dem Projekt ist die Verarbeitung der Linien. Hierbei werden sie nach dem zeichnen so optimiert, das wenige Punkte übrig bleiben - dazu gilt die Option "Punkte zeigen" als Kontrolle.
Je nach Art der gezeichnete Linie ist eine Punktereduktion auf bis zu 14% möglich. Das ist so gestaltet das Kreise nach dem ausplotten auch noch rund erscheinen und gerade Linien mit wenige Punkten auskommen ohne die Natürlichkeit zu zerstören.
erfasste Punkte auf der gezeichneten Linie
Man beachte: das Gitter ist im 1x1cm² Raster gehalten.

Einige Ergebnisse als Foto

Tigerkopf ausgeplottet
Quelle: im Programm gezeichnet
Baufahrzeug ausgeplottet, mit Zeichenfehlern
Quelle: commons.wikimedia.org mit Illustrator wurden die Linien in Pfade gewandelt und der Rahmen entfernt. Hier ist der Stift nicht optimal eingespannt, er zieht beim hochfahren kleine Striche am Ende der Linie.
Beispielplott des Roboters "dewey" von "silent running"
Quelle: Projekt Lautlos im Weltraum - Silent Running Als SWF aus Cinema4D gerendert, in SVG konvertiert und in Splinewriter importiert.
Nach einigen probieren habe ich die optimale Geschwindigkeit gefunden, wo es keine Ausreißer und Schrittverluste gibt:
Egon, Benny, Kjeld von der Olsenbande als Plot
Quelle: in Illustrator gezeichnet, als SVG gespeichert und importiert.

Download

Das Projekt kann auf github.com/polygontwist/splinewriter geladen werden. Es ist als Open Source Projekt angelegt und kann damit frei benutzt und weiterentwickelt werden.

Webapp

[update: 09.09.2020] Jetzt auch direkt im Webbrowser Splinewriter WebApp.


schreibe den ersten Kommentar:


Inhalt zur freien Verwendung gibs es beim Thema Downloads.
nach oben springen
mehr auf: Instagram, github, thingiverse