溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用python實現(xiàn)月食效果

發(fā)布時間:2021-04-07 10:07:15 來源:億速云 閱讀:399 作者:小新 欄目:開發(fā)技術

小編給大家分享一下如何使用python實現(xiàn)月食效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

第一步:先打開我們的pycharm軟件,然后新建一個Python文件

如何使用python實現(xiàn)月食效果

第二步:新建好我們的文件之后,我們在編輯界面輸入以下代碼:

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

  #消息事件循環(huán),判斷退出
  for event in pygame.event.get(): # 獲得一個事件的列表
    if event.type == pygame.QUIT: #如果事件類型,退出
      sys.exit() #安全退出
  pygame.display.update() #刷新畫面

如何使用python實現(xiàn)月食效果

第三步:編寫好我們的代碼之后,我們點擊鼠標右鍵或者同事按住Ctrl+shift+F10進行代碼的運行編譯

如何使用python實現(xiàn)月食效果

第四步:這時候我們就可以看到效果了,由于這里我的月食遮罩是以X軸為運動方向移動,進行月食效果的,所以它的月食軌跡是緩慢運行的

如何使用python實現(xiàn)月食效果

如何使用python實現(xiàn)月食效果

如何使用python實現(xiàn)月食效果

第五步:在這次代碼中,我們共用到了三張圖片,一個是全黑色的遮罩,注意這個遮罩的大小要與我們的窗體屏幕大小一致或者更大,這樣才能夠完全遮住,而且在這里使用的圖片都是透明背景的圖片

如何使用python實現(xiàn)月食效果

如何使用python實現(xiàn)月食效果

如何使用python實現(xiàn)月食效果

第六步:很多人都不太清楚自己在制作圖片時,為什么總是不是透明圖層,注意:在對圖片處理時,之后后綴為.png的圖片才具有透明效果,如果本來你在處理時時透明背景,結果保存到使用時卻不是透明圖層,這可能是你保存的格式不對,注意檢查一下

如何使用python實現(xiàn)月食效果

第七步:以上就是我實現(xiàn)的月食效果,每一行都進行了注釋,希望對你們有所幫助。這次是實現(xiàn)的月食效果總代碼量都用不到40行,可以說是非常少了*_*,大家沒事可以自己操作試試看,有不足之處大家多多見諒啦

如何使用python實現(xiàn)月食效果

以上是“如何使用python實現(xiàn)月食效果”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI