1、Turtle Methods
Turtle motion | method | function |
Move and draw | forward(distance) | fd(distance) | 向前移动指定的距离,方向为当前海龟的朝向 |
backward(distance) | bk(distance) | back(distance) | 向后移动指定的距离,与海龟当前的朝向相反,并且不改变海龟的朝向 |
right(angle) | rt(angle) | 向右转动指定的角度 |
left(angle) | lt(angle) | 向左转动指定的角度 |
goto(x, y=None) | setpos(x, y=None) | setposition(x, y=None) | 移动海龟到指定的坐标处,并且不改变朝向 |
setx(x) ) | 将海龟的x坐标修改为指定值,y坐标不变 |
sety(y) | 将海龟的y坐标修改为指定值,x坐标不变 |
setheading(to_angle) | seth(to_angle) | 将海龟的朝向修改为指定值 |
home() | 移动到原点坐标,并将其朝向修改为初始状态 |
circle(radius, extent=None, steps=None) | 绘制给定半径的园 |
dot(size=None, *color) | 使用指定颜色绘制给定大小的圆点 |
undo() | 撤销上一个动作 |
speed(speed=None) | 设置海龟的移动速度[0,10] |
Tell Turtle’s state() | position() | pos() | 返回海龟的当前位置坐标 |
xcor() | 返回海龟的当前x坐标 |
ycor() | 返回海龟的当前y坐标 |
heading() | 返回海龟的当前朝向 |
distance(x, y=None) | 返回海龟到给定坐标、向量或其他海龟的距离 |
Setting and measurement | degrees(fullcircle=360.0) | 设置角度测量单位,即一圈的度数 |
radians() | 将角度测量单位设置为弧度 |
Pen control | method | function |
Drawing state | pendown() | pd() | down() | 拉下笔,移动时画图 |
penup() | pu() | up() | 提起笔,移动时不画图 |
pensize(width=None) | width(width=None) | 设置画笔的大小 |
isdown() | 返回笔的状态是否为放下 |
Color control | color() | 返回当前的画笔颜色和填充颜色 |
pencolor(colorstring) | 设置画笔颜色 |
fillcolor(colorstring) | 设置填充颜色 |
Filling | filling() | 返回是否完成填充 |
begin_fill() | 在绘制一个被填充形状之前调用 |
end_fill() | 绘制一个被填充形状之后调用 |
More drawing control | reset() | 从屏幕上删除海龟的画图,重新居中海龟,并将变量设置为默认值 |
clear() | 从屏幕上删除海龟的画图, 不移动海龟, 海龟的状态和位置以及其他海龟的画图不受影响。 |
2、Draw Tree
from turtle import Turtle
def tree(plist, l, a, f):
if l > 5:
lst = []
for p in plist:
p.forward(l)
q = p.clone()
p.left(a)
q.right(a)
lst.append(p)
lst.append(q)
tree(lst, l*f, a, f)
def maketree(x, y):
p = Turtle()
p.color("green")
p.pensize(5)
p.speed(10)
p.hideturtle()
p.getscreen().tracer(30, 0)
p.left(90)
p.penup()
p.goto(x, y)
p.pendown()
tree([p], 110, 65, 0.6375)
def main():
maketree(-180, -180)
maketree(0, 0)
maketree(180, -180)
main()
![这里写图片描述](https://img-blog.csdn.net/20180120223453284?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQxMzM0OTE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)