龟编程python绘图工具龟库使用

目录

海龟编程 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绘图示例:

​​​​​​​圆中方:

#圆中方
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()            #绘制完成后画笔不消失

 四个圆中方:

四个圆中方
import turtle as t          #导入turtle库,并取个别名t
dianwei=[-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()        #画完后画布不消失

螺旋正方: 

#螺旋正方
import turtle     #导入turtle库
turtle.pensize(3)  #画笔粗细为3
turtle.speed(10)   #画笔绘制速度为10,1~10,数字越大速度越快
d = 0
k = 1
for j in range(100):
   for i in range(4):
       turtle.fd(k)
       d += 91
       turtle.seth(d)    #seth绝对度数
       k += 2
turtle.done()

 随机生成随机颜色的圆:

#生成随机位置,随机颜色的圆,并填充随机颜色
import turtle   #导入turtle库
import random   #导入random函数
color1=["red","yellow","pink","blue","black","green"]      #将颜色装入color1列表
for i in range(99):     #写入想要绘制圆圈的个数
    turtle.speed(10)    #画笔速度
    turtle.pensize(5)   #画笔粗细
    x= random.choice(color1)     #随机生成圆的边缘的颜色,并赋给x
    y= random.choice(color1)     #随机生成圆内部颜色,并赋给y
    turtle.pencolor(x)          #笔的颜色
    turtle.fillcolor(y)         #填充颜色
    x0 = random.randint(-300, 300)     #随机x轴区域,并赋值给x0
    y0 = random.randint(-300, 300)     #随机y轴区域,并赋值给y0
    turtle.penup()                     #抬笔,抬笔移动时不会绘制线条
    turtle.goto(x0,y0)                 #移动到随机的x轴和y轴

    turtle.pendown()                    #放笔,移动时开始绘制
    turtle.begin_fill()                 #开始填充颜色
    turtle.circle(50)                   #画一个半径为50像素点的圆
    turtle.end_fill()                   #结束填充
turtle.done()                       #绘制结束不关闭窗口

物联沃分享整理
物联沃-IOTWORD物联网 » 龟编程python绘图工具龟库使用

发表评论