自学Python:绘制一朵玫瑰花

作者: 小强聊成长 | 来源:发表于2021-07-29 10:23 被阅读0次

话不多说,直接上代码:

import turtle as t

# 定义一个曲线绘制函数

def DegreeCurve(n, r, d=1):

    for i in range(n):

        t.left(d)

        t.circle(r, abs(d))

# 初始位置设定

s = 0.2 # size

t.setup(450*5*s, 750*5*s)

t.pencolor("black")

t.fillcolor("red")

t.speed(100)

t.penup()

t.goto(0, 900*s)

t.pendown()

# 绘制花朵形状

t.begin_fill()

t.circle(200*s,30)

DegreeCurve(60, 50*s)

t.circle(200*s,30)

DegreeCurve(4, 100*s)

t.circle(200*s,50)

DegreeCurve(50, 50*s)

t.circle(350*s,65)

DegreeCurve(40, 70*s)

t.circle(150*s,50)

DegreeCurve(20, 50*s, -1)

t.circle(400*s,60)

DegreeCurve(18, 50*s)

t.fd(250*s)

t.right(150)

t.circle(-500*s,12)

t.left(140)

t.circle(550*s,110)

t.left(27)

t.circle(650*s,100)

t.left(130)

t.circle(-300*s,20)

t.right(123)

t.circle(220*s,57)

t.end_fill()

# 绘制花枝形状

t.left(120)

t.fd(280*s)

t.left(115)

t.circle(300*s,33)

t.left(180)

t.circle(-300*s,33)

DegreeCurve(70, 225*s, -1)

t.circle(350*s,104)

t.left(90)

t.circle(200*s,105)

t.circle(-500*s,63)

t.penup()

t.goto(170*s,-30*s)

t.pendown()

t.left(160)

DegreeCurve(20, 2500*s)

DegreeCurve(220, 250*s, -1)

# 绘制一个绿色叶子

t.fillcolor('green')

t.penup()

t.goto(670*s,-180*s)

t.pendown()

t.right(140)

t.begin_fill()

t.circle(300*s,120)

t.left(60)

t.circle(300*s,120)

t.end_fill()

t.penup()

t.goto(180*s,-550*s)

t.pendown()

t.right(85)

t.circle(600*s,40)

# 绘制另一个绿色叶子

t.penup()

t.goto(-150*s,-1000*s)

t.pendown()

t.begin_fill()

t.rt(120)

t.circle(300*s,115)

t.left(75)

t.circle(300*s,100)

t.end_fill()

t.penup()

t.goto(430*s,-1070*s)

t.pendown()

t.right(30)

t.circle(-600*s,35)

t.done()

执行结果如下:

_______________END______________

相关文章

网友评论

    本文标题:自学Python:绘制一朵玫瑰花

    本文链接:https://www.haomeiwen.com/subject/bhtymltx.html