程序员过中秋的第101种方式

在这里插入图片描述

前言

       中秋节,是中国四大传统节日之一又称祭月节、月光诞、月夕、秋节、仲秋节、拜月节、月娘节、月亮节、团圆节等,是中国民间的传统节日。中秋节源自天象崇拜,由上古时代秋夕祭月演变而来。中秋节自古便有祭月、赏月、吃月饼、看花灯、赏桂花、饮桂花酒等民俗,流传至今,经久不息。

平安月饼

??中秋节,月饼肯定是必不可缺的,那么第一步,我们做一个平安月饼,送给远在他乡拼搏的各位,祝大家一路平安:

class Mooncake2:
    def __init__(self,x_distante,y_distante,name):
        turtle.home()
        turtle.setup(1100, 600)
        # 月饼最外层边数
        self.bian = 8
        self.ext_r = 100
        self.x_distante= x_distante
        self.y_distante = y_distante
        self.name = name
        self.yuebing_zhong()
    def yuebing_zhong(self):
        turtle.color("#FFD700")
        round_r = math.sin(math.pi / self.bian) * self.ext_r  # 月饼花圈的半径
        # 从水平x轴出发
        for i in range(self.bian):
            turtle.home()
            # print(turtle.xcor(), turtle.ycor())
            turtle.penup()  # 画笔抬起
            turtle.goto(self.x_distante,0)  # 恢复为初始位置
            turtle.seth((360 / self.bian) * i)  # 改变画笔方向,但不前进
            turtle.fd(self.ext_r)
            turtle.left((360 / self.bian) * 0.8)  # 画笔左转一定的角度
            turtle.color('#FF8C00')  # 设置颜色
            turtle.begin_fill()  # 开始填充颜色

            turtle.circle(round_r, extent=180)
            turtle.end_fill()
        self.inner_circle()
    def inner_circle(self):
        turtle.penup()
        turtle.goto(0+self.x_distante,100+self.y_distante)
        turtle.seth(0)
        turtle.pendown()
        turtle.color('#F0BE7C')
        turtle.begin_fill()
        turtle.circle(-self.ext_r)
        turtle.end_fill()
        self.Moon_inner()
    def Moon_inner(self):
        turtle.color('#FFD700')
        turtle.goto(0+self.x_distante,-self.ext_r-self.y_distante)
        turtle.left(0)
        turtle.begin_fill()
        turtle.circle(100,steps=6)
        turtle.end_fill()
        self.TP()
    def TP(self):
        self.pingan()
    def pingan(self):  
        turtle.penup()
        turtle.goto(-30+self.x_distante,0+self.y_distante)
        turtle.color('#FF8C00')
        turtle.write("平", font=("楷体", 50, "bold"))
        turtle.goto(-30+self.x_distante, -60+self.y_distante)
        turtle.write("安", font=("楷体", 50, "bold"))
        turtle.ht()

(这里参考爱打瞌睡的CV君的月饼花边的画法…花了好几张草稿纸求距离,放到turtle上各种不行?果断求救)


团圆月饼

团圆月饼花边

??同样,中秋节的主题是团圆,我们再做个团圆月饼,这里我想到一种新的方法,通过画圆补充月饼外圈,效果也是不错的:

for i in range(self.bian2):
    turtle.left(i * (360 // self.bian2)+10)
    turtle.penup()
    turtle.forward(75)
    turtle.pendown()
    turtle.begin_fill()
    turtle.circle(35)
    turtle.end_fill()
    turtle.penup()
    turtle.home()

完整团圆月饼

??然后我们采用继承类的方法,直接用平安月饼中部分代码完成制作团圆月饼:

class Mooncake(Mooncake2):
    def __init__(self,x_distante,y_distante,name):
        super(Mooncake2, self).__init__()
        turtle.home()
        # 月饼最外层边数
        self.bian2 = 11
        self.ext_r = 100
        self.x_distante= x_distante
        self.y_distante = y_distante
        self.name = name
        self.yuebing_zhong()
    def yuebing_zhong(self):
        turtle.penup()  # 将笔提起,移动时无图
        turtle.color("#FFA500")
        for i in range(self.bian2):
            turtle.left(i * (360 // self.bian2)+10)
            turtle.penup()
            turtle.forward(75)
            turtle.pendown()
            turtle.begin_fill()
            turtle.circle(35)
            turtle.end_fill()
            turtle.penup()
            turtle.home()
        # self.inner_circle()
    def TP(self):
        self.tuanyuan()
    def tuanyuan(self):  #
        # print(turtle.pos())
        turtle.penup()
        turtle.goto(-33,0)
        turtle.color('#FF8C00')
        turtle.pencolor('orange')
        turtle.write("团", font=("黑体", 50))
        turtle.goto(-33, -63)
        turtle.write("圆", font=("黑体", 50))
        turtle.ht()

背景与音乐

??月饼有了,又怎能少了那皎洁的月光呢?

       我们找一张自己喜欢的图片,用PS裁剪一个相对合适的大小,我使用的尺寸是1100*600,使用turtle.bgpic()函数添加图片。

注意:只可选择gif格式图片为对象添加背景,并根据尺寸设置窗口大小以避免画面缺失或过大

turtle.setup(1100, 600)
turtle.bgpic('背景.gif')

请添加图片描述


??音乐必不可缺席,这里我使用pygame库导入我最喜欢的音乐——明月几时有

from pygame import mixer
def play_music():
    mixer.init()
    mixer.music.load("Moon_music.mp3")
play_music()

但愿人长久,千里共婵娟✨

??最后,我想跟大家说:但愿人长久,千里共婵娟

def tell():
    turtle.penup()
    turtle.goto(-500, -120)
    turtle.color('#FF8C00')
    turtle.write("但愿人长久,", font=('三极泼墨体', 50, "bold"))
    turtle.goto(-330,-240)
    turtle.write("千里共婵娟❤", font=('三极泼墨体', 50, "bold"))
    turtle.ht()

完整代码地址

       中秋节,团圆日,但是这个中秋将是我第一次身边没有父母、没有亲人、没有朋友陪伴的节日,第一次远离我的家乡,第一次靠自己双手去拼搏,人生有很多第一次,但不是每个第一次都是美好的,它会给你带来长大的证明书,比如:成熟与孤独。
       我们相隔上千公里,看着同一轮圆月,吃着互相挑选的月饼,已经是大人了,都应该清楚,离别是常态,思念是永恒,期待相见那一天吧,少年,疾风亦是归途——各位,中秋快乐,祝诸君一路平安,早日团圆。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码

)">
< <上一篇
下一篇>>