Les 5 - conditionelen
Les 5 ging over conditionelen, ofwel if else
structuren.
De presentatie van deze les vind je hier: Javascript-les-5-conditionelen.pdf
In de syllabus staat een uitleg geschreven over if else
structuren
En de code van deze les:
//maak hieronder de variabelen aan die we nodig hebben:
// de x- en y-positie van de bal
let posX;
let posY;
//de x- en y-positie van waar de bal heen moet.
let newXPos;
let newYPos;
function setup() {
//plaats hier de code die maar ÊÊn keer hoeft te worden uitgevoerd
createCanvas(800,600);
background(255);
//bepaal hier de startpositie van de bal
//dit kan niet buiten de setup, omdat dan de grootte van
//het canvas nog niet bekend is.
posX = width*0.5;
posY = height*0.5;
//de grootte van de tekst in het scherm.
textSize(48);
}
function draw() {
//als de positie van de bal rechts is van de helft van het canvas
//maak het scherm rood
if (posX > width/2) {
// r g b a(lpha)
background(255,0,0,10);
}
//Als de positie van de bal links is van de helft van het canvas
//maak het scherm groen
else if (posX < width/2) {
background(0,255,0,10);
}
//als de bal exact in het midden is
//maak het scherm blauw
else {
background(0,0,255,10);
}
//bepaal de dikte van de lijnen
strokeWeight(10);
//teken een verticale lijn midden in het scherm
line(width*0.5,0,width*0.5,height);
//teken de bal.
ellipse(posX,posY,30);
//beweeg de bal naar de opgeslagen muispositie toe
//als de nieuwe x-positie kleiner is dan die van de bal
//verschuif de x-positie 1 pixel naar links
if (newXPos < posX) {
posX -= 1;
}
//als de nieuwe x-positie groter is dan die van de bal
//verschuif de x-positie 1 pixel naar rechts
else if (newXPos > posX) {
posX += 1;
}
//doe hieronder hetzelfde voor de y-positie
if (newYPos < posY) {
posY -= 1;
}
else if (newYPos > posY) {
posY += 1;
}
//plaats hieronder de tekst met:
//de afgeronde x-positie (tussen 0 - 799) / 4 - 100
//om het van -100 tot 100 te krijgen.
//1e argument is de te plaatsen tekst
//2e argument is de x-positie van de tekst
//3e argument is de y-positie van de tekst
text(int(posX/4-100),20,50);
//andere manieren om af te ronden:
//round -> rondt af naar dichtstbijzijnde hele getal
//floor -> rondt af naar beneden
//ceil -> rondt af naar boven
//trunc -> haalt kommagetal eraf.
}
//onderstaande functie wordt aangeroepen als je op de muis klikt:
function mousePressed() {
//bepaal de positie waar het balletje naar toe moet:
//aan de hand van de x- en y-positie van de muis op dat moment
newXPos = mouseX;
newYPos = mouseY;
}