写一段绘制贝塞尔曲线的代码
时间: 2023-12-01 10:53:07 浏览: 111
实现动态绘制贝塞尔(bezier)曲线的代码.rar_VB 曲线 动态_VB 貝塞爾 代碼_vb 动态曲线_动态Bezier曲线
以下是一个简单的 Python 代码段,它使用 Pygame 库绘制二次贝塞尔曲线:
```python
import pygame
# 初始化 Pygame 库
pygame.init()
# 创建 Pygame 窗口
screen = pygame.display.set_mode((640, 480))
# 定义贝塞尔曲线的控制点
p0 = (50, 100)
p1 = (100, 250)
p2 = (500, 100)
# 绘制贝塞尔曲线
for t in range(0, 101, 1):
t = t / 100.0
x = int((1-t)**2 * p0[0] + 2 * (1-t) * t * p1[0] + t**2 * p2[0])
y = int((1-t)**2 * p0[1] + 2 * (1-t) * t * p1[1] + t**2 * p2[1])
pygame.draw.circle(screen, (0,0,255), (x, y), 2)
# 更新 Pygame 窗口
pygame.display.flip()
# 等待退出
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
exit()
```
该代码使用了三个点(p0, p1, p2)来定义二次贝塞尔曲线。通过遍历 0-1 之间的 t 值,来计算出曲线上的每一个点的位置。最后使用 Pygame 库的 `pygame.draw.circle()` 函数在窗口中绘制每个点。
阅读全文