Scriptsprache von Canvas Painter

Der Canvas Painter versteht eine einfache Script- Sprache, mit der Zeichnungen erzeugt werden können. Die Scripte werden als Dateien hochgeladen und unmittelbar ausgeführt.

Grundaufbau eines Scriptes

Ein Script ist ein JSON - Array, das aus Objekten besteht, die JavaScript- Canvas- Befehle darstellen:

[ {Befehl 1}, ..., {Befehl n} ]

Jeder Befehl ist ein JSON- Objekt, das mindestens die Eigenschaft type besitzt. type definiert dabei den Befehlstyp:

{ "type": <Typnummer>, ... }

Folgende Befehlstypen existieren

Befehl Typnummer Beschreibung Beispiel
beginPath 1 Startet mit dem Zeichen eines Linienzuges/Umrandung. Pfade können mittels closePath automatisch zu geschlossenen Figuren vervollständigt werden. Konstruiert wird der Linienzug mit Pfadkommandos wie lineTo und moveTo. Tatsächlich gezeichnet wird er erst durch das Kommando stroke
{"type":1}
closePath 2 Schließt einen Pfad. Die aktuelle Position ist dann die Position, an welcher der Pfad begann.
{"type":2}
strokeStyle 3 Linienstil: definiert die Farbe. Hier können HTML- Farbwerte eingetragen werden
{"type":3,"Style":"#FFA000"}
fillStyle 4 Füllstil: definiert die Farbe, mit der geschlossene Flächen gefüllt werden. Hier können HTML- Farbwerte eingetragen werden
{"type":4,"Style":"#FFA000"}
moveTo 5 Hebt den Plotterstift von der Zeichenfläche und bewegt ihn an eine neue Position. Es wird nicht gezeichnet.
{"type":5,"X":100.0,"Y":200.0},
lineTo 6 Bewegt den Plotterstift auf der Zeichenfläche an eine neue Position. Es wird eine Linie gezeichnet.
{"type":6,"X":200.0,"Y":300.0},
fillRect 7 Zeichnet ein Rechteck und füllt es.
{"type":7,"pX":200.0,"pY":300.0, "Width":100.0, "Heigth":100.0}
arc 8 Zeichnet einen Kreisbogen und füllt ihn.
 {"type":8,"pX":75.0, "pY":242.0,"R":70.0,"PhiStart":0,"PhiStop":3.14,"Clockwise":true}
stroke 9 Alle im Pfad definierten Linien werden nun tatsächlich gezeichet
 {"type":9}
fill 10 Alle im Pfad definierten Flächen werden nun tatsächlich gefüllt
 {"type":10}