c语言编程樱花树,分形樱花树(画画)

这篇博客介绍了一段使用Python turtle库绘制分形樱花树和花瓣的代码。通过递归调用函数,实现了树枝和花瓣的细节,同时调整了颜色和线条宽度,以模拟真实的樱花树和花瓣效果。代码中还包含了随机颜色选择和尺寸变化,增加了视觉的随机性和多样性。
部署运行你感兴趣的模型镜像

[python]代码库import random

import turtle

__Pen = turtle.Pen()

# 分形樱花树

# “画树”函数

# 参数分别是树枝长度、画笔

def tree(branchLen, t):

if (branchLen > 3):

if (8 <= branchLen and branchLen <= 12) :

if (random.randint(0, 2) == 0) :

t.pencolor('snow')

else :

t.pencolor('lightcoral')

t.pensize((branchLen / 3))

elif (branchLen < 8) :

if (random.randint(0, 1) == 0) :

t.pencolor('snow')

else :

t.pencolor('lightcoral')

t.pensize((branchLen / 2))

else :

t.pencolor('sienna')

t.pensize((branchLen / 10))

t.forward(branchLen)

a = (1.5 * (random.random()))

t.right((20 * a))

b = (1.5 * (random.random()))

# 在tree函数内部调自己,这种方式叫递归调用

# 递归可以大幅提升编程效率

tree(branchLen - 10 * b, t)

t.left((40 * a))

tree(branchLen - 10 * b, t)

t.right((20 * a))

t.penup()

t.backward(branchLen)

t.pendown()

# 绘制树下花瓣,参数分别是画板数、画笔

def petal(m, t):

for i in range(m):

a = (200 - 400 * (random.random()))

b = (10 - 20 * (random.random()))

t.penup()

t.forward(b)

t.left(90)

t.forward(a)

t.pendown()

t.pencolor('lightcoral')

t.circle(1)

t.penup()

t.backward(a)

t.right(90)

t.backward(b)

def main():

t = turtle.Pen()

__Pen.hideturtle()

t.speed(0)

turtle.bgcolor('wheat')

t.left(90)

t.penup()

t.backward(150)

t.pendown()

t.pencolor('sienna')

tree(60, t)

petal(100, t)

turtle.done()

main()

694748ed64b9390909c0d88230893790.png

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值