海龟编程 python 绘图工具 turtle 库的用法 turtle 库使用方法大全,画笔设置 画布设置 绘图设置,画笔粗细,画笔颜色, 画笔速度。
海龟编程 python 绘图工具 turtle 库的用法画布:画布就是 turtle 为我们展开用于绘图区域, 我们可以设置它的大小和初始位置 1.1 设置画布大小(1)turtle.screensize(canvwidth=none, canvheight=none, bg=none)
turtle.screensize(800,600,”green”) #画布的宽,高,画布颜色
turtle.screensize() #返回默认大小(400,300)
画笔 turtle.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.seth(angle) 只改变海龟的行进方向(角度按逆时针),但不行进,angle 为绝对度数
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()函数对应
全局控制命令:print(turtle.pos()) 获取鼠标当前位置并输出
turtle.clear() 清空 turtle 窗口,但是 turtle 的位置和状态不会改变
turtle.reset() 清空窗口,重置 turtle 状态为起始状态
turtle.undo() 撤销上一个 turtle 动作
turtle.isvisible() 返回当前 turtle 是否可见
stamp() 复制当前图形
turtle.write(s[,font=(“font-name”,font_size,”font_type”)])
turtle.write("华哥最帅")写文本,s 为文本内容,font 是字体参数,里面分别为字体大小和类型;font 为可选项,font 的参数也是可选项
turtle.exitonclick() 画完后不关闭窗口,点击界面后就会退出,退出后执行后续程序
turtle.done() 画完后不关闭窗口,但是后面的程序无法执行,关闭窗口后才会执行
简单 turtle 绘图示例:圆中方:使用 turtle 库的 turtle. fd()函数和 turtle. left ()函数绘制一个边长为 200 像素的正方形及一个紧挨四个顶点的圆形, 在考生目录下给出了程序框架文件 PY201.py , 在横线处补充代码, 不得修改其它代码。效果如下图所示。
#圆中方
import turtle #导入 turtle 库
turtle.speed(1) #设置画笔速度为 10,画笔速度可以为 1~10,速度越大速度越快
turtle.pensize(2) #画笔粗细为 2,数字越大越粗
or i in range(4): #设置后续代码循环画的次数,这里是循环四次
turtle.fd(200) #画笔的移动距离为 200 个像素点
turtle.left(90) #移动完 200 个像素点后,画笔左转 90°
turtle.left(-45) #循环结束后,画笔左转-45°
urtle.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 的缩写,也就是抬起笔,移动时不会绘画图形
.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() #绘制完成后画笔不消失 四个圆中方:四个圆中方
import turtle as t #导入 turtle 库,并取个别名
tdianwei=[-150,-50,50,150] #指定四个起始点位,将其存在
dianwei 列表中 for i in range(4): #循环四次,并将循环次数存在 i 中
t.penup() #抬笔,移动时不会绘画
t.goto(dianwei[i], 0) #将画笔移动到 dianwei 列表索引为 i 的 x 轴位置
t.pendown() #落笔,开始绘画
for x in range(4): #多个步骤重复,所以将代码写入循环,四个边,循环四次
t.forward(50) #画笔向前 50 个像素点
t.left(90) #画笔左转 90 度
t.left(-45) #画完一个正方形后,画笔向右转动 45 度,也就是 left(-45)
t.circle(35) #画一个半径为三十五的圆
t.left(45) #画完圆后,将角度调正,否则后续的正方形角度会歪掉
t.done() #画完后画布不消失
版权声明: 本文为 InfoQ 作者【Python-派大星】的原创文章。
原文链接:【http://xie.infoq.cn/article/b25a9ac37431d3edfa5f67d39】。文章转载请联系作者。
评论