python樱花树怎么用电脑看效果_用python绘制樱花树

黑夜可能漫长,但总会迎来温暖的阳光,三月如期而至,武大的樱花又一次盛开。那么今天就一起来看看怎样在python中画一棵美丽的樱花树~ZHF免费资源网

说到用python画画,那当然就是小乌龟Turtle库了,为啥是turtle呢,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。ZHF免费资源网

一、安装与引入ZHF免费资源网

安装没有什么难度直接pip安装就可以ZHF免费资源网

pip install turtle

可使用以下3种方法引入:ZHF免费资源网

ZHF免费资源网

二、使用ZHF免费资源网

turtle库使用起来也很简单,主要就是利用几个核心的控制代码ZHF免费资源网

turtle.goto(x,y):直接跳转到(x,y)点,以绘图窗口中心为原点,

turtle.fd(d):以当前方向,往前行进d像素。

turtle.bk(d):保持当前方向不变,往后退行d像素。

turtle.circle(r,angle):以r为半径圆的angle角度旋转。

turtle.penup():抬笔

turtle.pendown():落笔

urtle.left(angle):向左旋转angle度。

turtle.right(angle):向右旋转angle度。

比如绘制树干部分的代码可以这样写ZHF免费资源网

def Tree(branch, t):

time.sleep(0.0005)

if branch > 3:

if 6 <= branch <= 12: #

if random.randint(0, 2) == 0: #随机绘制

t.color('snow') #设置颜色

else:

t.color('lightcoral') # 树叶颜色

t.pensize(branch / 3)

elif branch < 6:

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

t.color('snow')

else:

t.color('lightcoral') #

t.pensize(branch / 2)

else:

t.color('sienna') # 赭(zhě)色

t.pensize(branch / 10) # 6

t.forward(branch)

a = 1.5 * random.random()

t.right(20 * a)

b = 1.5 * random.random()

Tree(branch - 10 * b, t)

t.left(40 * a)

Tree(branch - 10 * b, t)

t.right(20 * a)

t.up()

t.backward(branch)

t.down()

而写字的部分就不用一笔一划的去绘制,直接使用turtle.write()就可以在指定位置写上你需要的文字。ZHF免费资源网

write(arg,move=false,align='left',font=('arial',8,'normal'))

#arg--将写入Turtle绘画屏幕的文字。

#align(可选)--“左(left)”、“中(center)”或“右(right)”之一。

#font(可选)--(fontname、fontsize、fonttype)。

那么来看看最后效果吧!ZHF免费资源网

ZHF免费资源网

完整源码:ZHF免费资源网

import turtle as T

import random

import time

# 画樱花的躯干(60,t)

def Tree(branch, t):

time.sleep(0.0005)

if branch > 3:

if 8 <= branch <= 12:

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

t.color('snow') # 白

else:

t.color('lightcoral') # 淡珊瑚色

t.pensize(branch / 3)

elif branch < 8:

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

t.color('snow')

else:

t.color('lightcoral') # 淡珊瑚色

t.pensize(branch / 2)

else:

t.color('sienna') # 赭(zhě)色

t.pensize(branch / 10) # 6

t.forward(branch)

a = 1.5 * random.random()

t.right(20 * a)

b = 1.5 * random.random()

Tree(branch - 10 * b, t)

t.left(40 * a)

Tree(branch - 10 * b, t)

t.right(20 * a)

t.up()

t.backward(branch)

t.down()

# 掉落的花瓣

def Petal(m, t):

for i in range(m):

a = 200 - 400 * random.random()

b = 10 - 20 * random.random()

t.up()

t.forward(b)

t.left(90)

t.forward(a)

t.down()

t.color('lightcoral') # 淡珊瑚色

t.circle(1)

t.up()

t.backward(a)

t.right(90)

t.backward(b)

# 绘图区域

t = T.Turtle()

# 画布大小

w = T.Screen()

t.hideturtle() # 隐藏画笔

t.getscreen().tracer(5, 0)

w.screensize(bg='wheat') # wheat小麦

t.left(90)

t.up()

t.backward(150)

t.down()

t.color('sienna')

# 画樱花的躯干

Tree(60, t)

# 掉落的花瓣

Petal(200, t)

w.exitonclick()

以上就是用python绘制樱花树的详细内容,更多关于python绘图的资料请关注其它相关文章!ZHF免费资源网

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值