当前位置: 首页 > news >正文

网站建设供应商百度数据分析

网站建设供应商,百度数据分析,加强服务保障满足群众急需i,怎样做优惠券网站python和pygame实现烟花特效 新年来临之际,来一个欢庆新年烟花祝贺,需要安装使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图&#xff1a…

python和pygame实现烟花特效

新年来临之际,来一个欢庆新年烟花祝贺,需要安装使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520

效果图及源码

先看效果图:

源码如下:

import pygame
import random
import math# 初始化pygame
pygame.init()# 设置窗口大小
width, height = 800, 600
screen = pygame.display.set_mode((width, height))# 定义颜色
black = (0, 0, 0)
red = (255, 0, 0)# 定义烟花粒子
class Particle:def __init__(self, x, y, color):self.x = xself.y = yself.color = colorself.radius = random.randint(2, 4)self.angle = random.uniform(0, 2 * math.pi)self.speed = random.uniform(1, 3)self.gravity = 0.1def move(self):self.x += math.cos(self.angle) * self.speedself.y += math.sin(self.angle) * self.speed + self.gravityself.radius -= 0.1  # 粒子逐渐变小def draw(self):pygame.draw.circle(screen, self.color, (int(self.x), int(self.y)), int(self.radius))# 定义烟花
class Firework:def __init__(self, x, y):self.x = xself.y = yself.color = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))self.particles = []self.exploded = Falseself.explode_height = random.randint(100, 400)  # 设置爆炸高度self.speed = random.randint(5, 10)  # 设置上升速度self.angle = math.pi / 2  # 设置上升角度为垂直向上def launch(self):if not self.exploded:self.y -= self.speed * math.sin(self.angle)if self.y <= self.explode_height:  # 到达设定高度后爆炸self.explode()self.exploded = Truedef explode(self):for _ in range(100):  # 爆炸产生的粒子数量self.particles.append(Particle(self.x, self.y, self.color))def draw(self):if not self.exploded:pygame.draw.circle(screen, self.color, (int(self.x), int(self.y)), 5)else:for particle in self.particles:particle.move()particle.draw()#显示文字
#font = pygame.font.Font(None, 36)  # 设置字体和大小                
font = pygame.font.Font("C:\\Windows\\Fonts\\simsun.ttc", 36)        
text = font.render("龙年快乐", True, red)  # 渲染文本
text_rect = text.get_rect(center=(width // 2, height // 2))  # 获取文本的矩形区域# 主循环
fireworks = []
clock = pygame.time.Clock()
running = True
while running:clock.tick(30)  # 控制帧率for event in pygame.event.get():if event.type == pygame.QUIT:running = Falsescreen.fill(black)# 绘制文本screen.blit(text, text_rect)# 发射烟花if random.randint(1, 20) == 1:  # 控制烟花发射频率fireworks.append(Firework(random.randint(0, width), height))# 更新烟花并绘制for firework in fireworks[:]:firework.launch()firework.draw()if firework.exploded and all(p.radius <= 0 for p in firework.particles):fireworks.remove(firework)pygame.display.flip()pygame.quit()

pygame在屏幕上显示字体的方法说明

使用pygame.font.Font函数来设置字体和大小,然后使用font.render函数将文本渲染为图像。最后,使用screen.blit函数将渲染好的文本图像绘制到屏幕上。

pygame.font.Font(None, 字体大小)使用系统默认字体,可能不支持汉字。None代表系统默认字体,如pygame.font.Font(None, 36),可能不支持汉字。怎么办?使用pygame.font. Font(“含路径的字体名”,字体大小),指定支持汉字的字体,如:pygame.font.Font("C:\\Windows\\Fonts\\simsun.ttc", 36),simsun.ttc是宋体,字体的路径和名称。在windows中如何确定字体的路径和名称呢?参见下图

改进:添加背景音乐,增添欢乐的气氛

在“# 主循环”部分前,添加如下代码

# 载入背景音乐
pygame.mixer.music.load("踩着开心的节奏 - 橙光音乐.mp3")
pygame.mixer.music.set_volume(0.5)  # 设置音量
pygame.mixer.music.play(-1)  #  播放背景音乐,-1表示循环播放

其中,pygame.mixer.music.load函数加载背景音乐文件(例如名为"踩着开心的节奏 - 橙光音乐.mp3"文件,并将其放在与代码文件相同的目录下),然后使用pygame.mixer.music.set_volume函数设置音量大小(范围为0.0-1.0)。最后,使用pygame.mixer.music.play函数播放背景音乐,参数-1表示循环播放。

请你使用自己背景音乐文件替换"踩着开心的节奏 - 橙光音乐.mp3",只要保证正确命名文件名和路径即可。

http://www.hkea.cn/news/607780/

相关文章:

  • 网站投稿系统怎么做网站制作流程是什么
  • 交警网站建设整改百度推广怎么推广
  • 重庆网站建设哪里比较好呢网站下载
  • 网站运行速度慢的原因看b站二十四小时直播间
  • 电商网站开发服务全网营销骗局揭秘
  • 个人网站怎么做互联网营销师培训课程免费
  • 微信网站建设价格网站开发报价方案
  • wordpress utc时间慢8小时大连seo关键词排名
  • 中国建设承包商网站创建软件平台该怎么做
  • 中小企业网站建设费用海外推广服务
  • 企业名称的英文做网站名seo是怎么优化推广的
  • 手机在线建站西安seo服务公司
  • 网站开发有前途吗我也要投放广告
  • 备案 网站名称怎么写crm软件
  • 扁平式网站模板b2b网站推广优化
  • 做外贸网站网络营销咨询服务
  • 江门网站建设方案报价淘宝seo优化怎么做
  • 盘龙城做网站推广网站推广
  • 如何做电子书网站域名站长工具
  • 物联网平台有哪些排名优化外包公司
  • 秦皇岛汽车网站制作数字营销工具
  • 培训教育的网站怎么做东莞做网站的联系电话
  • 云南做网站的公司外贸谷歌优化
  • 网页设计学徒培训可试学巢湖seo推广
  • 让顾客心动的句子seo模拟点击软件源码
  • 设计类专业包括哪些kj6699的seo综合查询
  • 手机网站制作哪家好查关键词
  • 米拓企业网站管理系统电商培训机构排名前十
  • 做效果图有哪些网站seo点击排名
  • 网络营销推广网站收录seo推广排名平台有哪些