第16章pygame图形高级图形_第1页
第16章pygame图形高级图形_第2页
第16章pygame图形高级图形_第3页
第16章pygame图形高级图形_第4页
第16章pygame图形高级图形_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

pygame安装,pygame1.9.3下载地址:/gohlke/pythonlibs/#pygame,python要先安装pip,这个pip相当于苹果手机的appstore,专门用来安装python的扩展库。python3.6已经集成pip了,在cmd中输入pip,会出现如下图所示。所以这个无需安装了。,下载对应的版本之后,然后通过cmd,在通过cddestop转到whl文件所在的目录(这里放到了桌面上)然后输入安装口令:pipinstallpygame-1.9.4-cp37-cp37m-win_amd64.whl,然后通过在Python中importpygame如果不报错说明安装成功,如果报错需要配置python变量。,上面代表电脑是32位还是64位,37代表Python软件的版本,下载对应的版本。,创建pygame窗口我们要绘制一副图,首先要创建一个pygame的窗口,如何创建pygame窗口呢?首先我们要理解什么是pygame,pygame是python的第三方库,我们要使用它首先我们要将其导入。importpygame接下来我们要怎么做呢?没有思路是吧,那么我们打开pygame的开发文档,我们想要的所有信息都在这里面。看过之后大家就会明白它其实是初始化所有模块。pygame.init()这上面是做的前期准备工作,接下来我们就要显示窗口,如何显示窗口,我们继续参考文档,以上是教会同学们一种编程方法,能够随机应变。我本身是能力的传授者不是知识的灌输着。我们继续浏览文档:视频中老师会带领大家如何阅读和使用文档,阅读完之后你就会发现我们接下来要使用Screen=pygame.display.set_mode()以及set_mode(resolution=(0,0),flags=0,depth=0)三个参数所表达的意思,Pygame窗口,参考文档地址:/docs/ref/pygame.html,如何关闭pygame窗口你已经学会如何创建一个游戏开发的最小框架,并且你会发现一个问题,界面无法关闭,究竟是什么原因呢?当你点击关闭的时候pygame没有响应这个事件,什么是事件呢?在编程中当我们敲击键盘,点击鼠标对于软件来说都称为是事件。明白了时间之后呢,需要我们创建一个循环实时侦测鼠标点击了关闭按钮,如果点击了关闭按钮就关闭程序。whileTrue#这是一个死循环,你也可以理解为它是一个主循环foreventinpygame.event.get():ifevent.type=pygame.QUIT:#判断时间类型,是否为QUITpygame.quit()#关闭pygame程序sys.exit()#关闭整个程序,关闭窗口,如何在窗口中绘图呢?现在我们已经可以创建一个窗口,并且可以使用事件循环关闭它,我们要在窗口中绘图应该怎样做呢?我们将在窗口中绘制一个圆形,怎样绘制呢?继续打开pygame文档。importpygame,syspygame.init()screen=pygame.display.set_mode(800,600)screen.fill(255,255,0)while1:foreventinpygame.event.get():print(event)ifevent.type=pygame.QUIT:pygame.quit()sys.exit()#画圆pygame.draw.circle(screen,(200,3,4),(100,100),10,1)pygame.display.flip(),窗口绘图,现在你应该知道如何使用pygame绘制一个矩形赶快尝试绘制一个吧,绘制图像原理讲解,pygame库文件第三方提供,有一定特定功能的函数库,是一个图像类,从某一个文件夹在图像图像必须和py文件在同一个目录下。,Surface:包含所有的图像,这是一个png图像,png图像就是边缘是透明的,这是一般的图像,Screen,我们就指这个屏幕,我们可以创建这个对象,如果我们需要其他的图像展示的话,需要使用blit(绘画)将这个图像绘制上去才能看到。,什么是像素?像素是指由图像的小方格组成的,这些小方块都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。,像素,像素中每一个颜色块都是一个(r,g,b),网格代表电脑的像素,实际中电脑中的网格像素是不存在的长和宽的像素越大代表着图像越细腻,图像中的像素和电脑屏幕中的像素是一一对应的关系。所以图像像素越大,它在屏幕上的显示越大。,像素,屏幕大小:比如:640 x4801600 x1200,(100,100),(100+bujin,100+bujin),如何在screen中绘制两个球?我们使用两次blit()函数就行,接着老师会给大家举一个例子。如果我们将第一个小球擦除,我们能否看成第二个小球是第一个小球位置的移动呢?在计算机做动画时,移动一个东西要完成两个步骤:1.在新的位置上画出图形;2.把原来的图形擦掉。,让小球动起来,让小球动起来,原点(0,0),x,y,位置点(100,200),小球移动的算法?我们已经知道了小球移动的底层原理,有很多角色的移动都是基于这个底层来实现的,我们可以根据小球移动的原理将小球移动的代码设计出来。然后在进行封装,下次有其他角色要使用移动的话就可以直接拿来用,当我们了解最底层的原理之后,用就是一件非常简单的事情,有些机构和个人不会讲解这些底层的知识,因为他们图快,这样学生学起来虽然能达到同样的目的,但是你要比别人理解的更加深入,用起来也会觉的更加简单。,小球移动的算法,算法也非常简单,就是绘制一个矩形覆盖前一个图像就行,前一个图像的坐标减去步进值就行了。#设置x,y的值x=10y=10 x_bujin=1y_bujin=2pygame.draw.rect(screen,(234,43,56),(x-x_bujin,y-y_bujin,50,50),0)#绘制矩形,请参考示例代码:move_demo.py,让小球反弹的算法,screen.blit(ball_img,(x,y),x=x+x_bujiny=y+y_bujin,x_bujin=1y_bujin=2,whileTtue:,原点(0,0),y增量为负,y增量为负,x=screen.get_width(),y=screen.get_height()oryscreen.get_height()-小球的高度,x=0orxscreen.get_width()-小球的高度

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论