python画三瓣树叶_python实现画一颗树和一片森林

本文展示了如何使用Python的turtle模块绘制一棵3D效果的树和森林。通过递归函数实现Y型树的绘制,并调整参数以创建不同的树干长度、角度和比例,最终形成一片森林的视觉效果。代码简洁易懂,适合初学者了解图形绘制。
摘要由CSDN通过智能技术生成

本文实例为大家分享了python画一颗树和一片森林的具体代码,供大家参考,具体内容如下

实现效果

201862584714957.jpg?201852584736

代码在这里

from turtle import Turtle

def tree(plist, l, a, f):

"""

:param plist:画笔列表,指数型增加

:param l: 画笔的长度,同时也是递归终止条件,注意下面的引用中是字母l,不是数字1

:param a: 分开的两个树杈之间夹角的一半,固定值65°

:param f: 子树与父树的比值

:return: 返回一个基本的Y型的树

"""

if l>5:

lst = []

for p in plist:

p.forward(l)

q = p.clone()

p.left(a)

q.right(a)

lst.append(p)

lst.append(q)

tree(lst,l*f,a,f)

def maketree(x,y):

"""

:param x: 树起点的横坐标

:param y: 树起点的纵坐标

:return: 返回一颗树

"""

p = Turtle()

p.color("green")

p.pensize(5)

p.hideturtle() # 隐藏那只小乌龟

p.getscreen().tracer(30,0)# 获得屏幕句柄,可以对其进行操作,每30次操作将屏幕刷新,延时为0

p.speed(10)

p.left(90)

p.penup()

p.goto(x, y)

p.pendown() # 此三句向来组合使用,意思为起笔,移动,落笔之意

t = tree([p],200,65,0.6375)

print(len(p.getscreen().turtles())) #一共用了多少笔划

def main():

"""

主函数,赋树的起点坐标

"""

maketree(0,0)

maketree(-200,-200)

maketree(200,-200)

main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值