J2me 矩陣相交檢測,矩陣碰撞檢測,點與矩陣檢測

2021-05-27 17:03:28 字數 1181 閱讀 5571

j2me 矩陣相交檢測,矩陣碰撞檢測,點與矩陣檢測

在midp1.0中,我們不能像midp2.0中的sprite類一樣有很方便的碰撞函式可以使用,我們只能自己來寫**實現。常見的碰撞檢測的方式是基於矩形的碰撞,因為我們的都是矩形的。檢測矩形碰撞的一種方式是看乙個矩形的4個角是否進入另乙個矩形內。假如我們有乙個actor類,也就是我們的乙個自定義的類似於精靈類吧,那麼我們可以給他定義乙個這樣的方法:

/**

* 檢測乙個特定點是否進入乙個actor內

* @param px 特定點的x座標.

* @param py 特定點的y座標

* @return 如果特定點進入actor範圍內,那麼返回true,否則為false;

*/public boolean iscollidingwith(int px, int py)

/*** 檢測乙個actor物件是否碰上了當前的actor物件。

* @param another 另乙個actor物件

* @return 如果another和當前物件發生碰撞,則返回true,否則為false.

*/public boolean iscollidingwith(actor another)

關於矩形碰撞檢測,還有乙個更簡單的方式就是判斷乙個矩形的4條邊是否在另乙個矩形的4條邊之外。因此我們可以寫乙個更加通用快速的簡單的碰撞方法:

/**

* 較為通用的矩形碰撞檢測方法

* @param ax a矩形左上角x座標

* @param ay a矩形左上角y座標

* @param aw a矩形寬度

* @param ah a矩形高度

* @param bx b矩形左上角x座標

* @param by b矩形左上角y座標

* @param bw b矩形寬度

* @param bh b矩形高度

* @return

*/public static final boolean isintersectingrect(int ax, int ay, int aw,

int ah, int bx, int by, int bw, int bh)

這樣速度會快很多。對於有透明背景的,我們可以圍繞非透明部分多設立幾個矩形區進行碰撞檢測。

J2ME 文字滾動

private int tipstringpos screen width 當前字串左邊的位置 private int tipstringspeed 2 字串移動速度 private static final int tipstr left 5 5 左邊消失繪製座標 private static f...

j2me記憶體優化

out momory 一陣天旋地轉記憶體又溢位了。在手機上這種痛苦經常都有,套一句俗話在手機上用記憶體必須勒緊褲腰帶。雖然現在pc記憶體上g都不奇怪,可是在手機上卻只能以k來記,可能某位同志會馬上跳出來說也有上m的,記住中國還不富大多數手機都是低端手機。寫手機程式讓我彷彿回到了dos時代 自我安慰一...

j2me學習總結

j2me隨著最後乙個遊戲的完成,可以畫上乙個小句號了。做了幾個東西,簡單說一下。環境winxp eclipse netbeans 手機 nokia5230,s60v5平台 1 冷笑話 這個就是入門,執行之後可以看一些冷笑話,還有謎語之類的,用的是j2me自帶的ui 2.貪食蛇。就是貪食蛇,用了遊戲的...