1、引言
小屌丝:鱼哥, 最近我被大连的车厘子给圈粉了。 小鱼:你能不能平时多看一点食物大百科? 小屌丝:咋的了? 小鱼:但凡有点常识的人,都知道大连产的那叫大樱桃,不叫车厘子! 小屌丝:这… 还有讲究? 小鱼:看图,上课! 小鱼:从左往右,每个图片的品种都不一样。 小屌丝:我屮艸芔茻…我还以为这些都叫车厘子。 小鱼:你除了知道车厘子,还知道什么? 小屌丝:这不是在鱼哥的教导下,我认知的食物越来越多嘛。 小鱼:别整没用的,就知道夸我,也不来点实际的。 小屌丝:实际的,可以啊,如果你能画出樱桃树,我就让你今天实现车厘子 大樱桃自由。 小鱼:此话当真? 小屌丝:此话不假。 小鱼:此话确实当真? 小屌丝:别墨迹,赶紧的,会不会,一句话。 小鱼:必须的整。
2、代码实例
2.1 turtle介绍
2.1.1 画布
1、画布的高宽及颜色: turtle.screensize(canvwidth=None, canvheight=None, bg=None),
- canvwidth=None:宽
- canvheight=None:高
- bg=None: 背景色
2、画布像素及位置: turtle.setup(width=0.5, height=0.75, startx=None, starty=None),
- width=“整数”,像素 ;width=“小数”,占据电脑屏幕比例
- height=“整数”,像素 ;height=“小数”,占据电脑屏幕比例
- startx, starty :窗口坐标位置
2.1.2 用法
命令 | 用法 |
---|
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( r ) | 绘制?个指定直径和颜?的圆点 |
学习了turtle的基本用法,接下来,我们就要实践了。
2.2 代码示例
2.2.1 安装
任何第三方库,都需要安装, 老规矩,直接pip 方式安装
pip install turtle
其它安装方式,直接看这两篇:
《Python3,选择Python自动安装第三方库,从此跟pip说拜拜!!》 《Python3:我低调的只用一行代码,就导入Python所有库!》
2.2.2 樱桃树
import turtle
toplevel = 8
angle = 30
rangle = 15
def drawTree(length, level):
turtle.left(angle)
turtle.color("black")
turtle.forward(length)
运行结果
2.2.3 玫瑰花
import turtle
'''
绘画玫瑰花,总共分三步:
1、绘画花蕊
2、绘画花瓣
3、绘画树叶
'''
turtle.fillcolor("red")
turtle.begin_fill()
turtle.circle(10, 180)
turtle.left(50)
turtle.circle(150, 90)
turtle.end_fill()
turtle.left(150)
turtle.circle(-90, 70)
turtle.left(20)
turtle.circle(-80, 98)
turtle.setheading(-83)
turtle.fd(30)
turtle.left(90)
turtle.fd(25)
turtle.left(45)
turtle.circle(200, 60)
turtle.done()
运行结果
2.2.4 旋转动画
import turtle
t = turtle.Pen()
t.speed(100)
turtle.bgcolor("black")
sides = 6
运行结果
2.2.5 纸飞机
import turtle
turtle.color('red')
turtle.penup()
turtle.goto(250,200)
turtle.pendown()
运行结果
3、总结
看到这里,今天的分享就差不多该结束了。 是不是感觉,奇奇怪怪的知识又增加了呢。
其实, turtle在绘画中的场景应用还蛮多了, 虽然绘画的并不太完美,但是,小鱼觉得还不错。 尤其是绘画的那支玫瑰花,可以打印出来,送给你的女神。 我觉得她一定会…
看看表,时间差不多了,我该去吃大樱桃了。
|