对科赫雪花的一个扩展–实现了随机位置,随机阶数,随机颜色,随机尺寸的功能
附上代码
一、随机阶数
def randomlevel(): level = random.randint(1, 4) level = int(level) return level
二、随机尺寸-随机位置
def randomSize(): size = random.randint(50, 100) size = int(size) return size
def randomDrawX(): x=random.randint(-500,500) x=int(x) return x
def randomDrawY(): y=random.randint(-300,300) y=int(y) return y
三、随机颜色
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
四、全部代码
import turtle,random # 主函数 def koch(size, n): if n == 0: turtle.fd(size) else: for angle in [0, 60, -120, 60]: turtle.left(angle) koch(size/3, n-1) #随机阶数 def randomlevel(): level = random.randint(1, 4) level = int(level) return level #随机尺寸 def randomSize(): size = random.randint(50, 100) size = int(size) return size #随机位置 def randomDrawX(): x=random.randint(-500,500) x=int(x) return x def randomDrawY(): y=random.randint(-300,300) y=int(y) return y #随机颜色 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 main(): turtle.setup(1200,700,100,100) #设置画布背景颜色 turtle.screensize(bg="#F8F8FF") turtle.pensize(1) line = randomlevel() size = randomSize() numbers= random.choice([3, 4, 5, 6, 7, 8, 9,]) for i in range(0,numbers): turtle.penup() x = randomDrawX() y = randomDrawY() turtle.color(randomcolor(),"white") turtle.goto(x, y) turtle.speed(2000) turtle.pendown() koch(size, line) turtle.right(120) koch(size, line) turtle.right(120) koch(size, line) turtle.done() turtle.hideturtle() main()
五、效果图–每次运行生成不同的图像
最后说一声啊,这类似一个模板,可以随便修改颜色啥的。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/105207.html