Python蟒蛇绘制:turtle图常用指令

 

目录

turtle图

画布设置

画笔参数

1.画笔尺寸

2.画笔颜色

3.画笔样式

4.画笔速度

位置移动

1.前进后退

2.抬起落下 

3.指定位置移动

方向改变

1.左右指定方向转弯

2.全局指定角度转弯

内容填充 

1.颜色填充

2.文本段增加

圆弧绘制 

全局控制

1.撤回执行

2.清空窗口 

 3.画面结束控制

4.轨迹控制语句


文前声明:紧随Python语言程序设计基础,我们的内容来到了第二章的turtle图的绘制。对于turtle图在初学阶段的学习要求,仅仅掌握一些相对简单的图像设计即可,这篇只是些较为常用的Python中turtle图方法的总结。

turtle图

turtle图又叫海龟图,是一种直观有趣的绘制图形工具,由于turtle图在概念诞生之时十分流行,Python作者便引入了turtle库,所形成Python的turtle库更是成为了标准库之一。接下来我们将引用一段代码来对turtle图进行全面解释。

from turtle import *
setup(650,350,200,200)
penup()
fd(-250)
pendown()
pensize(25)
seth(-40)
for i in range(4)
    circle(40,80/2)
    circle(-40,80)
circle(40,80/2)
fd(40)
circle(16,180)
fd(40*2/3)

画布设置

在利用turtle图进行绘画之处,对于一些专业人士需要先进行画布的自定义像素大小。在Python的turtle库中,绘图坐标体系设置如:

turtle.setup(width,height,startx,starty)

width/height:窗口 宽/高 度,若是整数表示像素值;若是小数表示窗口 宽/高 度与屏幕比例

startx/starty:以窗口中心为原点的 x/y 轴与 屏幕左侧/屏幕顶部 的像素距离,若为none默认 水平/垂直。

数值以像素大小为单位,在计算机默认且不显示的坐标系上进行绘图,且初始方向默认设定为向右。

画笔参数

1.画笔尺寸

turtle.pensize(width)

该方法可对画笔粗细程度进行调节,若width无代表参数时返回当前画笔宽度。

2.画笔颜色

turtle.pencolor(colorstring)

turtle.pencolor((r,g,b))

该方法可对画笔颜色进行变换, 若无参数输入返回当前颜色,这种类型可以固定画笔变为设定的标准颜色

或可利用下方方法对画笔颜色进行RGB色彩自定义填充

RGB色彩体系是较为常用的颜色体系,可通过红绿蓝三种颜色形成人类可感知到的所有色彩。其中每个颜色采用8bit表示。

3.画笔样式

turtle.shape(shapestring) 

 该方法可对画笔样式进行调节,可调用如下参数对画笔形状样式进行变换

  • ‘arrow’(箭头)
  • ‘circle’(圆)
  • ‘circle’(圆)
  • ‘triangle’(三角形)
  • ‘classic’(经典)

同时,我们可以调节二画笔样式是否显示:

turtle.hideturtle()                  隐藏海龟图标

turtle.showturtle()                显示海龟图标

 

4.画笔速度

turtle.speed(number)

 number范围为0-10,默认为6。数字越大,绘图速度越快。同时,当number为0时等同于不显示动画效果

位置移动

1.前进后退

turtle.forward(distance)

turtle.fd(distance)

turtle.backward(distance)

turtle.bk(distance)

此方法用于对此时画笔所处位置进行位置移动,distance移动单位为像素大小。

2.抬起落下 

turtle.penup()

turtle.pendown()

 此方法用于对此时画笔所处状态进行更改,抬起画笔移动位置后在某点落下继续进行绘画从而对所作图形不进行额外笔画的描绘。

3.指定位置移动

turtle.goto(x,y)

以设定坐标轴为原轴,对海龟进行固定位置的移动。 

注意利用此方法进行移动画笔会带有轨迹,同时画笔方向不发生改变。

方向改变

1.左右指定方向转弯

turtle.left(angle)

turtle.right(angle)

指定小海龟向 左/右 转指定角度 

2.全局指定角度转弯

turtle.seth(to_angle)

turtle.setheading(to_angle)

设定小海龟前进方向为to_angle,该角度为绝对方向角度值 。

该方法将小海龟最初在坐标轴上的正东方向设为0/360°,逆时针依次按照整数度进行划分,或在度数前加负号逆时针按照整数度进行划分。

seth方法与左右方向转弯最大的不同在于它是绝对方向体系,与小海龟某一时刻的前进方向无关。

内容填充 

1.颜色填充

turtle.fillcolor(colorstring)

turtle.begin_fill()                   开始填充颜色

turtle.end_fill()                      填充完成

 利用该段方法进行放置在需要填充颜色图形绘制代码段的首尾,可以对该图形进行指定颜色填充。

同时需要注意,该图形必须为完全封闭的图形,否则会出现颜色溢出的情况。

2.文本段增加

t.write("文本" ,align="排列",font=("字体",字号大小,"字体类型"))

 font参数是一个元组,以元组为参数按照上述格式对画布上内容进行字迹的书写。

圆弧绘制 

 turtle.circle(radius, extent=None, steps=None)

参数如下:

        radius(半径):半径为正,表示圆心在画笔的左边画圆;半径为负方向相反。

        extent(弧度) 

        steps :做半径为radius的圆的内切正多边形,边数为steps

 以此可进行规整的圆弧绘制。

全局控制

1.撤回执行

turtle.undo()

撤回上一条操作语句所执行的操作

2.清空窗口 

turtle.clear()

清空turtle窗口,但是此时画笔的位置和状态不会改变

 3.画面结束控制

turtle.done()

turtle.extionclick()

可以使得turtle图结束语句绘制后不退出当前显示的画面,使得绘制图形在显示器上进行停留。

4.轨迹控制语句

turtle.tracer(False/True)

 可利用tracer语句对海龟移动路径进行隐藏,默认值为True开启状态。当然,我们若想达到隐藏后再现图形的目的需要搭配画布更新语句:

turtle.update()

以此达到快速显示图形的目的。

tracer()和speed(0)有着细微的区别,与先前在c语言中提及的解决闪屏问题中两个函数有很大的相似性,这类问题在后续遇到会有提及。


至此,我们本篇Python的相关讲解到此结束,不论结果如何,抱有着必胜的决心,才可以见到更好的自我。

那么,我今天的博客到此为止,感谢您认真看完了本篇小白编写的博客,以上均为本人理解,如有错误欢迎在评论区指出。

虽然基础薄弱,但今天仍是在幻想成为大佬的一天。

山高路远,找不到答案的时候就去找找自己

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

励志做大佬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值