用Python画最帅最帅的军徽,向宇宙最帅天团致敬!

混江龙づ霸主 提交于 2020-12-24 10:42:00

    原谅小编我今天发文晚了,因为今天太太太太太激动了,一整天都沉浸在国庆游行与阅兵庆典的喜庆当中。我为我们伟大祖国70年来取得的伟大成就而骄傲与自豪。

    今天,我们的主题与我们的宇宙最帅天团,我们最可爱的人有关。小编今天着实被他们给征服了,我的个天那,太帅了!

    于是乎,小编今天来谈一谈如何用python画出我们最可爱的人的帅帅的“军徽”。



1.军徽简介


    中国人民解放军军徽,为镶有金黄色边的五角红星,中嵌金黄色“八一”两字,亦称“八一”军徽。解放军军徽,为镶有金黄色边的五角红星,中嵌金黄色“八一”两字,亦称“八一”军徽。红星象征中国人民获得解放,“八一”表示1927年8月1日中国共产党人发动南昌起义,中国人民解放军从此诞生。


2.军徽在python中的画法


本次我们不用tkinter,我们选用可爱的海龟(turtle)库,为了易于理解,我们不适用坐标系,全部走位采用fd、left、right和seth命令来实现(这些命令的具体使用方法见 Python内置海龟(turtle)库绘图命令详解(一))。
接下来介绍具体化法
(1).首先设置与走位画笔。代码如下:

turtle.up()

turtle.bk(150)

turtle.down()

turtle.speed(0)

big_len=300

small_len=220

(2).开始画外层的大五角星,注意:五角星采用循环来画。代码如下:

#大星

turtle.fillcolor('gold')

turtle.begin_fill()

turtle.pencolor('gold')

for i in range(5):

    turtle.fd(big_len)

    turtle.right(144)

turtle.end_fill()

turtle.up()

turtle.fd(40)

turtle.right(90)

turtle.fd(10)

turtle.left(90)

turtle.down()

(3).开始画里层小五星。注意画笔的走位。代码如下:

#小星

turtle.fillcolor('red')

turtle.begin_fill()

turtle.pencolor('red')

for i in range(5):

    turtle.fd(small_len)

    turtle.right(144)

turtle.end_fill()

4 ).开始写画八一两个字。注意走位。全部采用fd、left、right和seth命令来实现。代码如下:

#写字

turtle.pencolor('gold')

turtle.pensize(10)

#走位

turtle.up()

turtle.right(90)

turtle.fd(10)

turtle.left(90)

#外接五边形边长

length1=small_len*sin(36)/sin(108)

length2=length1*sin(36)/sin(108)

inner_length=small_len-2*length2

turtle.fd(length2+5)

turtle.down()

turtle.fd(inner_length-15)

turtle.left(45)

turtle.fd(5)

#回到直线

turtle.bk(5)

turtle.seth(-80)

turtle.fd(20)

turtle.seth(-70)

turtle.pensize(12)

turtle.circle(20,15)

turtle.fd(8)

turtle.seth(0)

#走位画撇

turtle.pensize(10)

turtle.up()

turtle.bk(inner_length-15)

turtle.left(90)

turtle.fd(18)

turtle.left(150)

turtle.down()

turtle.fd(15)

turtle.pensize(8)

turtle.circle(-40,20)

turtle.ht()

#画下面的横

turtle.pensize(10)

turtle.up()

turtle.seth(0)

turtle.right(90)

turtle.fd(18)

turtle.seth(0)

turtle.down()

turtle.fd(inner_length)

turtle.left(60)

turtle.fd(5)

#turtle.fd(10)

turtle.mainloop()

最终,代码运行效果如下:

怎么样,很简单吧,你也来试一试吧!最后,再一次致敬我们最帅最帅的兵哥哥们!

(-end-)


扫码关注公众号

推荐阅读


画国旗,为祖国庆生!告诉你所不知道的关于国旗的那些事


python文本分析与可视化利器---wordcloud库使用简介



本文分享自微信公众号 - python 青少年编程(gh_73f62b58c679)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!