python生成立体烟花代码
时间: 2024-10-23 16:04:30 浏览: 12
Python生成立体烟花效果通常会涉及到动画、图形绘制以及一些基础的数学计算,如点的位置变换。这里有一个简单的例子,使用PIL库(Python Imaging Library)创建二维烟花效果,你可以将其稍作调整来模拟三维感觉:
```python
from PIL import Image, ImageDraw, ImageFont
# 定义烟花中心位置和颜色
center = (50, 50)
colors = [(255, 0, 0), (0, 255, 0), (0, 0, 255)]
# 创建空白图片和画笔
img_size = (400, 400)
img = Image.new('RGB', img_size, 'white')
draw = ImageDraw.Draw(img)
# 烟花函数,模拟随机大小和方向的火球爆炸
def draw_firework(size, angle):
for i in range(3):
x, y = center
dx = int(x + size * cos(angle))
dy = int(y + size * sin(angle))
draw.point((dx, dy), fill=colors[i % len(colors)])
# 设置循环次数和步长
for i in range(60): # 更改次数增加烟花密度
# 每次迭代改变火球大小和角度
size = 20 + 10 * random.random() # 随机大小
angle = random.uniform(-90, 90) # 随机角度
draw_firework(size, angle)
# 显示和保存图像
img.show()
img.save("fireworks.gif", "GIF", duration=100) # 可以更改duration设置帧间隔
阅读全文