Esimerkki: Viivan pyörittäminen ikkunan keskellä
Tehdään seuraavanlainen ohjelma.
|
// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
void setup () {
size(400,400); // Ikkunan koko
background(255); // Valkea taustan väri
stroke(0); // Musta viivan väri
}
void draw() {
translate(200,200); // Siirrä origo ikkunan keskelle
line(-100,0,100,0); // Piirrä 1. vaakaviiva
rotate(radians(45)); // Kierrä 45° myötäpäivään
line(-100,0,100,0); // Piirrä 2. vaakaviiva
rotate(radians(45)); // Kierrä 45° myötäpäivään
line(-100,0,100,0); // Piirrä 3. vaakaviiva
rotate(radians(45)); // Kierrä 45° myötäpäivään
line(-100,0,100,0); // Piirrä 4. vaakaviiva
}
Kuvio saadaan pyörimään, kun ensin siirretään origo eli piste (0, 0) ikkunan keskelle translate(x,y) komennolla. Viiva on nyt piirretty siten, että viivan keskipiste on origossa. Viivan alkupiste on nyt kohdassa (-100, 0) ja loppupiste kohdassa (100, 0). Nyt kun koordinaatistoa kierretään, niin viivan keskipiste pysyy samana koko ajan. Alla oleva kuva havainnollistaa ohjelman ajoa.
Kuinka muuttaisit koodia, jos sinun pitäisi piirtää yllä olevan kuvan jokaiseen väliin vielä uusi viiva, jolloin viivoja olisi jo yhteensä kahdeksan?
