首页 > 分享 > 【原创】pygame学习笔记(2)

【原创】pygame学习笔记(2)

 

测试代码情况

(1)做到了弧形可以按出来

(2)数字的显示正确

(3)出的一些低级错误

        temp:pygame2.txt 这样的错误, temppygame2.txt 导致 这样的错误,

        pygame.display.update 这样的错误,   pygame.display.update() 导致黑屏不刷新

# -*- coding:utf-8 -*-

import pygame

import sys

from pygame.locals import *

import math

color=0,0,255

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

pygame.init()

screen=pygame.display.set_mode((600,500))

caption=pygame.display.set_caption("draw with 1,2,3,4")

myfont=pygame.font.Font(None,60)

while True:

for event in pygame.event.get():

if event.type == QUIT:

sys.exit()

elif event.type == KEYDOWN:

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

#clear the screen

screen.fill((0,255,0))

#draw the four numbers

#有修改,pygame的角度是正上方0度,顺时针转的

textImg3=myfont.render("3",True,color)

screen.blit(textImg3,(x+radius/2-200,y+radius/2))

textImg4=myfont.render("4",True,color)

screen.blit(textImg4,(x+radius/2,y+radius/2))

textImg1=myfont.render("1",True,color)

screen.blit(textImg1,(x+radius/2,y+radius/2-200))

textImg2=myfont.render("2",True,color)

screen.blit(textImg2,(x+radius/2-200,y+radius/2-200))

#should the pieces be drawn?

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)

#is the pie finished?

if piece1 and piece2 and piece3 and piece4:

color=0,128,0

pygame.display.update()

 

优化代码

    #is the pie finished?
    if piece1 and piece2 and piece3 and piece4:
        color=255,0,0
        textImg_good=myfont.render("farewell,good!",True,color)
        screen.blit(textImg_good,(x-150,y))

      pygame.display.update()

相关知识

园艺技巧学习笔记1
机器学习笔记(通俗易懂)
python学习笔记(十六)文件操作
花类的基本常识(学习笔记三)
厚“记”薄发 落“笔”生花丨学校学生线上学习优秀课堂笔记展示
《看花识草辨药材》学习笔记1
学生工作处组织开展学生优秀作业和课堂笔记展示活动
TensorFlow学习记录(八)
[机器学习基础][笔记] 一、鸢尾花分类
花艺师成长笔记

网址: 【原创】pygame学习笔记(2) https://m.huajiangbk.com/newsview158014.html

所属分类:花卉
上一篇: TensorFlow2.1.0、
下一篇: celery 定时任务 简单实例