Python での Turtle アニメーション速度の最適化
Turtle は Python でアニメーションを作成するための強力なツールですが、その固有の速いペースが欠点になる場合があります。これを軽減するには、アニメーションの基礎となる原則を理解することが不可欠です。
提供された Python コードでは、主な問題は、Turtle のようなイベント駆動型環境内での while True と sleep() の使用にあります。代わりに、Turtle 内でタイマー イベントを使用することをお勧めします。その方法は次のとおりです:
<code class="python">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>
この改訂されたコードは screen.ontimer() を利用し、rotate() 関数が特定の時間間隔 (この場合は 40 ミリ秒) で実行されるようにスケジュールします。この間隔を調整することで、アニメーションの速度を制御できます。
以上がTurtle でアニメーションの速度を制御する方法: Python でスムーズで意図的な動きを実現するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。