欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pygame實現煙雨蒙蒙下彩虹雨

 更新時間:2019年11月11日 16:52:34   作者:HelloWorld!  
這篇文章主要為大家詳細介紹了pygame實現煙雨蒙蒙下彩虹雨,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

學習了一天的深度學習,略有疲憊,我們用pygame搞個小游戲放松放松吧。今天我們的游戲主體是煙雨蒙蒙下彩虹雨,仿佛置身江南水鄉(xiāng)。

游戲描述

我們希望看到江南水鄉(xiāng)下起彩虹雨。這里背景是江南水鄉(xiāng),煙雨蒙蒙,雨滴顏色五顏六色,大小不一。

解決思路

煙雨蒙蒙彩虹雨的意思很明確,有幾個主要元素,那就是煙雨蒙蒙,彩虹雨滴,下雨幾個元素和動作。那么,基本思路如下

1.找一張江南水鄉(xiāng)煙雨蒙蒙的圖片作為背景
2.用圓圈代表雨滴,并把圓圈的大小,顏色進行隨機設置,出現五彩斑斕的效果。
3.下雨,即雨滴從上而下持續(xù)不斷的落下,這就需要pygame里把圓圈放在不同的坐標下繪制出來。

代碼實現

具體的實現代碼如下:

import pygame
import random
pygame.init()
#加載圖片
pic=pygame.image.load('raining.jpg')
#獲取圖片的長寬
screen_width=pic.get_width()
screen_height=pic.get_height()
#根據圖片大小來設置屏幕大小
screen=pygame.display.set_mode([screen_width,screen_height])
#設置彩虹雨的雨滴個數,顏色,位置,大小,落下的速度
numbers=50
colors=[0]*numbers
location_x=[0]*numbers
location_y=[0]*numbers
sizes=[0]*numbers
speed=[0]*numbers
#初始化彩虹雨滴
for i in range(numbers):
 colors[i]=(random.randint(0,255),random.randint(0,255),random.randint(0,255))
 location_x[i]=random.randint(0,screen_width)
 location_y[i]=-random.randint(0,screen_height)
 sizes[i]=random.randint(5,20)
 speed[i]=random.randint(1,5)

keep_going=True
#用Clock實現來控制動畫的速度
timer=pygame.time.Clock()

while keep_going:
 for event in pygame.event.get(): #監(jiān)聽事件
 if event.type==pygame.QUIT:
  keep_going=False
 #把圖片繪制到屏幕
 screen.blit(pic,(0,0))
 for i in range(numbers):
 pygame.draw.circle(screen,colors[i],(location_x[i],location_y[i]),sizes[i]) #讓雨滴畫在屏幕上
 location_y[i]=location_y[i]+speed[i]   #雨滴落下,y軸方向

 if location_y[i]>screen_height:    #如果雨滴落到看不見,即超出屏幕的高度
  location_y[i]-=screen_height   #重新設置雨滴的參數
  location_x[i]=random.randint(0,screen_width)
  speed[i] = random.randint(1, 5)
 timer.tick(100)# timer每秒鐘滴答100次,因此幀率為100fps
 pygame.display.update() #刷新屏幕

pygame.quit()

效果展示

運行可以看到下圖,還是有點那個意思的,靜靜地看著五彩斑斕的雨滴落下,一身的疲憊也減輕了不少。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Tensorflow 實現釋放內存

    Tensorflow 實現釋放內存

    今天小編就為大家分享一篇Tensorflow 實現釋放內存,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Django admin實現圖書管理系統(tǒng)菜鳥級教程完整實例

    Django admin實現圖書管理系統(tǒng)菜鳥級教程完整實例

    這篇文章主要介紹了Django admin實現圖書管理系統(tǒng)菜鳥級教程完整實例,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • 詳細解讀Python字符串的使用與f-string

    詳細解讀Python字符串的使用與f-string

    這篇文章主要介紹了詳細解讀Python字符串的使用與f-string,在?Python?中,引號內的任何內容都是字符串,但是字符串也有很多的用法,需要的朋友一起來看看吧
    2023-04-04
  • python學習之whl文件解釋與安裝詳解

    python學習之whl文件解釋與安裝詳解

    whl格式本質上是一個壓縮包,里面包含了py文件,以及經過編譯的pyd文件,下面這篇文章主要給大家介紹了關于python學習之whl文件解釋與安裝的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • Python接口測試之如何使用requests發(fā)起請求

    Python接口測試之如何使用requests發(fā)起請求

    這篇文章主要介紹了Python接口測試之如何使用requests發(fā)起請求問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python下opencv庫的安裝過程及問題匯總

    Python下opencv庫的安裝過程及問題匯總

    本文主要內容是python下opencv庫的安裝過程,涉及我在安裝時遇到的問題,并且,將從網上搜集并試用的一些解決方案進行了簡單的匯總,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 解決更改AUTH_USER_MODEL后出現的問題

    解決更改AUTH_USER_MODEL后出現的問題

    這篇文章主要介紹了解決更改AUTH_USER_MODEL后出現的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python selenium實現斷言3種方法解析

    Python selenium實現斷言3種方法解析

    這篇文章主要介紹了Python selenium實現斷言3種方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • Python中不同進制的語法及轉換方法分析

    Python中不同進制的語法及轉換方法分析

    這篇文章主要介紹了Python中不同進制的語法及轉換方法,結合實例形式分析了Python不同進制的表示方法及相互轉換方法,需要的朋友可以參考下
    2016-07-07
  • 深入淺析python繼承問題

    深入淺析python繼承問題

    這篇文章主要介紹了深入淺析python繼承問題的相關資料,非常不錯,感興趣的朋友一起看看吧
    2016-05-05

最新評論