使用Python龟绘制更快的圆圈

时间:2013-05-18 12:42:45

标签: python turtle-graphics

我有一个练习,我必须用Python龟画很多圈子。我已设置speed(0),我正在使用:

from turtle import*
speed(0)
i=0
while i < 360:
    forward(1)
    left(1)
    i+=1

画圆圈。这需要很长时间。有没有更快的方法?

4 个答案:

答案 0 :(得分:6)

您是否尝试过turtle.delay()turtle.tracer()?请参阅文档herehere。这些设置选项用于屏幕刷新,这是大多数延迟的原因。

答案 1 :(得分:1)

你可以画出更少的片段,所以不是360就是120:

while i < 360:
    forward(3)
    left(3)
    i+=3

这会使你的圆圈变得不那么平滑,但绘制速度要快三倍。

答案 2 :(得分:0)

circle()方法可能不会更快,但可能更容易管理: turtle.circle()

答案 3 :(得分:0)

使用多线程同时绘制两个半圆。 最初,乌龟的位置为(0,0),因此只需克隆乌龟,并使它们都面向相反的方向180°,然后绘制半圆。代码如下:

from threading import Thread
import turtle
t = turtle.Turtle()
t.speed(0)
def semi1(r):
   r.circle(50,180)
def semi2(t):
   t.circle(50,180)

r = t.clone()
r.rt(180)

a = Thread(target=semi1).start()
b = Thread(target=semi2).start()

这可能会很快画圆。