turtle画图代码大全

  • A+
所属分类:知道百科

 

turtle是一个简单的绘图工具,它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令,下面这篇文章主要给大家介绍了关于Python海龟turtle基础知识大全以及画图集合的相关资料,需要的朋友可以参考下

Turtle 库是 Python 内置的图形化模块,属于标准库之一,位于 Python 安装目录的 lib 文件夹下,常用函数有以下几种:

一.Turtle绘图的基础知识

画布是turtle用于绘图区域,我们可以设置它的大小和初始位置。

1.设置画布大小

turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别对应画布的宽(单位像素), 高, 背景颜色。

turtle.screensize(1000,800, "blue")
turtle.screensize() #返回默认大小(500, 400)
turtle.setup(width=0.5, height=0.75, startx=None, starty=None)

width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,(startx, starty): 这一坐标表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心。

2.画笔的状态

在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中,就是使用位置方向描述小乌龟(画笔)的状态。

turtle.pensize() # 设置画笔的宽度;
turtle.pencolor()# 没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。
turtle.speed(speed)#设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快。

3.使用turtle绘图主要分为3种命令代码,分别为运动命令、画笔控制命令和全局控制命令。

画笔运动命令代码

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.penup()—提起笔移动,不绘制图形,用于另起一个地方绘制

turtle.circle()—画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆 setx( )—将当前x轴移动到指定位置

sety( )—将当前y轴移动到指定位置 setheading(angle)—设置当前朝向为angle角度

home()—设置当前画笔位置为原点,朝向东 dot®—绘制一个指定直径和颜色的圆点

画笔控制命令代码

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=(“fontname”,font_size,“font_type”)])—文本,s为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项

绘图命令

操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令、画笔控制命令、全局控制命令

1、画笔运动命令

命令 说明
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() 设置当前画笔位置为原点,朝向向东 °

2、画笔控制命令

命令 说明
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形状

3、全局控制命令

命令 说明
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坐标体系

# 导入 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()

turtle画图代码大全-1

画笔自动绘图

# 用for循环初步实现画笔自动绘图

import turtle as t

for i in range(20):

    # 画笔向前移动

    t.forward(100 + 10 * i)

    # 顺时针旋转120°

    t.right(120)

t.done()

turtle画图代码大全-2

 

显示画笔运动印记

# 用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()

turtle画图代码大全-3

大家都在看:

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: