Esimerkki: Monta peilausta peräkkäin

Tehdään ohjelma, jossa on useita peilauksia.

SANALLINEN ALGORITMI
  1. Aseta ikkunan kooksi 400 px vaakaan ja 400 px pystyyn.
  2. Aseta ikkunan taustaväriksi valkoinen.
  3. Aseta viivan väriksi musta
  4. Aseta viivan paksuudeksi 5.
  5. Siirrä origoa 200 px oikealle ja 200 px alas eli siirrä origo ikkunan keskelle.
  6. Piirrä x-akseli eli viiva, jonka alkupiste on (-200, 0) ja loppupiste on (200, 0).
  7. Piirrä y-akseli eli viiva, jonka alkupiste on (0, 200) ja loppupiste on (0, -200).
  8. Aseta punainen täyttöväri.
  9. Piirrä punainen kolmio, jonka nurkkapisteet ovat (50, 50), (150, 50) ja (50, 100).
  10. Peilaa koordinaatiston y-akseli, jolloin y:n arvot kasvavat ylöspäin.
  11. Aseta vihreä täyttöväri.
  12. Piirrä vihreä kolmio, jonka nurkkapisteet ovat (50, 50), (150, 50) ja (50, 100).
  13. Peilaa koordinaatiston x-akseli, jolloin x:n arvot kasvavat vasemmalle.
  14. Aseta sininen täyttöväri.
  15. Piirrä vihreä kolmio, jonka nurkkapisteet ovat (50, 50), (150, 50) ja (50, 100).

// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
void setup () {
size(400,400); // Ikkunan koko
background(255); // Taustaväri valkoinen
stroke(0); // Viivanväri musta
strokeWeight(5); // Viivan paksuus 5
}

void draw () {
translate(200,200); // Origo ikkunan keskelle
line(-200,0,200,0); // x-akseli
line(0,200,0,-200); // y-akseli
fill(255,0,0); // Punainen väri
triangle(50,50,150,50,50,100); // Piirrä punainen kolmio
scale(1,-1); // Peilaa y-akseli
fill(0,255,0); // Vihreä
triangle(50,50,150,50,50,100); // Piirrä vihreä kolmio
scale(-1,1); // Peilaa x-akseli
fill(0,0,255); // Sininen
triangle(50,50,150,50,50,100); // Piirrä sininen kolmio
}


Kannattaa huomata, että kolmio-komento on sama kaikilla kolmioilla. Ensimmäiseksi piirretään punainen kolmio oikealle alas, koska ilman peilausta x:n arvot kasvavat oikealle ja y:n arvot kasvavat alas. Tämän jälkeen peilataan y-akseli peilikuvaksi. Kun seuraavaksi piirretään vihreä kolmio samoilla koordinaateilla, niin vihreä kolmio piirretään nyt oikealle ylös, koska nyt x:n arvot kasvavat oikealle ja y:n arvot ylös. Seuraavaksi peilataan x-akseli. Kun nyt piirretään sininen kolmio, niin se piirretään vasemmalle ylös, koska nyt x:n arvot kasvavat oikealle ja y:n arvot kasvavat ylös. Koska y:n arvot jo peilattiin punaisen kolmion jälkeen, niin se asetus on yhä päällä piirrettäessä sinistä kolmiota. Tärkeintä on huomata, että komennot suoritetaan järjestyksessä. Ohjelman suoritus näyttää tältä.