多平台统一管理软件接口,如何实现多平台统一管理软件接口
279
2022-06-19
圣诞节即将到了,所以这回通过turtle模块来编写一个表白的小程序
开发时间:2019-12-15
开发工具:Sublime
开发模块:turtle
这里用到了turtle库的相关知识,如果不熟悉可以看我之前的博客:
turtle库相关知识点
首先,我们需要来创建一个函数来承载所有初始化数据,包括画布的大小,画笔的尺寸、颜色、还有画笔的移动速度
以演示图为例子,设置了一个800*600大小的画布,红色画笔宽为5,速度为10
代码如下所示:
def initdata():
t.setup(800,600)
t.pencolor('red')
t.pensize(5)
t.speed(10)
设置好相关属性后,就可以开始作画了
首先画笔位于正中央,若想移动画笔将会在画布上留下痕迹,也就是画上了线条,
但是有些线条,画作本身并不需要,这就需要做到让画笔移动的同时,画布不留痕迹
需要用到up()和down();两个函数,如直译一般作用为抬起画笔和放下画笔
所以操作为,抬起画笔——移动到指定地方——放下画笔
代码如下所示:
注意:hideturtle()和showturtle()为隐藏画笔和显示画笔。对画作本身毫无影响
绘制演示图中,最难的部分在哪里?
一定是爱心上半部分的两个半圆,所以为方便,我们单独讲这一部分提出来做一个绘制半圆的函数
在turtle库中并没有绘制曲线的函数,最接近的也只有画圆了。
不过我们可以通过割圆法来绘制,也就是将这一段圆弧视为一个边长很短的多边形
所以我们通过for循环来绘制,通过不断偏转方向的小线段组成
代码如下:
def hart_arc():
for i in range(200):
t.right(1)
t.forward(2)
现在我们开始绘制图形draw()
首先表白总要有表白者和被表白者吧,所以我们先创建name和sign来存储名字
之后通过调用初始化函数来获取相关信息
最后就可以操纵画笔开始绘制。
先将画笔移动到(0,-180)的位置,也就是爱心的下部尖端,这就用到了刚刚创建的移动函数,
之后控制画笔调整方向,移动224的距离绘制完成前面的爱心下部的右侧边
然后绘制爱心上半部分,调用hart_arc()绘制了爱心上半部分左侧,
然后调整方向,画笔向左偏转120度,再绘制另一个半圆
最后画笔返回初始位置,画好了第一个爱心,将其填充为粉色。
同理可画第二个爱心,到最后来一个“一箭双❤”就可以了
绘制完成之后,我们就要输出刚刚记载的两个人名了
这需要用到write()函数
代码如下:
这样表白的代码就制作完成了
感谢大家支持,总体代码如下:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~