当前位置: 首页 > article >正文

python-分享篇-画樱花

文章目录

  • 画樱花
    • 代码
    • 效果

画樱花

代码

from turtle import *
from random import *
from math import *

def tree(n,l):
    pd()#下笔
    #阴影效果
    t = cos(radians(heading()+45))/8+0.25
    pencolor(t,t,t)
    pensize(n/3)
    forward(l)#画树枝

    if n>0:
        b = random()*15+10 #右分支偏转角度
        c = random()*15+10 #左分支偏转角度
        d = l*(random()*0.25+0.7) #下一个分支的长度
        #右转一定角度,画右分支
        right(b)
        tree(n-1,d)
        #左转一定角度,画左分支
        left(b+c)
        tree(n-1,d)
        #转回来
        right(c)
    else:
        #画叶子
        right(90)
        n=cos(radians(heading()-45))/4+0.5
        pencolor(n,n*0.8,n*0.8)
        circle(3)
        left(90)
        #添加0.3倍的飘落叶子
        if(random()>0.7):
            pu()
            #飘落
            t = heading()
            an = -40 +random()*40
            setheading(an)
            dis = int(800*random()*0.5 + 400*random()*0.3 + 200*random()*0.2)
            forward(dis)
            setheading(t)
            #画叶子
            pd()
            right(90)
            n = cos(radians(heading()-45))/4+0.5
            pencolor(n*0.5+0.5,0.4+n*0.4,0.4+n*0.4)
            circle(2)
            left(90)
            pu()
            #返回
            t=heading()
            setheading(an)
            backward(dis)
            setheading(t)
    pu()
    backward(l)#退回

bgcolor(0.5,0.5,0.5)#背景色
ht()#隐藏turtle
speed(0)#速度 1-10渐进,0 最快
tracer(0,0)
pu()#抬笔
backward(100)
left(90)#左转90度
pu()#抬笔
backward(300)#后退300
tree(12,100)#递归7层
done()

效果

在这里插入图片描述


http://www.kler.cn/a/232372.html

相关文章:

  • nacos-operator在k8s集群上部署nacos-server2.4.3版本踩坑实录
  • How to install rust in Ubuntu 24.04
  • javaWeb小白项目--学生宿舍管理系统
  • ubuntu22.04 安装FFmpeg,并进行视频的转化格式和裁剪
  • 【数据结构】AVL树
  • PdServer:调用MidjourneyAPI完成静夜思图文生成
  • 栈--数据结构
  • 龙芯安装Docker
  • 【CSS】margin塌陷和margin合并及其解决方案
  • K8S之Pod常见的状态和重启策略
  • java实战:销售订单号自动生成
  • c++ 子进程交互 逻辑
  • leetCode 30天
  • 红队打靶练习:PHOTOGRAPHER: 1
  • 【PyTorch】实现迁移学习框架DaNN
  • 利用低代码 BI 平台获得竞争优势:实现数据分析与业务决策的革新
  • 休斯顿NASA太空机器人进入最后测试阶段,或可模拟人类执行外星任务!
  • MySQL基础查询篇(7)-常用的字符串函数
  • Openresty+Lua+Redis实现高性能缓存
  • Android SDK 上传 Maven 喂奶级教程
  • 前端滚动组件分享
  • 深入理解Netty及核心组件使用—上
  • 机器学习10-特征缩放
  • 记录下ibus-libpinyin输入法的重新安装
  • three.js 箭头ArrowHelper的实践应用
  • Python第三方库国内下载镜像源地址