Prędkość żółwia w Turtle
Normalnie żółw rysuje powoli każdą linię kawałek po kawałku (wykonująć wiele małych kroków)
import turtle
length = 1
for i in range(200):
turtle.forward(length)
turtle.right(90)
length += 4
turtle.done()
Aby zmienić jego prędkość można użyć turtle.speed(liczba)
gdzie 1
oznacza najwolniej, 10
szybko ale 0
oznacza najszybciej.
Można też używać wyrazów, które zastępują niektóre prędkości
- “fastest”: 0
- “fast”: 10
- “normal”: 6
- “slow”: 3
- “slowest”: 1
import turtle
turtle.speed(0)
#turtle.speed('fastest')
length = 1
for i in range(200):
turtle.forward(length)
turtle.right(90)
length += 4
turtle.done()
Każde rysowanie linii składa się z wielu małych kroków żółwia i po każdym kroku obraz w oknie jest odświeżany (aktualizowany) można jednak to zmienić i określić co ile kroków program ma odświeżyć obraz w oknie co potrafi lepiej przyspieszyć rysowanie
Przykładowo aktualizowanie obrazu co 10 kroków
turtle.tracer(10) # redraw scree every 10 moves.
Dla pewności na koniec można jeszcze wymusić aktualizację obrazu gdyby okazało się, że ostatnia część miała mniej niż 10 kroków i nie została wyświetlona
turtle.update() # update content on screen
Można także całkowicie pominąć odświeżanie obrazu w oknie co najbardziej przyspiesza rysowanie bo całkowicie pomija animację ruchu żółwia
turtle.tracer(False) # stop animation and don't update content on screen
import turtle
#turtle.tracer(10) # redraw scree every 10 moves.
turtle.tracer(False) # stop animation and don't update content on screen
length = 1
for i in range(200):
turtle.forward(length)
turtle.right(90)
length += 4
turtle.update() # update content on screen
turtle.done()
Doc: turtle.speed(), turtle.tracer(), turtle.update()
