首页IT科技科赫雪花曲线 周长推导(Python雪花代码)

科赫雪花曲线 周长推导(Python雪花代码)

时间2025-06-20 21:14:29分类IT科技浏览5904
导读:前言 用python画个雪花玩玩,源码在文末公众号哈。...

前言 

用python画个雪花玩玩             ,源码在文末公众号哈              。

雪花类 

class Snow():    #雪花类

    def __init__(self):

        self.r = 6                       #雪花的半径

        self.x = ra.randint(-1000,1000)   #雪花的横坐标

        self.y = ra.randint(-500,500)     #雪花的纵坐标

        self.f = ra.uniform(-3.14,3.14)   #雪花左右移动呈正弦函数

        self.speed = ra.randint(5,10)     #雪花移动速度

        self.color = ra.choice(colors)    #雪花的颜色

        self.outline = 5                 #雪花的大小 

画雪花 

    def snow(self):                #画每个雪花

        x=self.r                   #雪花的半径

        t.pensize(self.outline)    #雪花的大小

        t.penup()                  #提笔

        t.goto(self.x,self.y)      #随机位置

        t.pendown()                #落笔

        t.color(self.color)        #雪花颜色

        for i in range(6):        #循环画六个雪花瓣

            t.forward(x*5)

            t.backward(x*2)

            t.left(60)

            t.forward(x*2)

            t.backward(x*2)

            t.right(120)

            t.forward(x*2)

            t.backward(x*2)

            t.left(60)

            t.backward(x*3)

            t.right(60)     

移动函数 

    def move(self):                    #雪花移动函数

        if self.y >= -500:            #当雪花还在画布中时

            self.y -= self.speed     #设置上下移动速度

            self.x -= self.speed * math.sin(self.f)    #设置左右移动速度

            self.f -= 0.1            #可以理解成标志                    ,改变左右移动的方向

        else:                        #当雪花漂出了画布时      ,重新生成一个雪花

            self.r = 6        

            self.x = ra.randint(-1000,1000)

            self.y = 500

            self.f = ra.uniform(-3.14,3.14)

            self.speed = ra.randint(5,10)

            self.color = ra.choice(colors)

            self.outline = 5  

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
程序员必须知道的知识和技能有哪些(程序员必备的6个好习惯,成为更优秀的自己)