Żółwia możesz narysować na papierze, używając prostych kół i łuków, albo wygenerować jego kształt w Pythonie za pomocą modułu Turtle. Pierwsza metoda sprawdzi się podczas rysowania dla dzieci, a druga pozwala połączyć geometrię z nauką programowania.

Jaką metodę wybrać?

Cecha Rysunek ręczny Python Turtle
Narzędzia Kartka, ołówek, gumka i kredki Python oraz moduł turtle
Potrzebne umiejętności Podstawowe szkicowanie kształtów Podstawy składni i geometrii
Charakter pracy Twórczy i plastyczny Algorytmiczny i cyfrowy
Efekt Kolorowy rysunek na papierze Grafika wygenerowana przez kod

Jak narysować żółwia na papierze?

Do prostego rysunku wystarczą podstawowe przybory. Przygotuj:

  • Kartkę papieru
  • Ołówek
  • Gumkę do mazania
  • Kredki lub flamastry

Zacznij od lekkiego szkicu. Dzięki temu łatwo poprawisz proporcje, zanim pogrubisz właściwe linie.

  1. Narysuj owalną skorupę. Możesz zacząć od dużego poziomego owalu, który będzie główną częścią żółwia.
  2. Dodaj głowę i szyję. Z jednej strony skorupy narysuj małe koło lub zaokrąglony kształt, a następnie połącz je krótką szyją ze skorupą.
  3. Dorysuj cztery łapy i ogon. Pod skorupą umieść cztery lekko wygięte kształty, a z przeciwnej strony dodaj mały, spiczasty ogon.
  4. Uzupełnij szczegóły. Narysuj oko, uśmiech i wzory na skorupie. Możesz podzielić ją na kilka zaokrąglonych pól przypominających tarczki.
  5. Pokoloruj rysunek. Skorupa może być brązowa, zielona albo wielobarwna, a głowa i łapy w odcieniu zieleni.

Najłatwiej budować ten rysunek z prostych kształtów. Owal tworzy skorupę, koło pomaga wyznaczyć głowę, a łuki nadają kształt łapom i wzorom. Nie musisz zachowywać realistycznych proporcji – bajkowy żółw może mieć większą głowę, krótsze łapy albo nietypowe kolory.

Jak narysować żółwia w Pythonie?

W Pythonie słowo „żółw” oznacza wirtualny wskaźnik poruszający się po cyfrowej planszy. Zapamiętuje on pozycję, kierunek oraz stan pióra. Gdy pióro jest opuszczone, ruch tworzy linię. Moduł Python Turtle należy do standardowej biblioteki Pythona, ale do wyświetlania okna graficznego potrzebuje komponentu tkinter.

W tym przykładzie skorupa powstanie z owalu, a głowa, łapy i ogon z prostych odcinków. Najpierw poznaj podstawowe polecenia:

  • forward() przesuwa żółwia do przodu o podaną odległość.
  • backward() cofa żółwia bez zmiany jego kierunku.
  • right() obraca żółwia w prawo o wskazany kąt.
  • left() obraca żółwia w lewo o wskazany kąt.
  • circle() rysuje okrąg albo fragment okręgu.
  • penup() i pendown() sterują tym, czy ruch zostawia ślad.

Prosty program rysujący żółwia

Skopiuj kod do pliku z rozszerzeniem .py i uruchom go w Pythonie:

import turtle as t

t.speed(0)
t.pensize(3)

# Skorupa
t.penup()
t.goto(-120, 0)
t.setheading(0)
t.pendown()

t.color("darkgreen", "lightgreen")
t.begin_fill()

for _ in range(2):
    t.circle(120, 60)
    t.circle(120, -60)

t.end_fill()

# Głowa
t.penup()
t.goto(120, 0)
t.setheading(0)
t.pendown()

t.color("darkgreen", "lightgreen")
t.begin_fill()
t.circle(35)
t.end_fill()

# Oko
t.penup()
t.goto(135, 20)
t.dot(8, "black")

# Łapy
t.color("darkgreen")

for x, y, angle in [(-75, -65, 220), (-15, -65, 320),
                     (-75, 65, 140), (-15, 65, 40)]:
    t.penup()
    t.goto(x, y)
    t.setheading(angle)
    t.pendown()
    t.forward(55)
    t.circle(12, 180)

# Ogon
t.penup()
t.goto(-120, 0)
t.setheading(180)
t.pendown()
t.forward(35)
t.left(25)
t.forward(20)
t.backward(20)
t.right(50)
t.forward(20)

t.hideturtle()
t.done()

Jak działa ten kod?

Program najpierw ustawia prędkość rysowania i grubość linii. Następnie przenosi żółwia na początek skorupy. Polecenie penup() pozwala zmienić pozycję bez rysowania, a pendown() włącza rysowanie.

Skorupa powstaje z dwóch powtarzanych łuków. Pętla for wykonuje tę samą sekwencję dwa razy, dzięki czemu nie trzeba wpisywać identycznych poleceń ręcznie. Polecenia begin_fill() i end_fill() zamykają fragment, który zostanie wypełniony kolorem.

Współrzędne określają położenie na planszy. Punkt (0, 0) znajduje się na środku ekranu. Wartość ujemna na osi x oznacza lewą stronę, dodatnia prawą, a współrzędna y przesuwa żółwia w górę lub w dół. Kierunek zmieniasz za pomocą setheading(), left() i right().

Dlaczego kod nie działa?

Przy pierwszych próbach z grafiką żółwia najczęściej pojawiają się problemy związane z konfiguracją Pythona albo sposobem uruchamiania skryptu:

  • Jeśli pojawia się błąd dotyczący _tkinter, w instalacji brakuje komponentu Tk. W systemach Linux może być konieczne doinstalowanie pakietu dostarczanego przez dystrybucję.
  • Jeśli okno znika natychmiast po uruchomieniu, dodaj na końcu programu t.done() albo t.mainloop().
  • Jeśli żółw porusza się w inną stronę niż zakładasz, sprawdź aktualny kierunek oraz wartości przekazywane do setheading().
  • Jeśli fragmenty rysunku łączą się przypadkowymi liniami, podnieś pióro przez t.penup() przed zmianą pozycji i opuść je ponownie przez t.pendown().