×

10. Turtle-moduuli

Edellisellä tunnilla tutustuttiin math- ja random-moduuleihin. Tällä tunnilla tutustutaan Turtle-moduuliin, jolla on mahdollista piirtää erilaisia tasokuvioita. 

Turtle-moduuli

Turtle-grafiikan avulla pythonilla voidaan tuottaa piirustuksia, jotka koostuvat piirustusalustalla liikkuvan osoittimen jäljestä. Osoitinta liikutetaan käyttäjän antamilla käskyillä. Osoitin on yleensä muodoltaan nuolen kärki, mutta joissakin ohjelmointiympäristöissä se voi olla jokin muukin kuvio (esim. pieni kilpikonna). Osoittimelle voidaan antaa ominaisuuksina sijainti, suunta tai ”kynän” tila, joiden mukaan näytölle tulostuu esimerkiksi jokin monikulmio.

Turtle-moduuli on osa Python-kielen standardikirjastoa, mutta moduuli ei silti toimi kaikilla netin ohjelmointialustoilla. Tällä kertaa käytetäänkin replit sivun sijaan sivustoa trinket.io, jossa turtle-moduulia toimii. 

Turtle-moduli tulee aina koodin alussa ottaa käyttöön kutsumalla sitä alussa koodilla import turtle, jonka jälkeen osoitin nimetään haluamallaan nimellä. Kopioi alla oleva koodi ja kokeile sitä trinket.io:ssa:

import turtle

kilppari = turtle.Turtle()

kilppari.forward(50)

Ylläolevassa koodissa osoitin on siis nimetty nimellä "kilppari" ja osoitin liikkuu 50 askelta eteenpäin. Alla olevassa taulukossa on turtle-moduulin yleisimmät komennot.

 

Merkitys Komento
eteenpäin
forward()
taaksepäin
backward()
oikealle
right()
vasemmalle
left()
siirry
goto()
nostaa "kynän" ylös
penup()
laskee "kynän" alas
pendown()
"Kynän" värin vaihtaminen
pencolor()
Pysäytys
done()

 

Huom!

Komento goto() siirtää nuolen pisteeseen (x,y), jotka annetaan sulkeiden sisään. Mikäli edellä mainittuja komentoja ei syötetä, on osoitin oletusarvoisesti pisteessä (0,0). Esimerkiksi komento goto(0,50) siirtää nuolen lähtöpisteestä pystysuunnassa 50 askelta pisteeseen (0,50) ja vastaavasti komento goto(100,-40) siirtää nuolen pisteeseen (100,-40), eli 100 askelta oikealle ja 40 askelta alas. 

 

Tehtäviä

1. Piirrä neliö.

2. Piirrä tasasivuinen kolmio.

3. Piirrä säännöllinen kuusikulmio

4. Piirrä kuutio.

Vinkki: Kuution vinoissa sivuissa käännös on 45°. Vinojen sivujen pituus on puolet suorista sivuista. Esimerkiksi, jos etuneliön sivuin pituus on 100, niin vinon sivun pituus on 50.

5. Piirrä kolme sisäkkäistä tasasivuista kolmiota.

6. Piirrä tasakylkinen kolmio ja sille korkeusjana, joka puolittaa kolmion kannan. 

7. Piirrä tähti.

8. Kokeile kirjoittaa etunimesi turtlen avulla. Pyöreät muodot voit tehdä kantikkaina.

9. Piirrä vapaavalintainen kuva.

 

Palautus

 Tallenna vastauksesi Classroomissa olevaan portfolioon. 

Opetellaan ohjelmoinnin alkeita; opetellaan loogista ajattelua ja harjoitellaan yksinkertaisen koodin kirjoittamista sekä syvennetään matematiikan osaamista oppilaiden kiinnostuksen mukaan. Tarkoituksena on opetella ohjelmoinnin alkeita ainakin yhdellä ohjelmointikielellä ja syventää matematiikan osaamista.