科赫曲线-随机雪花扩展

import turtle,random

def randomn():
    n= random.randint(1,5)
    #阶数
    n=int(n)
    return n

def randomx():#随机位置x
    x= random.randint(-250,250)
    x=int(x)
    return x

def randomy():#随机位置y
    y= random.randint(-200,200)
    y=int(y)
    return y


def randomsize():
 
    size=random.randint(50, 70)
    return size

def randomcolor():#随机颜色
    colorArr = ['1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']
    color = ""
    for i in range(6):
        color += colorArr[random.randint(0,14)]
    return "#"+color
def koch(size,n):
    if n==0:
        turtle.fd(size)
    else:
        for angle in [0,45,90,-135,-135,90]:
            turtle.color(randomcolor())
            turtle.left(angle)
            koch(size/6, n-1)


def main():
    turtle.setup(1000,700)
    turtle.screensize(bg="#F8F8FF")
    turtle.pensize(2)
    size=randomsize()
    n=randomn()
    turtle.color(randomcolor())
    number= random.choice([3, 4, 5, 6, 7, 8, 9,])
    for i in range(0,number):
        turtle.penup()
        x=randomx()
        y=randomy()
        turtle.color(randomcolor(),"white")
        turtle.goto(x,y)
        turtle.speed(2000)
        turtle.pendown()
        for i in range(6):
            koch(size,n)
            turtle.right(90)
        
    turtle.hideturtle()
    turtle.done()
main()

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值