五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

中文編程pygame游戲教程4_區(qū)塊定位

2023-08-23 09:56 作者:52中文編程  | 我要投稿

區(qū)塊(Rect)是圖形編程中非常有用的對象。 它在 Pygame 中有自己的類區(qū)塊類,能夠存儲和操作矩形區(qū)域的位置信息。 可以通過提供以下內(nèi)容來創(chuàng)建對象:

  • 左、頂、寬、高4個參數(shù)

  • 位置和大小

  • 具有 rect 屬性的對象

新建一個區(qū)塊對象可以使用上面的任一個寫法. 對于表層對象, 可以直接用獲取區(qū)塊的方法獲取默認的位置信息(默認坐標是0,0)
例如, 第2課移動的小球的區(qū)塊用下面的代碼獲取區(qū)塊對象不需要新建, 利用區(qū)塊對象可以方便的定位小球的位置到屏幕的中心.

虛擬屬性

Rect 對象有幾個可以使用的虛擬屬性用來移動和對齊區(qū)塊。 分配給這些屬性只是移動區(qū)塊的位置而不更改其大?。?/p>

x, y
頂(top), 左(left), 底(bottom), 右(right)
頂左(topleft), 底左(bottomleft), 頂右(topright), 底右(bottomright)
中頂(midtop), 中左(midleft), 中底(midbottom), 中右(midright)
中心(center), 中心x(centerx), 中心y(centery)

下面的屬性的分配通過保持區(qū)塊的左上角位置來更改區(qū)塊的大小。
尺寸(size), 寬度(width), 高度(height)

以下程序準備繪制一個矩形, 將其位置和大小新建一個區(qū)塊對象, 并將這些虛擬屬性打印到控制臺:

標記點

區(qū)塊Rect 類定義 4 個角點、4 個中點和 1 個中心點。
下面的代碼繪制一個矩形并標記這些點:

水平和垂直對齊

在下面的示例中,我們使用鍵盤的按鍵將矩形水平對齊:

  • 按鍵L - 左

  • 按鍵C - 中心

  • 按鍵R - 右

和其他 3 個鍵來垂直對齊矩形:

  • 按鍵T - 頂部

  • 按鍵M - 中

  • 按鍵B - 底部

注意把輸入法設(shè)為英文按鍵才能起作用.

使用按鍵移動區(qū)塊

區(qū)塊對象有兩個移動方法:?移動(x,y)會返回一個新的區(qū)塊對象,?移動_ip(x,y)會刷新區(qū)塊的位置信息, 沒有返回數(shù)據(jù).下面的代碼都會讓矩形向右移動100個像素(第二個參數(shù)0代碼中y軸方向上保持不變):

矩形區(qū)塊 = g.區(qū)塊類(0, 0, 200, 80) ?# 默認在屏幕左上角矩形區(qū)塊=矩形區(qū)塊.移動(100,0) ?# 現(xiàn)在會右移100像素# 矩形區(qū)塊.移動_ip(100,0) ?# 這一行代碼與上面作用相同# 下面的代碼應(yīng)該在循環(huán)中, 屏幕刷新之前g.繪圖.矩形(屏幕, 'blue', 矩形區(qū)塊, 4)

接下來的我們使用鍵盤的上下左右按鍵移動矩形, 上一個對齊矩形例子用了很多if語句導致代碼過長, 這一次我們使用字典簡化一下, 把上下左右按鍵對應(yīng)的移動距離保存到字典中. 對于每個方向,移動為 5 個像素:


下面是完整代碼, 可以看到使用這個方法大大簡化了代碼量:

運行上面代碼, 按鍵上下左右可以移動矩形的位置.

縮放矩形

與移動方法類似,?縮放(x,y)縮放_ip(x,y)可以按矢量增大或縮小區(qū)塊對象。 以下程序使用 4 個箭頭鍵來更改矩形的大小。 藍色細矩形是原始矩形,紅色粗矩形是更改的矩形。為了便于觀察, 我們利用區(qū)塊的中心屬性將矩形放在屏幕中心.

裁剪和聯(lián)合

區(qū)塊0.裁剪(區(qū)塊1)該方法返回一個新區(qū)塊,它是兩個區(qū)塊的交集。
區(qū)塊0.聯(lián)合(區(qū)塊1)該方法返回一個新矩形,它是兩個區(qū)塊的并集。

下面的程序顯示了紅色和藍色輪廓的兩個矩形。 綠色矩形是交集區(qū)域。 黃色矩形是兩個矩形的并集。按上下左右移動紅色矩形可以看到交集和并集區(qū)域的變化.


中文編程pygame游戲教程4_區(qū)塊定位的評論 (共 條)

分享到微博請遵守國家法律
特克斯县| 灵寿县| 卢湾区| 琼结县| 西贡区| 佛教| 玛多县| 达日县| 西乌珠穆沁旗| 衡水市| 呼图壁县| 成都市| 平原县| 岫岩| 内丘县| 临西县| 雅安市| 临沭县| 安顺市| 乐清市| 剑阁县| 茂名市| 封开县| 高邮市| 黄浦区| 康保县| 玉屏| 德庆县| 宾川县| 蒲江县| 揭东县| 舒兰市| 登封市| 武定县| 桐梓县| 康定县| 同江市| 延川县| 米林县| 新和县| 肥东县|