Table of Contents

Source Code

svg2gcode.zip

Text-Analyse mit Python

Datei einlesen

Von https://stackoverflow.com/questions/7409780/reading-entire-file-in-python

with open('Path/to/file', 'r') as content_file:
    content = content_file.read()

Text finden

https://www.geeksforgeeks.org/string-find-python/

position = content.find("<path ",startPosition)  # die Startposition ist optional, kann gebraucht werden, um weitere Vorkommen zu finden.
if (position!=-1): # Wirklich was gefunden
  # tu was damit

Substring

a="0123456789"
a[2:5] # -> liefert "234"

Text Analyse

Ist der Path-String einmal gefunden, geht es darum, diesen zu analysieren. Als erster Schritt soll dieser nach Leerschlägen aufgeteilt werden:

txt = "foo bar baz boo"
items = txt.split(" ")

Convertierung in Zahlen

zahl = float("3.14")

Klassen und Objektorientierte Programmierung

SVG-Pfad Spezifikation

Dokumentation:

G-Code für den Plotter

Der Nullpunkt befindet sich bei den Radien $r_1=r_2=1445$ (in mm). Pro Motorschritt verändern sich die Radien um $\approx 0.0157029$ (mm). Die Motoren haben einen Abstand von 1930 mm.

Der G-Code bezieht sich direkt auf die Motorenschritte (was eigentlich gerade nicht der Sinn von G-Code ist).

Nur G1 (lineare Interpolation) ist implementiert:

Nach jedem Kommando muss auf ein 'OK\n' gewartet werden.