Python程序设计案例教程第2版第3章神奇的turtle库_第1页
Python程序设计案例教程第2版第3章神奇的turtle库_第2页
Python程序设计案例教程第2版第3章神奇的turtle库_第3页
Python程序设计案例教程第2版第3章神奇的turtle库_第4页
Python程序设计案例教程第2版第3章神奇的turtle库_第5页
已阅读5页,还剩47页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SSM框架应用于沈工高职考试系统的设计与实践第3章神奇的turtle库初识turtle库3.1turtle是Python自带标准库之一,用于绘制图形。绘图原理是:有一只小海龟(turtle),在画布中心游走海龟走过的路径形成了绘制的图形海龟由程序控制,可以变换颜色,改变宽度等。3.1初识turtle库案例:利用turtle库绘制一条红色线段,具体代码如下:3.1初识turtle库turtle库中的绘图窗体3.2Turtle的绘图窗体也叫画布(canvas)使用setup()函数设置窗体大小及位置。函数的用法如下:turtle.setup(width,height,startx,starty)

后两个参数可选。setup函数不是必须的,需要控制窗体大小及位置时才使用3.2turtle库中的绘图窗体turtle.setup(800,400,0,0)turtle.setup(800,400)

3.2turtle库中的绘图窗体turtle库中画笔设置3.31画笔的状态2画笔的属性3.3turtle库中的画笔设置画笔控制函数:2类-turtle.penup()别名turtle.pu()

抬起画笔,海龟在飞行

-turtle.pendown()别名turtle.pd()

落下画笔,海龟在爬行

3.3.1画笔的状态设置画笔尺寸设置画笔移动速度画笔设置后一直有效,直至下次重新设置

3.3.2画笔的属性设置画笔颜色设置画笔尺寸

turtle.pensize(width)

别名

turtle.width(width)

画笔宽度,海龟的腰围

例如:turtle.pensize(3)#设置画笔的宽度为3像素设置画笔移动速度

turtle.speed(speed)

海龟爬行速度,取值范围为[0,10]以内的整数,数值越大移动越快。

例如:turtle.speed(5)#设置画笔的移动速度为53.3.2画笔的属性-颜色字符串:turtle.pencolor(“red”)

-十六进制数:turtle.pencolor(“#0000FF”)

-

RGB的数值:

需要设置颜色模式 turtle.colormode(1.0)

turtle.pencolor(0.63,0.13,0.94) turtle.colormode(255) turtle.pencolor(255,192,203)

设置画笔颜色:pencolor(color)的color可以有三种形式3.3.2画笔的属性颜色字符串:turtle.pencolor(“red”)常用颜色单词3.3.2画笔的属性

十六进制数:turtle.pencolor(“#AA0000”) 3.3.2画笔的属性-RGB指红蓝绿三个通道的颜色组合

-覆盖视力所能感知的所有颜色

-RGB每色取值范围0-255整数或0-1小数

由三种颜色构成的万物色RGB数值3.3.2画笔的属性

默认采用小数值

turtle.colormode(255)turtle.pencolor((170,180,30))

-1.0:RGB小数值模式,默认模式

-255:RGB整数值模式

RGB数值turtle.colormode(1.0)(可省略,不设置)

turtle.pencolor((0.63,0.13,0.94))可切换为整数值,需要先设置颜色模式

3.3.2画笔的属性常用RGB色彩英文名称RGB整数值RGB小数值中文名称white255,255,2551,1,1白色yellow255,255,01,1,0黄色magenta255,0,2551,0,1洋红cyan0,255,2550,1,1青色blue0,0,2550,0,1蓝色black0,0,00,0,0黑色seashell255,245,2381,0.96,0.93海贝色gold255,215,01,0.84,0金色pink255,192,2031,0.75,0.80粉红色brown165,42,420.65,0.16,0.16棕色purple160,32,2400.63,0.13,0.94紫色tomato255,99,711,0.39,0.28番茄色

3.3.2画笔的属性RGB数值利用turtle库绘制图形3.43海龟方向控制函数1turtle绘制坐标系4图形填充2海龟运动控制函数5海龟事件处理空间坐标体系角度坐标体系turtle.goto(x,y)

turtle.seth(angle)

turtle.left(angle)

turtle.right(angle)

3.4.1turtle绘制坐标系空间坐标体系importturtleturtle.goto(100,100)turtle.goto(100,-100)turtle.goto(-100,-100)turtle.goto(-100,100)turtle.goto(0,0)

turtle.done()

既改变方向,又行进!3.4.1turtle绘制坐标系控制海龟行进:走直线&走曲线

turtle.forward(d)别名turtle.fd(d)

向前行进,海龟走直线

d:行进距离,可以为负数

3.4.2海龟运动控制函数turtle.backward(d)别名turtle.bk(d)

向后移动,海龟走直线

d:行进距离,可以为负数turtle.goto(x,y)

海龟走直线,移动到坐标位置

控制海龟行进:走直线&走曲线

-turtle.circle(r,extent=None,steps=None)

根据半径r绘制extent角度的弧形

r:默认圆心在海龟左侧r距离的位置

extent:绘制角度,默认是360度整圆

steps:步数,做半径为r的圆内切正多边形(steps边)

turtle.circle(100,steps=3):绘制三角形3.4.2海龟运动控制函数turtle.circle(100)

turtle.circle(-100,90)

3.4.2海龟运动控制函数控制海龟行进:走直线&走曲线

turtle.circle(100,steps=3)

3.4.2海龟运动控制函数控制海龟行进:走直线&走曲线

海龟右转turtle.right(angle)

简写turtle.rt(angle)海龟向右转

海龟左转:turtle.left(angle)简写turtle.lt(angle)海龟向左转3.4.3海龟方向控制函数

只改变方向,不行进!-angle:在海龟当前行进方向上旋转的角度设置海龟朝向函数:turtle.setheading(angle)别名turtle.seth(angle)

-angle为绝对度数

只改变方向,不行进!3.4.3海龟方向控制函数海龟默认朝向右,正值逆时针,负值顺时针turtle.seth(45)

turtle.seth(-135)

3.4.3海龟方向控制函数绘制边长为100像素的正方形3.4利用turtle库绘制图形

importturtle#导入turtle库turtle.fd(100)#前进100像素turtle.right(90)#调整海龟朝向,向右转90度turtle.fd(100)#前进100像素turtle.right(90)#调整海龟朝向,向右转90度turtle.fd(100)#前进100像素turtle.right(90)#调整海龟朝向,向右转90度turtle.fd(100)#前进100像素turtle.done()#图形绘制结束fillcolor(color)函数用于给图形填充颜色

-填充颜色函数:turtle.fillcolor(color)

-填充开始函数:turtle.begin_fill()

-

填充结束函数:

turtle.end_fill()3.4.4图形填充绘制一个被蓝色填充的圆3.4.4图形填充importturtleturtle.fillcolor("blue")#设置填充颜色为蓝色turtle.begin_fill()#开始填充turtle.circle(50)turtle.end_fill()#结束填充turtle.done()1获取键盘相应2获取鼠标响应3.4.5海龟事件处理1获取键盘响应turtle.listen():监听键盘的点击操作,与键盘点击事件一起用;没有监听,键盘操作无效果3.4.5海龟事件处理turtle.onkey(fun,key):获取相应键盘fun–一个无参数的函数或Nonekey–一个字符串:键(例如“a”)或键标(例如“space”)函数定义使用关键字defdef函数名(参数1,参数2,…):

程序块 return返回值1,返回值2,返回值3…定义函数,画长度为100像素线段,并向右旋转60度3.4.5海龟事件处理1获取键盘响应3.4.5海龟事件处理1获取键盘响应通过按【

】键(Up键)来绘制六边形importturtledeff():#定义一个函数,函数名为fturtle.fd(50)turtle.lt(60)turtle.onkey(f,"Up")#给函数f绑定按键事件turtle.listen()#获取屏幕焦点turtle.done()#结束绘制turtle.onscreenclick(fun,btn=1,add=None):获取鼠标响应fun–一个函数,调用时将传入两个参数表示在画布上点击的坐标。btn–鼠标按钮编号,默认值为1(鼠标左键)add=None,默认值为None,当值为True时,表示将添加一个新绑定turtle.bgcolor(color):设置画布背景色color–画布背景颜色值3.4.5海龟事件处理2获取鼠标响应单击鼠标左键,更改画布背景色为红色3.4.5海龟事件处理2获取鼠标响应案例6:利用turtle库绘制奥运五环3.5案例代码Case3_6.py案例6:利用turtle绘制奥运五环举个例子Forexample案例6:利用turtle绘制奥运五环1.光标初始位置在(0,0)点,抬起画笔,后退250个像素,放下画笔,设置画笔宽度,画笔转向-90度2.画第一个环,设置画笔颜色为蓝色,以海龟左侧为圆心,80像素为半径,画540度的弧,之后画笔向右转180度;案例6:利用turtle绘制奥运五环3.画第二个环,设置画笔颜色为黑色,以海龟左侧为圆心,80像素为半径,画540度的弧,之后画笔向右转180度;4.画第三个环,设置画笔颜色为红色,以海龟左侧为圆心,80像素为半径,画540度的弧,之后画笔向左转90度;案例6:利用turtle绘制奥运五环5.抬起画笔,光标移动到第四个环的位置,左转90度,再前进100个像素,放下画笔;6.画第四个环,设置画笔颜色为橙色,以海龟左侧为圆心,80像素为半径,画540度的弧,之后画笔向右转180度;案例6:利用turtle绘制奥运五环画第五个环,设置画笔颜色为绿色,以海龟左侧为圆心,80像素为半径

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论