Podstawowe komendy.
Efekty Twojego kodu będą widoczne w postaci rysunku. To co musisz znać, to podstawowe polecenia pozwalające
przemieszczać się po ekranie, rysować linie, zmieniać kolory itp. Poniżej znajduje się lista podstawowych poleceń, bez któych
zaprogramowanie czegokolwiek nie będzie możliwe.
Lista podstawowych poleceń w python with turtle.
Polecenie | Skrót polecenia | Przykład | Opis |
---|---|---|---|
forward(odległość) | fd(odległość) | fd(120) | Żółw idzie o 120px do przodu |
backward(odległość) | bk(odległość) | bk(120) | Żółw idzie o 120px do tył |
right(kąt) | rt(kąt) | rt(90) | Żółw obraca się w prawo o 90o |
left(kąt) | lt(kąt) | lt(90) | Żółw obraca się w lewo o 90o |
penup() | pu() | pu() | Żółw Podnosi się i przestaje rysować |
pendown() | pd() | pd() | Żółw opuszcza się i znów może rysować |
home() | home() | home() | Ustawia żółwia w położeniu początkowym (0, 0) |
setposition(x,y) | setpos(x,y) | setpos(60,30) | ustawia żółwia zgodnie z wpisanymi koordynatami. |
hideturtle() | ht() | ht() | wyłącza widoczność żółwia w obszarze roboczym. |
showturtle() | st() | st() | włącza widoczność żółwia w obszarze roboczym. |
speed(liczba) | speed(liczba) | speed(6) | Ustawia prędkość poruszania się żółwia (0 - 10). |
pencolor("kolor") | pencolor("kolor") | pencolor("green") | zmienia kolor pisaka według nazw kolorów lub kodów hex. |
pensize(liczba) | width(liczba) | width(6) | zmienia szerokość pisaka w pixelach. |
bgcolor("kolor") | bgcolor("kolor") | bgcolor("#808080") | zmienia kolor tła według nazw kolorów lub kodów hex. |
color("kontur", "wypełnienie") | color("kontur", "wypełnienie") | color("black", "red") | Ustawia kolor konturu i wypełnienia. |
begin_fill() | begin_fill() | begin_fill() | Rozpoczyna proces wypełniania kolorem (wcześniej trzeba go ustawić). |
end_fill() | end_fill() | end_fill() | Rozpoczyna proces wypełniania kolorem (wcześniej trzeba go ustawić). |
Nazywanie żółwia.
Aby móc używać powyższych poleceń i rysować coś za ich pomocą, trzeba skorzystać z polecenia import turtle
.
Dopiero wtedy polecenia są prawidłowo interpertowane i żółw zaczyna nas "słuchać".
przykładowe polecenie pozwalające narysować prostą linię będzie wyglądało tak:
turtle.forward(25)
można uprościć proces kodowania i przypisać żółwiowi inna nazwę. Aby to zrobić należy wymyślić nazwę zmiennej (imię żółwia)
i przechować w niej funkcję turtle.Turtle()
. Dla przykładu nadajmy żółwiowi imię: max
max = turtle.Turtle()
Teraz można sterować żółwiem używając własnej, często krótszej nazwy:
max.forward(25)
lub po prostu
max.fd(25)
Przykłdowy kod.
Poskładajmy wszystkie informacje w jedną całość. Po pierwsze musisz zaimportować bibliotekę żółwia, po drugie nazwać go,
a po trzecie zacząć pisać polecenia sprawiające, że żółw chodzi po ekranie i rysuje.
import turtle
max = turtle.Turtle()
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
Jaki będzie efekt działania takiego kodu?
WARTO WIEDZIEĆ!
Język python z żółwiem posiada znacznie więcej poleceń niż możesz sobie to wyobrazić. Jeśli chcesz wiedzieć wszystko na temat tego języka, tutaj znajdziesz całą dokumentację języka
python with turtle
!
Jak określić położenie żółwia?
Poniższy wykres obrazuje w jaki sposób zmienia się położenie żółwia względem środka układu współrzędnych.
Gdy uruchamiasz swojego repla, żółw zawsze jest na środku ekranu w punkcie A(0, 0).
Oś X to linia pozioma po której porusza się żółw, kiedy chodzi w prawo lub w lewo. Wtedy zmienia się pierwsza
wartość liczbowa w nawiasie (x, y). Kiedy żółw idzie w górę lub w dół, zmienia się druga wartość w nawiasie
czyli y. Jak widać na poniższym rysunku, żółw by przejść do punktu D, musi pójść w prawo o 100 px, a następnie
w górę o 50 px. Dlatego w nawiasie znajdują się następujące wartości D(100, 50).
Jeśli pokierujemy żółwia z punktu D w dół poniżej osi X, np o 150 px w dół, to nowy punkt np E, miałby
następujące współrzędne - E(100, -100).
ZAPAMIĘTAJ!
Nasuwa się pytanie: Po co mi to? Odpowiedź daje do myślenia. Wyobraź sobie sytuację, w której po narysowaniu złożonego obrazu, chcesz przenieść się w bardzo konkretne miejsce. Zamiast poruszać się po narysowanych wcześniej liniach z podniesionym pisakiem, możesz po prostu użyć polecenia
turtle.setpos(x, y)
. Kolejne pytanie jakie się nasuwa to jaką wartość wpisać zamiast współrzędnychx
iy
.
Jak duże obiekty można narysować? To ile zobaczysz zależy od rozdzielczości Twojego wyświetlacza.
Najlepiej sprawdź jak długą linię w każdym kiedunku możesz narysować w trybie zmaksymalizowanym. Przed rozpoczęciem rysowania przenieś swojego żółwia w inne miejsce, inaczej rozpoczniesz rysunek od środka kartki.
Basic commands.
The effects of your code will be visible as a drawing. What you need to know are the basic commands to
move around the screen, draw lines, change colors, etc. Below is a list of basic commands, without which
you will not be able to program anything without them.
List of commands.
Command | short version | Example | Description |
---|---|---|---|
forward(distance) | fd(distance) | fd(120) | Turtle goes 120px forward |
backward(distance) | bk(distance) | bk(120) | The turtle goes 120px backwards |
right(angle) | rt(angle) | rt(90) | Turtle rotates clockwise by 90o |
left(angle) | lt(angle) | lt(90) | The turtle turns 90o to the left |
penup() | pu() | pu() | The turtle up and stops drawing |
pendown() | pd() | pd() | Turtle down and can draw again |
home() | home() | home() | Sets the turtle to the starting position (0, 0) |
setposition(x,y) | setpos(x,y) | setpos(60,30) | positions the turtle according to the entered coordinates. |
hideturtle() | ht() | ht() | disables the visibility of the turtle in the work area. |
showturtle() | st() | st() | makes the turtle visible in the work area. |
speed(number) | speed(number) | speed(6) | Sets the speed at which the turtle moves (0 - 10). |
pencolor("color") | pencolor("color") | pencolor("green") | changes the color of the pen by color names or hex codes. |
pensize(number) | width(number) | width(6) | changes the width of the pen (in pixels). |
bgcolor("color") | bgcolor("color") | bgcolor("#808080") | changes the background color according to color names or hex codes. |
color("border", "fill") | color("border", "fill") | color("black", "red") | Sets the outline and fill color. |
begin_fill() | begin_fill() | begin_fill() | Starts the color filling process (must be set beforehand). |
end_fill() | end_fill() | end_fill() | Finishes the process of filling with color (you have to set it before). |
Naming the turtle.
To be able to use the above commands and draw something using them, you need to use the command import turtle
Only then the commands are properly interperted and the turtle begins to "listen".
An example command to draw a straight line would look like this:
turtle.forward(25)
You can simplify the encoding process and assign a different name to the turtle. To do this you need to think of a variable name (the name of the turtle)
and store in it the function turtle.Turtle()
. For example, let's give the turtle a name: max
max = turtle.Turtle()
Now you can control the turtle using its own, often shorter, name:
max.forward(25)
or simply
max.fd(25)
Example code.
Let's put all the information together. First, you need to import the turtle library, second, name it,
and third, start writing commands that make the turtle walk around the screen and draw.
import turtle
max = turtle.Turtle()
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
max.fd(100)
max.lt(90)
What will be the effect of this code?
GOOD TO KNOW!
The Python with turtle language has many more commands than you can imagine. If you want to know all about this language, here you will find all the documentation for the
Python with turtle
language!
How to determine the position of a turtle?
The diagram below shows how the position of the turtle changes relative to the center of the coordinate system.
When you run your rep, the turtle is always at the center of the screen at point A(0, 0).
The X axis is the horizontal line along which the turtle moves when it walks to the right or left. This is when the first
numerical value in parentheses (x, y). When the turtle goes up or down, the second value in parentheses changes
which is y. As you can see in the figure below, in order to go to point D, the turtle must go to the right by 100 px and then
up by 50 px. Therefore, the following values of D(100, 50) are in parentheses.
If we steer the turtle from point D down below the X-axis, e.g. 150 px down, the new point, e.g. E, would
have the following coordinates - E(100, -100).
REMEMBER!
The question arises: why do I need it? The answer gives food for thought. Imagine a situation, in which, after drawing a complex picture, you want to move to a very specific place. Instead of move along previously drawn lines with a raised pen, you can simply use the
turtle.setpos(x, y)
command. Another question that arises is what value to enter instead of thex
andy
coordinates.
How big can objects be drawn? How many you will see depends on the resolution of your display.
The best way is to check how long a line in each circle you can draw in maximized mode. Before you start drawing, move your turtle to another location, otherwise you will start drawing from the middle of the page.