Python"科赫雪花小包裹"问题

要求实现的功能:
在turtle画板上随机位置(不超过画板),产生随机大小(合适的大小)的科赫雪花,并且雪花的数量也是随机的,在[2,10]之间
实现代码:

# @Time : 2020/4/13
# @File : Chap04.py 
# @Title : "科赫雪花小包裹"问题,要求雪花位置随机(画布之内),雪花个数随机[2,10]之间。雪花大小随机(适合的大小)
# @Software: PyCharm

import turtle as t
import random
#绘制科赫曲线
def drawcurve(len,n):
    if n==0:
        t.fd(len)
    else:
        for angle in [0,60,-120,60]:
            t.left(angle)
            drawcurve(len/3,n-1)
#绘制一朵科赫雪花
def drawsnowflake(size,n):
    for i in range(n):
        drawcurve(size,n)
        t.right(120)
def rand_snow(po_x,po_y,size,n):
    #去到随机位置
    t.penup()
    t.goto(po_x,po_y)
    t.pendown()
    #调整随机数量,随机合适大小
    t.begin_fill()
    drawsnowflake(size,n)
    t.end_fill()
n=3
t.setup(800,800)
t.pensize(1)
t.speed(9)
t.bgcolor('#0032c8')
#画笔颜色和填充图形的颜色都是白色
t.color('white','white')
#产生随机的雪花数量
snow_num = random.randint(2,10)
for i in range(snow_num):
    #产生随机的位置坐标po_x,po_y,随机雪花大小snow_size
    po_x = random.randint(-360,360)
    po_y = random.randint(-360,360)
    snow_size = random.randint(15,40)
    rand_snow(po_x,po_y,snow_size,n)
t.hideturtle()
t.done()

猜你喜欢

转载自blog.csdn.net/Aurora_1970s/article/details/105714271