python实现月食效果实例代码


Posted in Python onJune 18, 2019

我们在学习Python当中的pygame模块时,我们都知道我们可以通过使用 pygame模块实现很多功能性的东西,但是很多人应该不知道怎么通过使用pygame实现月食的效果吧,接下来我就教大家如何利用pygame模块实现月食的效果吧,总代码量都用不到40行代码就可以实现哦,希望对你们有所帮助

第一步:先打开我们的pycharm软件,然后新建一个Python文件

python实现月食效果实例代码

第二步:新建好我们的文件之后,我们在编辑界面输入以下代码:

import pygame
import sys #导入模块

#设置窗体图形界面
screen=pygame.display.set_mode((700,500)) #设置窗体的屏幕宽高,screen变量接收屏幕
pygame.display.set_caption("吴秀柔 16级计科2班") #设置窗体的标题

#月亮
moonImage='image/moon.png' #定位图片
moon=pygame.image.load(moonImage) #加载图片

#地球阴影
earthshadowImage='image/blackMoon.png' #定位图片
earthshadow=pygame.image.load(earthshadowImage) #加载图片

#覆盖轨迹的背景
backgroundImage='image/blackBG.png' #定位图片
background=pygame.image.load(backgroundImage) #加载图片
x=450 #初始化位置,以X轴为移动方向
#绘制图片在窗体上
while True:
  screen.blit(background,(0,0)) #用来覆盖地球走的路径
  screen.blit(moon,(100,100)) #月亮所在的位置
  screen.blit(earthshadow,(x,100)) #地球阴影运行的初始位置
  if x<=0: #地球阴影移动的动作
    x+=1
  else:
    x-=1

  #消息事件循环,判断退出
  for event in pygame.event.get(): # 获得一个事件的列表
    if event.type == pygame.QUIT: #如果事件类型,退出
      sys.exit() #安全退出
  pygame.display.update() #刷新画面

python实现月食效果实例代码

第三步:编写好我们的代码之后,我们点击鼠标右键或者同事按住Ctrl+shift+F10进行代码的运行编译

python实现月食效果实例代码

第四步:这时候我们就可以看到效果了,由于这里我的月食遮罩是以X轴为运动方向移动,进行月食效果的,所以它的月食轨迹是缓慢运行的

python实现月食效果实例代码

python实现月食效果实例代码

python实现月食效果实例代码

第五步:在这次代码中,我们共用到了三张图片,一个是全黑色的遮罩,注意这个遮罩的大小要与我们的窗体屏幕大小一致或者更大,这样才能够完全遮住,而且在这里使用的图片都是透明背景的图片

python实现月食效果实例代码

python实现月食效果实例代码

python实现月食效果实例代码

第六步:很多人都不太清楚自己在制作图片时,为什么总是不是透明图层,注意:在对图片处理时,之后后缀为.png的图片才具有透明效果,如果本来你在处理时时透明背景,结果保存到使用时却不是透明图层,这可能是你保存的格式不对,注意检查一下

python实现月食效果实例代码

第七步:以上就是我实现的月食效果,每一行都进行了注释,希望对你们有所帮助。这次是实现的月食效果总代码量都用不到40行,可以说是非常少了*_*,大家没事可以自己操作试试看,有不足之处大家多多见谅啦

python实现月食效果实例代码

Python 相关文章推荐
Python基于回溯法子集树模板解决找零问题示例
Sep 11 Python
神经网络理论基础及Python实现详解
Dec 15 Python
python排序函数sort()与sorted()的区别
Sep 18 Python
Python学习笔记之视频人脸检测识别实例教程
Mar 06 Python
如何使用Python多线程测试并发漏洞
Dec 18 Python
浅析Python 多行匹配模式
Jul 24 Python
Pandas替换及部分替换(replace)实现流程详解
Oct 12 Python
Python实现冒泡排序算法的完整实例
Nov 04 Python
python爬虫工具例举说明
Nov 30 Python
全面介绍python中很常用的单元测试框架unitest
Dec 14 Python
python数据抓取3种方法总结
Feb 07 Python
详解Django中 render() 函数的使用方法
Apr 22 Python
详解Python3中setuptools、Pip安装教程
Jun 18 #Python
Python生成指定数量的优惠码实操内容
Jun 18 #Python
python实现文件的备份流程详解
Jun 18 #Python
python绘制地震散点图
Jun 18 #Python
python f-string式格式化听语音流程讲解
Jun 18 #Python
python实现雪花飘落效果实例讲解
Jun 18 #Python
python地震数据可视化详解
Jun 18 #Python
You might like
一个查看session内容的函数
2006/10/09 PHP
PHP编码转换函数 自动转换字符集支持数组转换
2012/12/16 PHP
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
CI框架AR数据库操作常用函数总结
2016/11/21 PHP
在网页中屏蔽快捷键
2006/09/06 Javascript
IE中jscript/javascript的条件编译
2006/09/07 Javascript
jquery animate 动画效果使用说明
2009/11/04 Javascript
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
js下判断 iframe 是否加载完成的完美方法
2010/10/26 Javascript
JS+CSS实现可以凹陷显示选中单元格的方法
2015/03/02 Javascript
DOM事件阶段以及事件捕获与事件冒泡先后执行顺序(图文详解)
2015/08/18 Javascript
javascript bom是什么及bom和dom的区别
2015/11/26 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
ES6生成器用法实例分析
2017/04/10 Javascript
微信小程序 本地数据存储实例详解
2017/04/13 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
2017/07/11 Javascript
Vue数据双向绑定原理及简单实现方法
2018/05/18 Javascript
如何在JavaScript中优雅的提取循环内数据详解
2019/03/04 Javascript
JavaScript将数组转换为链表的方法
2020/02/16 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
Python使用htpasswd实现基本认证授权的例子
2014/06/10 Python
跟老齐学Python之赋值,简单也不简单
2014/09/24 Python
python计算方程式根的方法
2015/05/07 Python
Python判断文件或文件夹是否存在的三种方法
2017/07/27 Python
Python发送邮件实现基础解析
2020/08/14 Python
python3定位并识别图片验证码实现自动登录功能
2021/01/29 Python
阿拉伯世界最大的电子商务网站:Souq沙特阿拉伯
2016/10/28 全球购物
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
系统管理员的职责包括那些?管理的对象是什么?
2013/01/18 面试题
软件测试面试题
2014/01/05 面试题
大学运动会加油稿200字(5篇)
2014/09/27 职场文书
2015年会计个人工作总结
2015/04/02 职场文书
党员转正大会主持词
2015/07/02 职场文书
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技