Wie kann ich JavaScript-Code in Processing-Code umschreiben?

1 Antwort

Das, was du da hast, ist JavaScript-Code, nicht Java. Einer Konversion in Processing sollte nichts im Wege stehen.

Hilfen dazu:

  • Funktionen werden in JavaScript mit dem Schlüsselwort function eingeleitet.
  • Das Schlüsselwort let stellt eine Variablendeklaration dar. Um die umzuschreiben, musst du zuvor den richtigen Typ ermitteln.
  • Die eckigen Klammern sind eine Kurzschreibweise, um ein Array anzulegen.

Beispiel:

let colors = ["#ffc857", "#e9724c", "#c5283d", "#481d24", "#255f85", "#a5bccc"];

Du brauchst eine Variable, die Farbwerte in einem Array speichert. Dafür kannst du den color-Typ nutzen.

color[] colors = new color[] { #ffc857, #e9724c, #c5283d, #481d24, #255f85, #a5bccc };
  • Die for-of-Schleife ist eine verkürzte Form, um über die Elemente in einem Array zu iterieren. Du kannst sie direkt in eine Iterationsschleife konvertieren.

Beispiel (JavaScript-Code):

let numbers = [ 1, 2, 3 ];

for (let number of numbers) {
  // do something ...
}

// equivalent
for (let index = 0; index < numbers.length; ++index) {
  let number = numbers[index];
  // do something ...
}
  • In JavaScript sind Arrays dynamisch. Das heißt, sie können auch nachträglich noch in ihrer Größe wachsen. Die push-Methode dient dabei als Mittel, um neue Elemente an das Ende des Arrays zu hängen. In Processing kannst du das shapes-Array mit Hilfe einer ArrayList umsetzen.
  • Die int-Funktion entspricht einem expliziten Typecast zu einer Ganzzahl (Integer).
  • Die shuffle-Funktion ist nur in p5.js vorimplementiert. Für Processing müsstest du sie dir selbst implementieren. Man kann an dieser Stelle, so wie auch die p5.js-Implementation auf den Fisher-Yates-Shuffle-Algorithmus zurückgreifen. Das ist an der Stelle auch gleich eine gute Anfängerübung.

Alle anderen Funktionen sind, sofern ich nichts übersehen habe, gleichnamig auch in Processing vertreten. Falls du zu ihnen nochmals mehr Details einholen möchtest, nutze die Processing-Referenz.