Python에서 Turtle 애니메이션 속도를 제어하는 방법
Python의 Turtle 라이브러리에서는 애니메이션 속도가 너무 빠르다고 인식되는 경우가 많습니다. . 이 문서에서는 애니메이션 속도를 보다 관리하기 쉬운 속도로 조정하는 수정된 코드 조각을 제공하여 문제를 해결합니다.
제공된 코드는 Tracer() 메서드를 사용하여 자동 화면 업데이트를 끄고 새로 고침을 수동으로 제어할 수 있도록 합니다. 비율. 그러나 지속적인 애니메이션을 위해 while True: 루프를 사용하므로 빠른 실행이 가능합니다.
이 문제를 해결하기 위해 수정된 코드는 while True:를 screen.ontimer() 이벤트 함수로 대체합니다. 이 함수는 구성 가능한 지연(밀리초)을 사용하여 화면을 새로 고치고 애니메이션을 진행시키는 반복 이벤트를 예약합니다.
업데이트된 코드는 다음과 같습니다.
<code class="python">import turtle 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()</code>
두 번째 인수를 조정하여 (밀리초 단위)에서 ontimer()로 애니메이션 속도를 수정할 수 있습니다. 값이 낮을수록 애니메이션이 느려지고, 값이 높을수록 애니메이션이 빨라집니다.
위 내용은 Python에서 거북이 애니메이션 속도를 늦추는 방법: `while True:`를 `screen.ontimer()`로 바꾸나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!