Python Turtle 模块绘制flag
Python Turtle 模块绘制flag
turtle模块:python内置的绘图工具
基本操作(Turtle方法)
turtle.forward(step):前进step个像素
turtle.back(step):后退step个像素
turtle.right():右转一个角度
turtle.left():左转一个角度
turtle.pencolor(“string”):画笔颜色
turtle.fillcolor(“string”):填充颜色
turtle.speed(int):运动速度
其他的turtle方法可以参见python官网
https://docs.python.org/zh-cn/3.7/library/turtle.html
具体代码实现
import turtle
import time
def draw__stars(tur, step, x, y, arg):
tur.pencolor('yellow')
tur.fillcolor('yellow')
tur.up()
tur.goto(x, y)
tur.begin_fill()
tur.down()
tur.right(arg)
tur.forward(step)
tur.right(144)
tur.forward(step)
tur.right(144)
tur.forward(step)
tur.right(144)
tur.forward(step)
tur.right(144)
tur.forward(step)
tur.right(144)
tur.end_fill()
def draw__flag(tur, wide, height):
tur.pencolor('red')
tur.fillcolor('red')
tur.goto(- wide / 2, height / 2)
tur.begin_fill()
tur.forward(wide)
tur.right(90)
tur.forward(height)
tur.right(90)
tur.forward(wide)
tur.right(90)
tur.forward(height)
tur.end_fill()
if __name__ == '__main__':
"""
main 函数
"""
# tur = turtle.Turtle()
turtle.screensize(canvwidth=3000, canvheight=2000, bg=None)
# 绘制star的turtle对象
tur_star = turtle.Turtle()
# 绘制flag的turtle对象
tur_flag = turtle.Turtle()
tur_flag.speed(3)
tur_star.speed(3)
# 隐藏turtle对象
tur_star.hideturtle()
tur_flag.hideturtle()
# 间隔3秒,可以没有,这个是我调试时加上去的
time.sleep(3)
# 绘制长方形
draw__flag(tur_flag, 630, 420)
draw__stars(tur_star, step=60, x=-280, y=155, arg=0)
draw__stars(tur_star, step=25, x=-182, y=177, arg=- 25)
draw__stars(tur_star, step=25, x=-175, y=125, arg=41)
draw__stars(tur_star, step=25, x=-208, y=79, arg=23)
draw__stars(tur_star, step=25, x=-265, y=75, arg=48)
# 使画面锁定
turtle.done()