ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【Python】turtle小海龟画兔子

2021-07-31 09:04:45  阅读:942  来源: 互联网

标签:turtle goto Python seth 小海龟 radius extent circle


目录

Python怎么画兔子?

1 效果图

2 总体设计

3 详细设计

4 其中里面用到的函数:

画兔子代码


Python怎么画兔子?

可以用python内置的turtle库绘制 ,很简单但是功能很强大。import turtle 是python种很流行的绘制图像的函数库,通过x轴y轴进行坐标移动,绘制图形:

对小海龟来说,有“前进”,“后退”,“旋转”等行为,相对于坐标系也是通过“前进方向”、“后退方向”、“左侧方向”、“右侧方向”来完成,并且它可以变换颜色,改变大小等。

具体怎么实现?

后续揭晓。

 1 效果图如下:

2 总体设计

Python 画兔子大致实现方法如下:

1、使用circle函数完成兔子大部分的绘画

2、利用goto、seth来进行细致画图的过程

3、兔子设计图形规划

4、代码实现兔子模型

其中用到的有turtle(海龟)模块、部分绘图命令、circle函数、

3 详细设计

Python画兔子利用的是turtle(海龟)模块。其中主要用到。这个模块提供了编写向量图的方法,基本上就是画直线,点和曲线。
import turtle是导入turtle包,不能使用未声明的变量。因此,要对每项加上包的前缀。比如:turtle.Pen,turtle.Turtle。

而from turtle import*未导入turtle包,但实际上从这个命名空间导入了所有的成员,所有直接使用命名空间内已经定义好的项目名称即可。比如直接使用Pen,Turtle。

而画兔子其中就运用到了

 

我们直接使用,即goto将画笔调到指定位置   seth改变画笔角度  pu 起笔 pd落笔

circle()函数可以以画笔当前位置为切点,画出与(画笔当前方向所在直线为)切线相切的任意圆弧。所以在绘制曲线时十分自由好用。
在circle(radius,extent)函数中,参数radius取像素值、extent取角度的整数值,两参数均可取正负值。

4 其中里面用到的函数:

color()
 改变画笔的颜色
 begin_fill和end_fill用来给画布上一个区域填色的
 circle绘画曲线和圆
 goto(x,y) 将画笔移动到坐标为x,y的位置
 seth让海龟面向指定的方向


画兔子代码:

#绘制大耳朵兔

from turtle import *   #可以直接使用命名空间内已经定义好的项目名称

speed(10)

#小兔的面部

color('pink')

pensize(5)  #画笔宽度

circle(radius=100)#脸

#眼睛

pencolor('black')

#左眼

pu()   #起笔

goto(-45,92)  #将画笔移动到指定位置

pd()  #落笔

begin_fill()

color((0,0,0),(0,0,0.1))

circle(radius=15)   #radius半径属于circle函数、类型为float型

#右眼

pu()

goto(45,92)

pd()

circle(radius=15)

end_fill()

#鼻子

pu()

goto(20,60)

color('pink')

pd()

begin_fill()

goto(-20,60)

goto(0,45)

goto(20,60)

end_fill()

#嘴

goto(0,45)

goto(0,40)

seth(-90)    #画笔朝向角度

circle(10,120)   #画笔圆的半径及其画圆的弧度

pu()

goto(0,40)

seth(-90)

pd()

circle(-10,120)

#小兔的耳朵

#左耳

pu()

goto(-60,180)#

seth(200)

pd()

circle(radius=350,extent=90)

goto(-98,110)

#右耳

pu()

goto(60,180)#

seth(-20)

pd()

circle(radius=-350,extent=90)

goto(98,110)

#小兔的身体

pu()

goto(20,3)

seth(-25)

pd()

circle(radius=-250,extent=25)


circle(radius=-135,extent=260)

seth(50)

circle(radius=-250,extent=25)

##小兔的胳膊

#左臂

pu()

seth(180)

goto(-30,-3)

pd()

#小短胳膊

##circle(radius=270,extent=20)

##circle(radius=20,extent=190)

circle(radius=248,extent=30)

circle(radius=29,extent=185)

#右臂

pu()

seth(0)

好啦兔子到此就画完了。

标签:turtle,goto,Python,seth,小海龟,radius,extent,circle
来源: https://blog.csdn.net/m0_58245389/article/details/119251725

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有