操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令、画笔控制命令、全局控制命令
画笔运动命令
| 命令 |
说明 |
| turtle.forward(distance) |
向当前画笔方向移动distance像素长度 |
| turtle.backward(distance) |
向当前画笔相反方向移动distance像素长度 |
| turtle.right(degree) |
顺时针移动degree° |
| turtle.left(degree) |
逆时针移动degree° |
| turtle.pendown() |
移动时绘制图形,缺少参数时也为绘制 |
| turtle.goto(x,y) |
将画笔移动到坐标为(x,y)的位置 |
| turtle.penuo() |
提起画笔,不绘制图形,用于另起一个地方绘制 |
| turtle.circle() |
画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆 |
| setx() |
将当前x轴移动到指定位置 |
| sety() |
将当前y轴移动到指定位置 |
| setheading(angle) |
设置当前朝向为angle的角度 |
| home() |
设置当前画笔位置为原点,朝向向东 ° |
画笔控制命令
| 命令 |
说明 |
| turtle.fillcolor(colorstring) |
绘制图形填充颜色 |
| turtle.color(color1, color2) |
同时设置 pencolor = color1,fillcolor = color2 |
| turtle.filling() |
返回当前是否在填充状态 |
| turtle.begin_fill() |
准备开始填充图形 |
| turtle.end_fill() |
填充完成 |
| turtle.hideturtle() |
隐藏画笔的turtle形状 |
| turtle.showturtle() |
显示画笔的turtle形状 |
全局控制命令
| 命令 |
说明 |
| turtle.clear() |
清空turtle窗口,但是turtle的位置和状态不会发生变化 |
| turtle.reset() |
清空窗口,重置turtle状态为起始状态 |
| turtle.undo() |
撤销上一个turtle动作 |
| turtle.isvisible() |
返回当前turtle是否可见 |
| stamp() |
复制当前图形 |
| turtle.write(s[,font = ("font_name",font_size,"font_type")]) |
写文本,s为文本内容,font是字体参数,分别是字体名称,字体大小和类型,font和font的参数都是可选选项 |
案例
案例一
# 导入 turtle 模块
import turtle as t
t.goto(100,100)
t.goto(100,-100)
t.goto(-100,-100)
t.goto(-100,100)
t.goto(0,0)
t.done()

案例二
# 用for循环初步实现画笔自动绘图
import turtle as t
for i in range(20):
# 画笔向前移动
t.forward(100 + 10 * i)
# 顺时针旋转120°
t.right(120)
t.done()

案例三
# 用for循环初步实现画笔自动绘图并显示其印记
import turtle as t
for i in range(20):
# 画笔向前移动
t.forward(100 + 10 * i)
#t.shape("turtle") # 海龟
#t.shape("circle") # 圆
t.shape("square") # 正方形
# 打印turtle印记
t.stamp()
# 顺时针旋转60°
t.right(60)
t.done()

案例四
# 绘制金光闪闪的太阳
import turtle as t
# 为小数时表示占据电脑屏幕的比例
t.setup(width = 0.6, height = 0.6)
# t.pencolor("red")
t.color("red", "yellow")
t.begin_fill()
# 控制绘图时间
t.speed(20)
while True:
t.forward(200)
t.left(170)
# print(t.pos())
if abs(t.pos()) < 1:
break
t.end_fill()
t.write("一颗金光闪闪的太阳", align = "right", font = ("Arial", 20, "normal"))
t.done()

案例五
# 粉色的爱心
import turtle as t
t.setup(800,800)
t.speed(8)
# 设置画笔大小
t.pensize(10)
t.hideturtle()
t.pencolor("pink")
t.left(45)
t.forward(80)
t.circle(35,210)
t.right(150)
t.circle(35,210)
t.forward(80)
t.done()
