海龟编程 python绘图工具turtle库的用法
- 画布:
画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置
1.1 设置画布大小
(1)turtle.screensize(canvwidth=none, canvheight=none, bg=none)
turtle.screensize(800,600,”green”) #画布的宽,高,画布颜色
turtle.screensize() #返回默认大小(400,300)
- 画笔
turtlr.pensize() 设置画笔的宽度
turtle.pencolor() 传入参数可设置画笔的颜色,可以是字符串”green”,”red”,也可以RGB 3元组,不传入参数则返回当前画笔的颜色
turtle.speed() 设置画笔的移动速度,画笔绘制的速度范围[0,10]的整数,数字越大越快
画笔运动命令:
Turtle.forward(distance) 向当前画笔方向移动distance像素长
Turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
Turtle.right(degree) 顺时针移动degree°
Turtle.left(degree) 逆时针移动degree°
Turtle.pendown() 移动时绘制图形,缺省时也会绘制。落笔
Turtle.penup() 移动时不绘制图形,用于换个地方绘制时使用,提笔
Turtle.goto(x,y) 将画笔移动到坐标为x,y的位置
Turtle.speed() 画笔绘制的速度范围[0,10]整数,建议加在前面
Turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
画笔的控制命令:
Turtle.pensize(width) 绘制图形时的宽度
Turtle.pencolor() 画笔颜色
Turtle.fillcolor(colorstring) 绘制图形的填充颜色
Turtle.color(color1,color2) 同时设置pencolor=color1,fillcolor=color2 设置画笔颜色和填充颜色
Turtle.filling() 返回当前状态是否在填充状态
Turtle.begin_fill() 准备开始填充图形
Turtle.end_fill() 填充完成
Turtle.hideturtle() 隐藏箭头显示
Turtle.showturtle() 与hideturtle()函数对应
全局控制命令:
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.exitonclick() 画完后不关闭窗口,点击界面后就会退出,退出后执行后续程序
turtle.done() 画完后不关闭窗口,但是后面的程序无法执行,关闭窗口后才会执行
#圆中方
import turtle #导入turtle库
turtle.speed(1) #设置画笔速度为10,画笔速度可以为1~10,速度越大速度越快
turtle.pensize(2) #画笔粗细为2,数字越大越粗
for i in range(4): #设置后续代码循环画的次数,这里是循环四次
turtle.fd(200) #画笔的移动距离为200个像素点
turtle.left(90) #移动完200个像素点后,画笔左转90°
turtle.left(-45) #循环结束后,画笔左转-45°
turtle.circle(100*pow(2,0.5)) #绘制半径为100的圆形
turtle.done() #画完后画布不消失,点击界面后消失
print("画完了")
#三色同心圆
import turtle as t #导入turtle库,并取个别名
t.pensize(4)
color = ['red','pink','green'] #创建一个储存颜色的列表
ra = [20, 50, 100] #创建一个储存圆半径的列表
for i in range(3): #循环三次,i存储循环次数的数字
t.pu() #pu penup的缩写,也就是抬起笔,移动时不会绘画图形
t.goto(0,-ra[i]) #让画笔移动到[0,-ra[i]] 的位置
t.pd() #pd pendown 的缩写,放下笔,开始绘画。
t.pencolor(color[i]) #画笔颜色换成color列表里索引为i的颜色
t.circle(ra[i]) #绘制半径为ra列表里索引为i的半径
t.done() #绘制完成后画笔不消失