歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android 基於坐標的圖形開發

Android 基於坐標的圖形開發

日期:2017/3/1 10:22:34   编辑:Linux編程

1、Android中的坐標系統

在Android系統中,屏幕的左上角是坐標系統的原點(0,0)坐標。原點向右延伸是X軸正方向,原點向下延伸是Y軸正方向。

2、屏幕的寬和高

為了在屏幕中的合適位置繪制圖形,我們需要使用屏幕的寬和高作為參考,來確定繪制圖形的位置。要獲得屏幕的寬和高,首先從Activity對象中獲得WindowManager對象,然後從WindowManager對象中獲得Display對象,再從Display對象中獲得屏幕的寬和高。

// 獲得屏幕的寬和高

WindowManager manger = getWindowManager();

Diaplay diaplay = manager.getDefaultDisplay();

int screenWidth = display.getWidth();

int screenHeight = display.getHeight();

3、邊界的確定

在很多游戲中都需要對繪制在屏幕中格的視圖進行邊界的確定。例如,在射擊類游戲中我們就需要判斷玩家、敵人、子彈等視圖的邊界位置。邊界的判斷無非是對上、下、左、右屏幕邊界的判斷。

如果當前視圖的X坐標小於零,則當前視圖左越界。如果當前視圖的X坐標大於屏幕的寬,則右越界。

如果當前視圖的Y坐標小於零,則當前視圖上越界。如果當前視圖的Y坐標大於屏幕的高,則下越界。

4、視圖的移動

游戲的實現過程其實很簡單,就是不但改變視圖的位置坐標,然後重新將他們繪制在屏幕上。不過這種坐標的位置改變和繪制過程是通過一定邏輯來控制實現的。視圖的移動就是通過改變視圖坐標位置來實現的。改變了坐標再重新繪制,給我們的感覺是視圖在移動。

如果視圖水平向左移動,X坐標減小;如果視圖水平向右移動,X坐標增大。

如果視圖垂直向上移動,Y坐標減小;如果視圖垂直向下移動,Y坐標增大。

5、Android游戲開發基本框架

Android游戲開發框架基本對象有三個:一是圖層對象,該圖層對象定義圖層的寬和高、圖層的位置、圖層的移動以及繪制方法等;二是視圖對象,視圖對象的主要作用是繪制圖層對象、相應鍵盤事件和處理視圖線程等;三是一個Activity控制游戲流程,例如啟動游戲、暫停游戲、停止游戲等。

更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11

Copyright © Linux教程網 All Rights Reserved