2017-09-06 4 views
0

Ich lerne Codierung und bin ein Neuling. Ich versuche gerade, eine Processing (Java) -Skizze in eine p5 (Javascript) -Skizze umzuwandeln, um meine erste Website zu erstellen.Konvertieren von Vektorverarbeitung Syntax zu p5 Skizze

Ich habe Probleme beim Übersetzen der Vector und Array Syntax von der Verarbeitung Skizze.

Dies ist die Vector aus der Verarbeitung Skizze ist (in Betrieb):

for (int i = pts.size()-1; i >= 0; i --){ 
    PVector pt = (PVector)pts.get(i); 
...... 
PVector pt2 = (PVector)pts.get(j); 
     if (pt.dist(pt2) < 20){ 
...... 

Hier ist, wie ich es in p5 zu übersetzen versucht habe (nicht funktioniert)

for (var i = pts.size()-1; i >= 0; i --){ 

    pt = p5.Vector.pts.get(i); 

........... 

    var pt2 = (PVector)pts.get(j); 

    if (pt.dist(pt2) < 20){ 
     line(pt.x, pt.y, pt2.x, pt2.y); 
    } 

} 

Antwort

0

Sie shouldn‘ t versuchen Sie, Code zu übersetzen, indem Sie Zeile für Zeile gehen und die Syntax übersetzen. Stattdessen müssen Sie einen Schritt zurückgehen und das Programm zunächst in Englisch konvertieren. Dann nimmst du das Englisch und versuchst es in der targed Sprache zu implementieren. Das mag dumm klingen, aber Englisch heißt Algorithmus.

Also, sollten Sie eine Beschreibung des Programms wie diese:.

„Show 10 Kreise Prellen auf dem Bildschirm Wenn ein Kreis den Rand des Bildschirms berührt, es abprallen sollte ... "

Das ist nur ein Beispiel, aber Sie bekommen die Idee. Dann nehmen Sie das und implementieren es in P5.js.

Anstatt zu sagen, "wie konvertiere ich diese Array-Syntax zu P5.js", sollten Sie sich fragen "wie funktionieren Arrays in JavaScript" oder sogar "wie funktionieren Variablen in JavaScript". Von dort können Sie tutorials lesen, um herauszufinden, wie Sie Ihren Algorithmus in P5.js implementieren.

Wenn Sie bei einem bestimmten Syntaxfehler stecken bleiben, suchen Sie bitte in the JavaScript console nach Fehlern, die Sie bekommen. Wir können nicht wirklich helfen, wenn alles, was Sie uns sagen, ist, dass es nicht funktioniert. Welchen Fehler bekommst du? Wo ist dein MCVE?

All dies wird gesagt, ich werde versuchen, mit Ihrer spezifischen Frage zu helfen. Lassen Sie uns die ursprüngliche Linie nehmen:

PVector pt = (PVector)pts.get(i); 

Diese Linie bekannt, dass folgende eine Variable pt benannt und wird um jeden Hinweis von pts.get(i) zurückgeführt wird, wodurch es zu einem PVector wirft, weil Java statisch so muss alles eine Art eingegeben wird .

Vergleichen Sie das mit, was Sie versuchen in P5.js zu tun:

pt = p5.Vector.pts.get(i); 

Zunächst einmal, wo hast du die pt Variable deklarieren? Zweitens was ist p5.Vector.pts? Diese Syntax macht keinen Sinn. Sie müssen sich darüber informieren, wie Variablen und Arrays in JavaScript funktionieren.

In ähnlicher Weise wollen wir an dieser Linie schauen Sie in Ihrem P5.js Code:

var pt2 = (PVector)pts.get(j); 

Wieder wo pts erklärt?Und Sie müssen in JavaScript nie etwas umwandeln, weil es dynamisch typisiert ist. Auch hier müssen Sie zurückgehen und sich darüber informieren, wie Variablen in JavaScript funktionieren.

Shameless Eigenwerbung: Ich habe eine Reihe von Tutorials geschrieben, die auf Processing-Entwickler ausgerichtet sind, die versuchen, JavaScript zu lernen, verfügbar here.

+0

Hallo Danke für die Hilfe. Ich war wahrscheinlich zu locker mit dem Wort "übersetzen". Ich habe tatsächlich einen Javascript-Kurs auf der Code Academy gemacht und habe meinen Kopf für eine ganze Weile in verschiedenen Tutorials (einschließlich Shaffmans Online-Videos) vergraben. Mehr Ich habe eine Skizze in der Verarbeitung, die ich als Grundlage für die Erstellung einer P5-Skizze verwende. Egal, das beiseite, ich werde den ganzen Code eingeben, um diese Fragen zu beantworten ... –

+0

Oh btw, danke für den Hinweis auf Ihre Seite. Denke, ich bin mit einer Menge davon vertraut, aber lese es jetzt durch, um zu sehen, ob ich etwas verpasst habe :). –

Verwandte Themen