Esimerkki: Kierto ympäri
Komennolla: rotate(radians(kulma)); voidaan helposti sijoittaa mitä tahansa kuvioita ympyrän kehälle. Tehdään ohjelma, jossa kahdeksan punaista ympyrää sijoitetaan ympyrän kehälle.
|
// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
void setup () {
size(400,400); // ikkunan koko
background(255); // Valkea taustaväri
stroke(0); // Musta viivan väri
fill(255,0,0); // Punainen täyttöväri
}
void draw() {
translate(200,200); // Origo eli piste (0,0) on siirretty ikkunan keskelle
ellipse(100,0,20,20); // Piirrä 1. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 2. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 3. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 4. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 5. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 6. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 7. ympyrä
rotate(radians(45)); // Kierrä 45° myötäpäivään
ellipse(100,0,20,20); // Piirrä 8. ympyrä
}
Tässä ohjelmassa origo eli piste (0, 0) on ensin siirretty ikkunan keskelle translate(x,y)-komennolla. Ensimmäinen ympyrä on piirretty ikkunan keskikohdasta 100 pikseliä oikealle. Jonka jälkeen koordinaatistoa on kierretty 45° myötäpäivään ja piirretty uusi ympyrä. Ympyrällä on aina samat koordinaatit. Ympyrän paikka muuttuu, koska koordinaatisto kiertyy myötäpäivään. Alla on esitetty ohjelman esimerkkiajo.
Mikä olisi kierron suuruus, jos haluaisit piirtää 12 punaista ympyrää?
