Profissionais geralmente encontram situações em que suas animações de tartaruga são executadas em uma velocidade indesejável. Embora o método tracer() e experimentar vários números nele possam parecer insuficientes, uma solução simples, mas eficaz, está em outro lugar.
Para atingir uma velocidade normal de animação usando Turtle, é crucial evitar depender de while True: ou sleep() é construído em um ambiente orientado a eventos. Estas técnicas não são ideais para tartarugas. Em vez disso, utilizar um evento de temporizador Turtle pode fornecer uma abordagem mais eficiente.
O código a seguir demonstra como implementar uma animação de moinho de vento baseada em temporizador:
from turtle import Screen, Turtle
def rectangle(t):
t.forward(50)
t.left(90)
t.backward(5)
t.pendown()
for _ in range(2):
t.forward(10)
t.right(90)
t.forward(120)
t.right(90)
t.penup()
def windmill(t):
for _ in range(4):
t.penup()
rectangle(t)
t.goto(0, 0)
screen = Screen()
screen.tracer(0)
turtle = Turtle()
turtle.setheading(90)
def rotate():
turtle.clear()
windmill(turtle)
screen.update()
turtle.left(1)
screen.ontimer(rotate, 40) # adjust speed via second argument
rotate()
screen.mainloop()
Ao utilizar o método ontimer(), você tem controle preciso sobre a velocidade da animação por meio do segundo argumento, que representa o intervalo de tempo em milissegundos entre cada quadro de animação. Ajustar esse valor permite ajustar a velocidade para o nível desejado, fornecendo uma animação suave e visualmente atraente.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3