简单两个python烟花案例

下面是两个 Python 代码示例,分别用来绘制不同类型的烟花效果。

### 1. 烟花喷泉

这个例子使用了 Python 的 turtle 模块来实现图形绘制,通过控制小海龟的移动和绘制来模拟烟花喷泉的效果。

```python
import turtle
import random

# 设置画布
wn = turtle.Screen()
wn.bgcolor("black")

# 创建小海龟
firework = turtle.Turtle()
firework.speed(0)
firework.color("white")
firework.shape("circle")

# 设置爆炸颜色
colors = ["red", "orange", "yellow", "green", "blue", "purple", "pink"]

# 定义爆炸函数
def explode(x, y):
    firework.penup()
    firework.goto(x, y)
    
    # 绘制喷泉效果
    for _ in range(25):
        firework.speed(0)
        firework.color(random.choice(colors))
        firework.width(random.randint(1, 3))
        firework.forward(20)
        firework.right(15)
        firework.backward(20)

# 设置点击事件
def click(x, y):
    explode(x, y)

# 监听点击事件
firework.onclick(click)

# 隐藏小海龟
firework.hideturtle()

# 显示画布
wn.mainloop()
```

### 2. 彩虹烟花

这个例子使用了 Python 的 turtle 模块和 colorsys 模块来实现图形绘制,通过控制小海龟的移动和绘制来模拟烟花在空中喷发时的彩虹效果。

```python
import turtle
import random
import colorsys

# 设置画布
wn = turtle.Screen()
wn.bgcolor("black")

# 创建小海龟
firework = turtle.Turtle()
firework.speed(0)
firework.color("white")
firework.shape("circle")

# 定义爆炸函数
def explode(x, y):
    firework.penup()
    firework.goto(x, y)

    # 绘制彩虹烟花
    for i in range(60):
        hue = i / 60.0
        rgb = colorsys.hsv_to_rgb(hue, 1, 1)
        r, g, b = [int(255 * c) for c in rgb]
        firework.color(r, g, b)
        firework.begin_fill()
        firework.circle(10)
        firework.end_fill()
        firework.right(6)

# 设置点击事件
def click(x, y):
    explode(x, y)

# 监听点击事件
firework.onclick(click)

# 隐藏小海龟
firework.hideturtle()

# 显示画布
wn.mainloop()
```

这两个例子都使用了 turtle 模块来实现图形绘制,其中第一个例子模拟了烟花喷泉的效果,第二个例子则模拟了烟花在空中喷发时的彩虹效果。你可以在本地环境中运行这些代码,观察烟花的动画效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值