如何用python画玫瑰花_使用Python画一朵玫瑰花

#-*- coding: utf-8 -*-#@Time : 18-9-14 下午3:23#@Author : Felix Wang

importturtleimportmathdefp_line(t, n, length, angle):"""Draws n line segments."""

for i inrange(n):

t.fd(length)

t.lt(angle)defpolygon(t, n, length):"""Draws a polygon with n sides."""angle= 360 /n

p_line(t, n, length, angle)defarc(t, r, angle):"""Draws an arc with the given radius and angle."""arc_length= 2 * math.pi * r * abs(angle) / 360n= int(arc_length / 4) + 1step_length= arc_length /n

step_angle= float(angle) /n#Before starting reduces, making a slight left turn.

t.lt(step_angle / 2)

p_line(t, n, step_length, step_angle)

t.rt(step_angle/ 2)defpetal(t, r, angle):"""Draws a 花瓣 using two arcs."""

for i in range(2):

arc(t, r, angle)

t.lt(180 -angle)defflower(t, n, r, angle, p):"""Draws a flower with n petals."""

for i inrange(n):

petal(t, r, angle)

t.lt(p/n)defleaf(t, r, angle, p):"""Draws a 叶子 and fill it."""t.begin_fill()#Begin the fill process.

t.down()

flower(t,1, r, angle, p)

t.end_fill()defmain():

window= turtle.Screen() #creat a screen

window.bgcolor("white")

window.title("draw a flower")

lucy=turtle.Turtle()

lucy.shape("turtle")

lucy.color("red")

lucy.width(3)#lucy.speed(10)

#Drawing flower

flower(lucy, 7, 60, 100, 360)#Drawing pedicel

lucy.color("brown")

lucy.rt(90)

lucy.fd(200)#Drawing leaf 1

lucy.width(1)

lucy.rt(270)

lucy.color("green")

leaf(lucy,40, 80, 180)

lucy.rt(140)

lucy.color("black")

lucy.fd(30)

lucy.lt(180)

lucy.fd(30)#Drawing leaf 2

lucy.rt(120)

lucy.color("green")

leaf(lucy,40, 80, 180)

lucy.color("black")

lucy.rt(140)

lucy.fd(30)

lucy.ht()#hideturtle

window.exitonclick()

main()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值