poppetje, in het midden uitgelijnd, in de draw functie terug naar de inleiding
Het poppetje is 9 vakjes hoog en 4 vakjes breed
de variabelen zijn gedeclareerd in het declaratie deel en geinitieerd in het setup deel van de schets
float x;
float y;
float n;
void setup() {
size(960, 540);
x = width/2;
y = height/2;
n = height/15;
}
void draw() {
background(#E6FBFF);
strokeWeight(2);
fill(255, 255, 0);
ellipse(x, y-4*n, 2*n, 2*n); //hoofd
rect(x-n, y-3*n, 2*n, 3*n); //lichaam
rect(x-2*n, y-3*n, n, 3*n); //arm li
rect(x+n, y-3*n, n, 3*n); //arm re
rect(x-n, y+2*n, n/2, 2*n); //li been
rect(x+n/2, y+2*n, n/2, 2*n); //Re been
quad(x-2*n, y+2*n, x-n, y, x+n, y, x+2*n, y+2*n); //jurk
}
heen en weer bewegend poppetje
De snelheid snelh x = 1 (zie regel 5) het poppetje zal telkens een pixel in x richting (zie regel 29) verplaatsen
De draw lus wordt 60 keer per seconde doorlopen (de framerate = 60) dus in 1 seconde is het poppetje 60 pixels in x richting verschoven
Het if statement (regel 30) zorgt er voor dat, zodra het poppetje aan de rand van het venster is aangekomen, de bewegingsrichting omdraait.
float x;
float y;
float n;
float snelhx = 1;
void setup() {
size(960, 540);
x = width/2;
y = height/2;
n = height/15;
}
void draw() {
background(#E6FBFF);
strokeWeight(2);
fill(255, 255, 0,100);
ellipse(x, y-4*n, 2*n, 2*n); //hoofd
rect(x-n, y-3*n, 2*n, 3*n); //lichaam
rect(x-2*n, y-3*n, n, 3*n); //arm li
rect(x+n, y-3*n, n, 3*n); //arm re
rect(x-n, y+2*n, n/2, 2*n); //li been
rect(x+n/2, y+2*n, n/2, 2*n); //Re been
quad(x-2*n, y+2*n, x-n, y, x+n, y, x+2*n, y+2*n); //jurk
//code heen en weer gaande beweging van het poppetje
x = x + snelhx;
if(x > width || x < 0) snelhx = snelhx*-1;
}