Výuka IT

Želví grafika

Turtle je zábavná a interaktivní knihovna v Pythonu, která umožňuje kreslit nejrůznější tvary a vzory pomocí jednoduchých příkazů. V tomto rozsáhlém tutoriálu si krok za krokem ukážeme, jak začít, jak využívat základní i pokročilé funkce turtle, a přidáme bohaté příklady pro procvičení.

1. Instalace a úvod

Python standardně obsahuje modul turtle, takže není potřeba nic instalovat. Můžete ho importovat takto:

import turtle

Tento modul je ideální pro začátečníky, protože nabízí vizuální zpětnou vazbu a jednoduché API.

2. Spuštění a okno turtle

Abyste mohli kreslit, musíte vytvořit okno a objekt k vytváření čar (krokodýlka = turtle):

import turtle

# Vytvoření okna
environment = turtle.Screen()
environment.title("Moje první turtle aplikace")

t = turtle.Turtle()  # objekt kreslící čáry
t.speed(5)          # nastavení rychlosti

Metodou turtle.done() program ukončí a nechá okno otevřené.

3. Základní příkazy

Nejdůležitější příkazy turtle:

# Příklad: jednoduchý čtverec
t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)
turtle.done()

4. Kreslení geometrických tvarů

Pomocí smyčky for lze výrazně zkrátit kód:

for i in range(6):
    t.forward(80)
    t.right(60)
turtle.done()

Tento kód nakreslí pravidelný hexagon. Změnou rozsahu a úhlu lze vytvořit jakýkoli mnohoúhelník.

5. Cyklus pro opakování vzorů

Vnořené smyčky umožňují složité vzory:

for i in range(36):
    for i in range(4):
        t.forward(150)
        t.right(90)
    t.right(10)
turtle.done()

Výsledkem je "kyvadlo" z rovnoběžníků otáčejících se o 10°.

6. Barvy a tloušťka čáry

Nastavení barvy pera a výplně:

t.pensize(4)
t.pencolor("blue")
t.fillcolor("yellow")

t.begin_fill()
for i in range(3):
    t.forward(200)
    t.left(120)
t.end_fill()
turtle.done()

Tento příklad nakreslí vyplněný trojúhelník.

7. Práce s událostmi a interaktivita

Můžete reagovat na klávesy nebo kliknutí myši:

def dopredu():
    t.forward(50)

def doleva():
    t.left(45)

screen = turtle.Screen()
screen.listen()
screen.onkey(dopredu, "Up")
screen.onkey(doleva, "Left")
screen.mainloop()

Zmíněné funkce se spustí při stisku šipky nahoru a vlevo.

8. Vykreslování textu

Text lze přidat takto:

t.penup()
t.goto(-100, 100)
t.pendown()
t.write("Ahoj Turtle!", font=("Arial", 24, "normal"))
turtle.done()