查看原文
其他

七夕特别篇|用Python绘画牛郎织女在鹊桥相见

李运辰 Python研究者 2022-09-11

大家好,我是辰哥~


明天就是七夕节,首先提前祝福有伴侣的小伙伴,七夕快乐,没有伴侣的小伙伴,明天就会找到伴侣,(给看到这句话的你好运加持,哈哈哈)。


作为会Python的我们必须做点好玩且有意义的东西。在本文中辰哥使用turtle库进行绘制,如果不清楚turtle的大概使用可以参考辰哥之前的一篇文章(520情人节|用Python跟‘喜欢的人’表白)。


本文的完整源码分享在文末,小伙伴可以自行运行以及修改,先看一下最终的图


图中画的是:牛郎织女鹊桥相见的画面。下面来看绘制过程(牛郎织女相见过程):




01绘制过程


下面辰哥开始讲解如何去绘制这个图(涉及的代码和图片都在后面分享)


首先定义三个画笔(t、t2、t3),t用于绘制桥和牛郎;t2用于绘制织女;t3用于写字和绘制月亮;


绘制桥身:


为了呈现3D效果,同样的需要再多绘制类似两条,效果如下:

给桥添加阶梯


这里定义了一个画横线的函数方法,通过传入画笔开始坐标(x,y),画笔向左偏转角度left,向右偏转角度right,以及绘制的线条长度。画笔的颜色改为灰色:gray



调用函数给桥画阶梯,其效果如下:


接着开始绘制牛郎织女,由于辰哥技术和绘画细胞有限,这里就采用照片形式

的牛郎织女。



这里辰哥在网上找了两张图片作为牛郎织女,并将其命名为:boy1.gif和girl1.gif(由于turtle仅支持gif格式图片,所以这里辰哥将图片格式改为gif)




添加好图片后的效果:



为了实现动态的效果(桥中间相见的画面),将两个图片同时往中间移动(调整位置)


将牛郎织女从桥两边移动到中间。


既然是七夕节,那肯定少不了一些文字去修饰。


文字:七夕今宵看碧霄,牵牛织女渡河桥




辰哥记得牛郎织女相见的画面有一个月亮的。既然都画到这里了,那肯定也少不了月亮。


这里同样的是添加一个名为yue1.gif的图片



效果:


到这里就差不多绘制完毕了。


02最终动图


在最后再来看一下动图,感受完整的绘制过程。




文末的gif图片和完整源码已经整理完毕,感兴趣的小伙伴可以在后台回复:七夕


最后看到的这里的你,方便的话在右下角点【在看】【赞】,支持原创动力,继续前行,谢谢。


推荐阅读

滑动拼图验证码的原理和破解方法~

针对不同场景的Python合并多个Excel方法

花几天时间肝了一个在线制作词云图网站


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存