用户:
申浩南查看:0 回复:0 评论:0 创建时间:2022-02-17T10:15:11
【作品展示】

【作品介绍】
点击1234
【作品源代码】
import math
import pygame
import sys
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode([600, 500])
pygame.display.set_caption('The Pie Game(press1,2,3,4)')
font = pygame.font.Font(None, 60)
color = 200, 80, 60
width = 4
x = 300
y = 250
radius = 200
position = x-radius, y-radius, radius*2, radius*2
piece1 = False
piece2 = False
piece3 = False
piece4 = False
while True:
for event in pygame.event.get():
if event.type == QUIT:
sys.exit()
elif event.type == KEYUP:
if event.key == pygame.K_ESCAPE:
sys.exit()
elif event.key == pygame.K_1:
piece1 = True
elif event.key == pygame.K_2:
piece2 = True
elif event.key == pygame.K_3:
piece3 = True
elif event.key == pygame.K_4:
piece4 = True
screen.fill((0, 0, 200))
# 绘制四个数字
textImg1 = font.render('1', True, color)
screen.blit(textImg1, (x + radius / 2 - 20, y - radius / 2))
textImg2 = font.render('2', True, color)
screen.blit(textImg2, (x - radius / 2, y - radius / 2))
textImg3 = font.render('3', True, color)
screen.blit(textImg3, (x - radius / 2 - 20, y + radius / 2 - 20))
textImg4 = font.render('4', True, color)
screen.blit(textImg4, (x + radius / 2 - 20, y + radius / 2 - 20))
# 侦测按下的数字
if piece1:
start_angle = math.radians(0)
end_angle = math.radians(90)
pygame.draw.arc(screen, color, position, start_angle, end_angle, width)
pygame.draw.line(screen, color, (x, y), (x, y - radius), width)
pygame.draw.line(screen, color, (x, y), (x + radius, y), width)
if piece2:
start_angle = math.radians(90)
end_angle = math.radians(180)
pygame.draw.arc(screen, color, position, start_angle, end_angle, width)
pygame.draw.line(screen, color, (x, y), (x, y - radius), width)
pygame.draw.line(screen, color, (x, y), (x - radius, y), width)
if piece3:
start_angle = math.radians(180)
end_angle = math.radians(270)
pygame.draw.arc(screen, color, position, start_angle, end_angle, width)
pygame.draw.line(screen, color, (x, y), (x - radius, y), width)
pygame.draw.line(screen, color, (x, y), (x, y+radius), width)
if piece4:
start_angle = math.radians(270)
end_angle = math.radians(360)
pygame.draw.arc(screen, color, position, start_angle, end_angle, width)
pygame.draw.line(screen, color, (x, y), (x, y + radius), width)
pygame.draw.line(screen, color, (x, y), (x + radius, y), width)
# 侦测是否所有数字都已完成
if piece1 and piece2 and piece3 and piece4:
color = 0, 255, 0
pygame.display.update()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn