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调用C/C++动态链接库的方法详解
Jul 22 Python
Python中的index()方法使用教程
May 18 Python
python简单文本处理的方法
Jul 10 Python
Python中的集合类型知识讲解
Aug 19 Python
python微信跳一跳系列之色块轮廓定位棋盘
Feb 26 Python
python生成密码字典的方法
Jul 06 Python
Python爬虫之网页图片抓取的方法
Jul 16 Python
Python使用itchat 功能分析微信好友性别和位置
Aug 05 Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
Jun 22 Python
python 写一个水果忍者游戏
Jan 13 Python
解决jupyter notebook图片显示模糊和保存清晰图片的操作
Apr 24 Python
Python作用域和名称空间的详细介绍
Apr 13 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
弄了个检测传输的参数是否为数字的Function
2006/12/06 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
2014/08/23 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
yii2.0实现pathinfo的形式访问的配置方法
2016/04/06 PHP
php+ajax+json 详解及实例代码
2016/12/12 PHP
Javascript document.referrer判断访客来源网址
2020/05/15 Javascript
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
javascript实现修改微信分享的标题内容等
2014/12/11 Javascript
javascript获取四位数字或者字母的随机数
2015/01/09 Javascript
js支持键盘控制的左右切换立体式图片轮播效果代码分享
2015/08/26 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
微信小程序 wxapp画布 canvas详细介绍
2016/10/31 Javascript
jquery实现简单的瀑布流布局
2016/12/11 Javascript
Angular.js中处理页面闪烁的方法详解
2017/03/09 Javascript
详解nodejs爬虫程序解决gbk等中文编码问题
2017/04/06 NodeJs
jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
2017/10/19 jQuery
详解处理Vue单页面应用SEO的另一种思路
2018/11/09 Javascript
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
基于layui的下拉列表的数据回显方法
2019/09/24 Javascript
原生JS实现多条件筛选
2020/08/19 Javascript
Python2.7读取PDF文件的方法示例
2017/07/13 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
详解PyCharm安装MicroPython插件的教程
2019/06/24 Python
Flask配置Cors跨域的实现
2019/07/12 Python
python输出pdf文档的实例
2020/02/13 Python
python 基于Apscheduler实现定时任务
2020/12/15 Python
Waterford美国官网:爱尔兰水晶制品品牌
2017/04/26 全球购物
亚马逊巴西站:Amazon.com.br
2019/09/22 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
超市业务员岗位职责
2013/12/05 职场文书
通知函格式范文
2015/04/27 职场文书
公司晚宴祝酒词
2015/08/11 职场文书
Python通过m3u8文件下载合并ts视频的操作
2021/04/16 Python
Rust 连接 PostgreSQL 数据库的详细过程
2022/01/22 PostgreSQL
海贼王十大逆天果实 魂魂果实上榜,岩浆果实攻击力最强
2022/03/18 日漫
Python经常使用的一些内置函数
2022/04/11 Python