2016-11-07 2 views
0

Ich versuche, Verarbeitung zu verstehen, also mache ich einige zufällige Sachen. Ich verwende Code unten, und ich möchte die Anzahl der Punkte auf der oberen linken Seite gezogen zeichnen und zählen:Wie wird die Anzahl der Punkte gezählt, die bei der Verarbeitung gezeichnet werden?

int clickx[] = new int[50]; 
int clicky[] = new int[50]; 
int mousx = 0; 
int mousy = 0; 
void setup() { 
    size(860, 640); 
    background(0); 
    frameRate(30); 
    mousx = mouseX; 
    mousy = mouseY; 
} 
void draw() { 
    if (mousePressed) { 
     if (mousx != mouseX) { 
      stroke(255); 
      point(mouseX, mouseY); 
      int i = 0; 
      clickx[i] = mouseX; 
      clicky[i] = mouseY; 
      i++; 
      text(i, 50, 50); 
     } 
    } 
} 

Aber anstatt ich bin immer gleiche Zahl die ganze Zeit:

enter image description here

Antwort

1

Ihre i Variable ist immer auf 0 eingestellt.

Warum verwenden Sie Arrays, wenn Sie immer nur einen Punkt auf einmal zeichnen?

In beiden Fällen müssen Sie bei jedem Zeichnen eines Punkts eine Variable inkrementieren und diese Variable dann als Anzahl verwenden. Hier ist ein kleines Beispiel;

int i = 0; 
i++; 
println(i); //prints 1 
i++; 
println(i); //prints 2 
:

int i = 0; 
i = i + 1; 
println(i); //prints 1 
i = i + 1; 
println(i); //prints 2 

könnte Dieser Code leicht mit dem ++ Inkrementoperator verkürzt werden

Verwandte Themen