用python和pygame游戏编程入门-画图,python简单绘图代码,
用python和pygame游戏编程入门-画图,python简单绘图代码,
上一节中介绍了各种用于画图的函数,为了进一步加深印象,我们通过一个实例来把这些功能整合到一起。
#!/usr/bin/env pythonimport pygamefrom pygame.locals import *from sys import exitfrom random import *from math import pipygame.init()screen = pygame.display.set_mode((640, 480), 0, 32)points = []while True: for event in pygame.event.get(): if event.type == QUIT: exit() if event.type == KEYDOWN: # 按c键可以清屏并把点回复到原始状态 print(event.key) if event.key == K_c: points = [] screen.fill((255,255,255)) if event.type == MOUSEBUTTONDOWN: screen.fill((255,255,255)) # 画随机矩形 rc = (randint(0,255), randint(0,255), randint(0,255)) rp = (randint(0,639), randint(0,479)) rs = (639-randint(rp[0], 639), 479-randint(rp[1], 479)) pygame.draw.rect(screen, rc, Rect(rp, rs)) # 画随机圆形 rc = (randint(0,255), randint(0,255), randint(0,255)) rp = (randint(0,639), randint(0,479)) rr = randint(1, 200) pygame.draw.circle(screen, rc, rp, rr) # 获得当前鼠标点击位置 x, y = pygame.mouse.get_pos() points.append((x, y)) # 根据点击位置画弧线 angle = (x/639.)*pi*2. pygame.draw.arc(screen, (0,0,0), (0,0,639,479), 0, angle, 3) # 根据点击位置画椭圆 pygame.draw.ellipse(screen, (0, 255, 0), (0, 0, x, y)) # 从左上和右下画两根线连接到点击位置 pygame.draw.line(screen, (0, 0, 255), (0, 0), (x, y)) pygame.draw.line(screen, (255, 0, 0), (640, 480), (x, y)) # 画点击轨迹图 if len(points) > 1: pygame.draw.lines(screen, (155, 155, 0), False, points, 2) for p in points: pygame.draw.circle(screen, (155, 155, 155), p, 3) pygame.display.update()
运行这个程序,在上面点鼠标就会有图形出来了;按c键可以重新开始。另外这个程序只是各个命令的堆砌,主要是为了让大家能够理解和很好的使用各个函数。
下次开始我们学习游戏中的动画制作。
本站内容未经许可,禁止任何网站及个人进行转载。
相关内容
- 记一次Python Web接口优化,性能提升25倍!,接口性能优
- 什么是Python Wheels?为什么要关心它?,python有什么用
- 这5个Python库太难搞!每位数据科学家都应该了解,闪婚
- Python:就喜欢看你看不惯我又干不掉我的样子,看不惯
- Python 为什么能支持任意的真值判断?,卡方值与p值对
- 7月份Github上热门的Python开源项目,月份和日期哪个在上
- Python语言的应用领域主要有哪些?,编程语言应用领域
- Python 去掉日期的前导0,手机照片日期怎么去掉,今天发
- “==”和“is”有什么区别?一个问题就能暴露你的Py
- 5分钟内搭建你的第一个Python聊天机器人,最智能的聊天
评论关闭