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

Pygame?精準(zhǔn)檢測圖像碰撞的問題

 更新時(shí)間:2022年06月28日 11:13:25   作者:Leleprogrammer  
這篇文章主要介紹了Pygame?精準(zhǔn)檢測圖像碰撞,在用Pygame寫游戲的時(shí)候,有人可能會(huì)遇到兩個(gè)Rect對(duì)象碰撞但是對(duì)象之間還有空間間隔的問題,這里,將教大家用一種方法精準(zhǔn)地檢測圖像碰撞,需要的朋友可以參考下

在用Pygame寫游戲的時(shí)候,有人可能會(huì)遇到兩個(gè)Rect對(duì)象碰撞但是對(duì)象之間還有空間間隔的問題,這里,將教大家用一種方法精準(zhǔn)地檢測圖像碰撞。

假設(shè)我們有兩個(gè)圖像(類型為Surface):surface1,surface2

首先,獲得這兩個(gè)surface對(duì)象的rect:

rect1=surface1.get_rect()
rect2=surface2.get_rect()

然后,獲取它們對(duì)應(yīng)的mask對(duì)象,用pygame.mask.from_surface()方法,使用如下:

pygame.mask.from_surface(surface)

填入的是Surface對(duì)象,返回Mask對(duì)象

代碼如下:

mask1=pygame.mask.from_surface(surface1)
mask2=pygame.mask.from_surface(surface2)

接下來,進(jìn)行碰撞檢測,我們需要用到overlap方法,使用如下:

mask.overlap(other,offset)

mask是一個(gè)Mask對(duì)象

other是另外一個(gè)Mask對(duì)象

offset是一個(gè)元組,元組中分別為兩個(gè)rect的x坐標(biāo)插值和y坐標(biāo)插值

返回值有兩種,如果是一個(gè)元組就說明已經(jīng)碰撞,如果為None就說明沒有碰撞

代碼如下:

offset=abs(rect1.x-rect2.x),abs(rect1.y-rect2.y)
if rect1.overlap(rect2,offset)!=None: # 已經(jīng)碰撞
    print("已經(jīng)碰撞")

以上代碼只是示例,可供參考,命名不需要和上方一致,符合命名規(guī)范就行

到此這篇關(guān)于Pygame 精準(zhǔn)檢測圖像碰撞的文章就介紹到這了,更多相關(guān)Pygame 檢測碰撞內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白

    利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白

    馬上520了,教大家用Python做一個(gè)下愛心雨的特效,這篇文章主要給大家介紹了關(guān)于利用python實(shí)現(xiàn)全屏愛心雨向喜歡的人表白的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • python編程使用PyQt創(chuàng)建UE藍(lán)圖

    python編程使用PyQt創(chuàng)建UE藍(lán)圖

    這篇文章主要為大家介紹了python編程中如何使用PyQt創(chuàng)建UE藍(lán)圖的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-10-10
  • Python數(shù)據(jù)清洗&預(yù)處理入門教程

    Python數(shù)據(jù)清洗&預(yù)處理入門教程

    凡事預(yù)則立,不預(yù)則廢,訓(xùn)練機(jī)器學(xué)習(xí)模型也是如此。數(shù)據(jù)清洗和預(yù)處理是模型訓(xùn)練之前的必要過程,否則模型可能就廢了。本文是一個(gè)初學(xué)者指南,將帶你領(lǐng)略如何在任意的數(shù)據(jù)集上,針對(duì)任意一個(gè)機(jī)器學(xué)習(xí)模型,完成數(shù)據(jù)預(yù)處理工作
    2022-10-10
  • python實(shí)現(xiàn)跨年表白神器--你值得擁有

    python實(shí)現(xiàn)跨年表白神器--你值得擁有

    這篇文章主要介紹了python實(shí)現(xiàn)跨年表白神器的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-01-01
  • Python?實(shí)操顯示數(shù)據(jù)圖表并固定時(shí)間長度

    Python?實(shí)操顯示數(shù)據(jù)圖表并固定時(shí)間長度

    這篇文章主要介紹了Python?實(shí)操顯示數(shù)據(jù)圖表并固定時(shí)間長度,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Python制作簡易版2048小游戲

    Python制作簡易版2048小游戲

    2048作為經(jīng)典的手機(jī)端游戲一直深受大家的喜愛,本文將利用Python中的Pygame模塊制作簡單版的2048游戲,感興趣的小伙伴可以了解一下
    2022-07-07
  • Python使用zip合并相鄰列表項(xiàng)的方法示例

    Python使用zip合并相鄰列表項(xiàng)的方法示例

    這篇文章主要介紹了Python使用zip合并相鄰列表項(xiàng)的方法,涉及zip、iter函數(shù)合并相鄰列表項(xiàng)、切片等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • 解決python腳本中error: unrecognized arguments: True錯(cuò)誤

    解決python腳本中error: unrecognized arguments: True錯(cuò)誤

    這篇文章主要介紹了解決python腳本中error: unrecognized arguments: True錯(cuò)誤,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python讀取文件列表并排序的實(shí)現(xiàn)示例

    python讀取文件列表并排序的實(shí)現(xiàn)示例

    本文主要介紹了python讀取文件列表并排序的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • python 爬取英雄聯(lián)盟皮膚并下載的示例

    python 爬取英雄聯(lián)盟皮膚并下載的示例

    這篇文章主要介紹了python 爬取英雄聯(lián)盟皮膚并下載的示例,幫助大家更好的理解和學(xué)習(xí)使用python 爬蟲,感興趣的朋友可以聊繼續(xù)
    2020-12-12

最新評(píng)論