turtle绘图
中文API文档的连接
Turtle的方法
海龟动作
移动和绘制
函数 | 作用 |
---|---|
forward() | fd() 前进 |
backward() | back() 后退 |
right() | rt() 右转 |
left() | lt() 左转 |
goto() 、 setpos()、setposition() | 前往/定位 |
setx() | 设置x坐标 |
sety() | 设置y坐标 |
setheading() 、seth() | 设置朝向 |
home() | 返回原点 |
circle() | 画圆 |
dot() | 画点 |
stamp() | 印章 |
clearstamp() | 清除印章 |
clearstamps() | 清除多个印章 |
undo() | 撤消 |
speed() | 速度 |
获取海龟的状态
函数 | 作用 |
---|---|
position() | pos() 位置 |
towards() | 目标方向 |
xcor() | x坐标 |
ycor() | y坐标 |
heading() | 朝向 |
distance() | 距离 |
设置与度量单位
函数 | 作用 |
---|---|
degrees() | 角度 |
radians() | 弧度 |
画笔控制
绘图状态
函数 | 作用 |
---|---|
pendown() 、 pd() 、down() | 画笔落下 |
penup() 、pu() 、up() | 画笔抬起 |
pensize() 、width() | 画笔粗细 |
pen() | 画笔 |
isdown() | 画笔是否落下 |
颜色控制
函数 | 作用 |
---|---|
color() | 颜色 |
pencolor() | 画笔颜色 |
fillcolor() | 填充颜色 |
填充
函数 | 作用 |
---|---|
filling() | 是否填充 |
begin_fill() | 开始填充 |
end_fill() | 结束填充 |
更多绘图控制
函数 | 作用 |
---|---|
reset() | 重置 |
clear() | 清空 |
write() | 书写 |
海龟状态
可见性
函数 | 作用 |
---|---|
showturtle() | st() 显示海龟 |
hideturtle() | ht() 隐藏海龟 |
isvisible() | 是否可见 |
外观
函数 | 作用 |
---|---|
shape() | 形状 |
resizemode() | 大小调整模式 |
shapesize() 、 turtlesize() | 形状大小 |
shearfactor() | 剪切因子 |
settiltangle() | 设置倾角 |
tiltangle() | 倾角 |
tilt() | 倾斜 |
shapetransform() | 变形 |
get_shapepoly() | 获取形状多边形 |
使用事件
函数 | 作用 |
---|---|
onclick() | 当鼠标点击 |
onrelease() | 当鼠标释放 |
ondrag() | 当鼠标拖动 |
特殊海龟方法
函数 | 作用 |
---|---|
begin_poly() | 开始记录多边形 |
end_poly() | 结束记录多边形 |
get_poly() | 获取多边形 |
clone() | 克隆 |
getturtle() | getpen() 获取海龟画笔 |
getscreen() | 获取屏幕 |
setundobuffer() | 设置撤消缓冲区 |
undobufferentries() | 撤消缓冲区条目数 |
TurtleScreen/Screen 方法
窗口控制
函数 | 作用 |
---|---|
bgcolor() | 背景颜色 |
bgpic() | 背景图片 |
clear() | clearscreen() 清屏 |
reset() | resetscreen() 重置 |
screensize() | 屏幕大小 |
setworldcoordinates() | 设置世界坐标系 |
动画控制
函数 | 作用 |
---|---|
delay() | 延迟 |
tracer() | 追踪 |
update() | 更新 |
使用屏幕事件
函数 | 作用 |
---|---|
listen() | 监听 |
onkey() 、onkeyrelease() | 当键盘按下并释放 |
onkeypress() | 当键盘按下 |
onclick() | onscreenclick() 当点击屏幕 |
ontimer() | 当达到定时 |
mainloop() 、done() | 主循环 |
设置与特殊方法
函数 | 作用 |
---|---|
mode() | 模式 |
colormode() | 颜色模式 |
getcanvas() | 获取画布 |
getshapes() | 获取形状 |
register_shape()、addshape() | 添加形状 |
turtles() | 所有海龟 |
window_height() | 窗口高度 |
window_width() | 窗口宽度 |
输入方法
函数 | 作用 |
---|---|
textinput() | 文本输入 |
numinput() | 数字输入 |
Screen | 专有方法 |
bye() | 退出 |
exitonclick() | 当点击时退出 |
setup() | 设置 |
title() | 标题 |
先导入turtle模块
附上一个随机绘图的程序
程序会按照’red’, ‘green’ , ‘yellow’, ‘black’, ‘brown’, ‘blue’, 'purple’的顺序运行
会随机的进行前进、画圈、转弯
import turtle as t
from random import *
def goaway():
t.width(randrange(3, 10))
t.speed(randrange(10))
t.forward(randrange(100) )
def turnaway():
if(randrange(100) % 2 == 0):
t.width(randrange(3, 10))
t.speed(randrange(10))
t.left(randrange(90) )
else:
t.width(randrange(3, 10))
t.speed(randrange(10))
t.right(randrange(90) )
def drawcircle():
t.width(randrange(3, 10))
t.speed(randrange(10))
t.circle(randrange(50))
t.showturtle()
t.color("black")
list = ['red', 'green' , 'yellow', 'black', 'brown', 'blue', 'purple']
i = 0
while(True):
t.color(list[i])
i += 1
if(i == 7):
i = 0
if(randrange(100) % 2 == 0):
turnaway()
elif(randrange(100) % 3 == 0):
goaway()
else:
drawcircle()
运行后的结果可能是
import turtle as t
lists = ['red', 'green' , 'yellow', 'black', 'brown', 'blue', 'purple']
i = 0
for x in range(3600):
t.forward(x)
t.color(lists[i])
i += 1
if(i == 7):
i = 0
t.speed(10)
t.left(59)