国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

6.pygame圖片移動

這篇具有很好參考價值的文章主要介紹了6.pygame圖片移動。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言:我們在學習這節(jié)課的內(nèi)容前,先給出我們的示例圖片吧

pygame移動圖片,pygame,pygame,python
bird.png

?

上節(jié)課我們學習了把圖片繪制到屏幕上的函數(shù),上節(jié)課應該已經(jīng)猜到只要改變傳入的xy的參數(shù)即可。不過我們這節(jié)課主要學習改變rect對象來實現(xiàn)圖片移動。

?
blit(source, dest=(x, y), area=None, special_flags=0)

?

?對了!我們還要搭建程序框架呢!

?
#導入模塊
import pygame
import sys

class Game:
    def __init__(self):
        pygame.init()#在使用pygame之前要先初始化
        self.bird = pygame.image.load("bird.png")#導入bird.png圖片
        self.screen = pygame.display.set_mode((800, 600))#創(chuàng)建一個800*600的窗口
        pygame.display.set_caption("Game")#設置窗口標題為”Game“


    def Listen(self):#事件監(jiān)測
        for event in pygame.event.get():#事件監(jiān)測
            if event.type == pygame.QUIT:#點“X”號退出
                pygame.quit()
                sys.exit()

    def main(self):
        while True:#程序主循環(huán)
            self.Listen()#事件監(jiān)測
            self.screen.blit(self.bird, (400, 300))#將bird.png繪制的400,300的位置
            pygame.display.flip()#屏幕刷新

if __name__ == '__main__':
    game = Game()
    game.main()

?

?

我們先來講一下第一種比較簡單的方法吧:我們先在Game類的__init__的初始化的函數(shù)中添加一個自定義速度的變量和初始的x位置

self.speed = 5
self.x = 50

接著我們在Game類的main函數(shù)中的while循環(huán)中添加一個增加x的操作

self.x += 1

這樣的作用是在每次循環(huán)中增加1個像素。但是這樣還是不能改變圖片的位置,我們還要改變繪制方法。我們把Game類的main函數(shù)中的while循環(huán)中的blit函數(shù)改成

self.screen.blit(self.bird, (self.x, 300))

運行后你應該會看的如下

pygame移動圖片,pygame,pygame,python

?一只小鳥拖著尾跡向右邊移動。那是因為沒有刷新屏幕,我們要在Game類的main函數(shù)中的while循環(huán)中添加

self.screen.fill((0, 0, 0))

現(xiàn)在我們再運行

pygame移動圖片,pygame,pygame,python

現(xiàn)在正常了

我們給一下最終代碼

#導入模塊
import pygame
import sys

class Game:
    def __init__(self):
        pygame.init()#在使用pygame之前要先初始化
        self.bird = pygame.image.load("bird.png")#導入bird.png圖片
        self.screen = pygame.display.set_mode((800, 600))#創(chuàng)建一個800*600的窗口
        pygame.display.set_caption("Game")#設置窗口標題為”Game“
        self.speed = 5
        self.x = 50

    def Listen(self):#事件監(jiān)測
        for event in pygame.event.get():#事件監(jiān)測
            if event.type == pygame.QUIT:#點“X”號退出
                pygame.quit()
                sys.exit()

    def main(self):
        while True:#程序主循環(huán)
            self.x += 1
            self.Listen()#事件監(jiān)測
            self.screen.blit(self.bird, (self.x, 300))#將bird.png繪制的400,300的位置
            pygame.display.flip()#屏幕刷新
            self.screen.fill((0, 0, 0))
if __name__ == '__main__':
    game = Game()
    game.main()

方法2:?我們在Game類的__init__初始化函數(shù)中添加

self.bird_rect = self.bird.get_rect()

這個函數(shù)是用來求圖片的rect區(qū)域,其中沒有參數(shù)。再添加

self.bird_rect.center = (50, 300)

這個函數(shù)是用來設置圖片的初始位置,center代表中間做錨點,其他我就先不說了,想要拓展的可以自己去網(wǎng)上搜一下。

我們在我們要在Game類的main函數(shù)中的while循環(huán)中添加

self.bird_rect.move_ip(1, 0)

這個函數(shù)用來改變xy的位置,正數(shù)為加,負數(shù)為減。

move_ip(x, y)

我們把Game類的main函數(shù)中的while循環(huán)中的blit函數(shù)改成

self.screen.blit(self.bird, self.bird_rect)

運行一下

pygame移動圖片,pygame,pygame,python

我們最后給一下最終代碼

#導入模塊
import pygame
import sys

class Game:
    def __init__(self):
        pygame.init()#在使用pygame之前要先初始化
        self.bird = pygame.image.load("bird.png")#導入bird.png圖片
        self.screen = pygame.display.set_mode((800, 600))#創(chuàng)建一個800*600的窗口
        pygame.display.set_caption("Game")#設置窗口標題為”Game“
        self.bird_rect = self.bird.get_rect()
        self.bird_rect.center = (50, 300)

    def Listen(self):#事件監(jiān)測
        for event in pygame.event.get():#事件監(jiān)測
            if event.type == pygame.QUIT:#點“X”號退出
                pygame.quit()
                sys.exit()

    def main(self):
        while True:#程序主循環(huán)
            self.bird_rect.move_ip(1, 0)
            self.Listen()#事件監(jiān)測
            self.screen.blit(self.bird, self.bird_rect)#將bird.png繪制的400,300的位置
            pygame.display.flip()#屏幕刷新
            self.screen.fill((0, 0, 0))
if __name__ == '__main__':
    game = Game()
    game.main()

?下節(jié)預告:我們會學習pygame的Sprite

拜拜!文章來源地址http://www.zghlxwxcb.cn/news/detail-603146.html

到了這里,關于6.pygame圖片移動的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • python讀取vivo手機截圖,將滿屏圖片文件移動別的路徑

    python讀取vivo手機截圖,將滿屏圖片文件移動別的路徑

    問題之初 好多這樣的圖片,占用手機大量的內(nèi)存,食之無味棄之可惜!那么會復制粘貼??代碼的我們我們今天就把這些圖片篩選清理掉。 原有邏輯的基礎上,加入了一些有趣的注釋,以提升代碼的可讀性和娛樂性。希望您喜歡這個可愛又有趣的版本! 這個完整的 代碼可以

    2024年02月07日
    瀏覽(23)
  • 秒會Pygame:鍵盤移動和鼠標點擊移動物體的方法(含完整的代碼)

    秒會Pygame:鍵盤移動和鼠標點擊移動物體的方法(含完整的代碼)

    目錄 預備知識 鍵盤控制物體移動事件 鼠標點擊控制物體移動事件 鼠標移動的同時畫彩色小球 預備知識 pygame的基本函數(shù)介紹 1.初始化函數(shù),pygame的必備 ?pygame.init()?? 2.設置屏幕的大小 pygame.display.set_mode(size) //(長,寬) 3. 程序的命名 pygame.display.set_caption(\\\"string\\\") 4.屏幕的顏

    2023年04月08日
    瀏覽(21)
  • 使用pygame讓方向鍵實現(xiàn)角色的移動和轉(zhuǎn)向

    pygame小魚 transform.flip(Surface,xbool,ybool)可以將圖片進行翻轉(zhuǎn),返回一個新圖像 Surface:需要翻轉(zhuǎn)的圖像 xbool:是否水平翻轉(zhuǎn),True/False ybool:是否垂直翻轉(zhuǎn),True/False

    2024年02月04日
    瀏覽(21)
  • pygam第2課——pygame加載圖片

    pygam第2課——pygame加載圖片

    2024年02月03日
    瀏覽(13)
  • Pygame中實現(xiàn)圖片旋轉(zhuǎn)

    Pygame中實現(xiàn)圖片旋轉(zhuǎn)

    在Pygame中實現(xiàn)圖片的移動_pygame實現(xiàn)圖片移動-CSDN博客中我們實現(xiàn)了一個移動的大猩猩,接下來在該程序的基礎上實現(xiàn)大猩猩圖片的旋轉(zhuǎn),也就是點擊了鼠標后,大猩猩旋轉(zhuǎn)一周,之后繼續(xù)移動。 首先為Chimp類也就是大猩猩類添加旋轉(zhuǎn)的方法,代碼如圖1所示。 圖1 Chimp類的旋轉(zhuǎn)

    2024年02月03日
    瀏覽(23)
  • pygame如何添加背景圖片

    Pygame可以使用pygame.image模塊來添加背景圖片,方法如下: 使用pygame.image.load( )加載圖片; 使用pygame.transform.scale( )縮放圖片; 使用pygame.display.set_mode( )創(chuàng)建一個新的顯示窗口; 使用pygame.display.get_surface( )獲取窗口表面; 使用pygame.display.update( )更新窗口表面; 使用pygame.display

    2024年02月11日
    瀏覽(25)
  • 【Pygame 學習筆記】3.導入圖片并繪制

    【Pygame 學習筆記】3.導入圖片并繪制

    上一篇文章,我們講解了如何用Pygame繪制圖形,這篇文章,我們來講解Pygame如何引入圖片 這篇文章需要用到的素材: 0.png 我們創(chuàng)建一個resources文件夾,處于python文件的同一目錄下,將圖片存儲于該文件夾中。? 先給出Pygame框架的基本代碼 首先,我們要創(chuàng)建一個path常量,指向

    2024年02月16日
    瀏覽(16)
  • pygame中將圖片填充到適合顯示屏幕大小

    ? ? ? ? 在pygame中顯示背景圖片時有時候會出現(xiàn)背景圖片與顯示屏幕大小不一的情況,這個程序應該能幫到你。?

    2024年02月06日
    瀏覽(21)
  • 最新版pygame無法顯示圖片問題解決方法

    最新版pygame無法顯示圖片問題解決方法

    Hi~ o(* ̄▽ ̄*)ブ新人第一次寫文章,可能比較差,不喜勿噴哦 最近在使用最新版的pygame時遇到了一個問題,當我使用常規(guī)的顯示圖片代碼時,這圖片不知道怎么肥四顯示不出來了 下面是運行結果 好吧,什么都顯示不出來 一開始我整個人都懵了,以為是blit那里出錯了。然后

    2024年02月04日
    瀏覽(20)
  • chatgpt生成pygame opengl實現(xiàn)旋轉(zhuǎn)用圖片填充的3d三角形

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包