更像的五星红旗

点击查看代码
import turtle

# 设置屏幕
screen = turtle.Screen()
screen.bgcolor("white")
screen.setup(width=800, height=600)  # 设置窗口大小

# 设置画笔
pen = turtle.Turtle()
pen.speed(10)
pen.penup()

# 绘制红旗背景
def draw_rectangle(color, width, height):
    pen.fillcolor(color)
    pen.begin_fill()
    for _ in range(2):
        pen.forward(width)
        pen.right(90)
        pen.forward(height)
        pen.right(90)
    pen.end_fill()

# 绘制五角星
def draw_star(color, size):
    pen.fillcolor(color)
    pen.begin_fill()
    for _ in range(5):
        pen.forward(size)
        pen.right(144)
    pen.end_fill()

# 绘制小五角星
def draw_small_star(color, size, angle):
    pen.fillcolor(color)
    pen.begin_fill()
    for _ in range(5):
        pen.forward(size)
        pen.right(144)
    pen.end_fill()
    pen.right(angle)

# 绘制红旗
pen.goto(-300, 200)
draw_rectangle("red", 600, 400)

# 绘制大五角星
pen.goto(-250, 100)  # 大五角星位置
pen.setheading(0)
draw_star("yellow", 100)

# 绘制四个小五角星(再次调整纵坐标使其向上移动)
positions = [(-150, 160), (-120, 100), (-120, 40), (-150, 0)]  # 调整小五角星的 y 值
angles = [0, 15, 30, 45]

for pos, angle in zip(positions, angles):
    pen.goto(pos)
    pen.setheading(angle)
    draw_small_star("yellow", 30, angle)

# 隐藏画笔
pen.hideturtle()

# 结束
turtle.done()
posted @ 2025-03-03 12:12  昔桯  阅读(42)  评论(0)    收藏  举报