日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

【Android游戲開發二十五】在Android上的使用《

系統 2090 0


Himi原創,轉載務必注明出處!

原文地址: http://blog.csdn.net/xiaominghimi/archive/2011/06/20/6555828.aspx

首先對于《賽貝爾曲線》不是很了解的童鞋,請自覺白度百科、google等等...

為了方便偷懶的童鞋,這里給個《貝賽爾曲線》百科地址,以及一段話簡述《貝賽爾曲線》:

《貝賽爾曲線》白度百科快速地址: http://baike.baidu.com/view/4019466.htm

貝塞爾曲線又稱貝茲曲線或貝濟埃曲線,一般的矢量圖形軟件通過它來精確畫出曲線,貝茲曲線由線段與節點組成,節點是可拖動的支點, 線段像可伸縮的皮筋;


上面這一段話其實就“ 線段像可伸縮的皮筋 ”這一句比較重要,也很容易理解;

至于貝賽爾曲線的實現,在Android中極其的簡單,因為它是Android封裝的一個方法,這個能不簡單么。。。。。。只不過它隱藏的比較深,它隱藏于Path類中,方法如下:

android.graphics. Path .quadTo(float x1, float y1, float x2, float y2)

Since: API Level 1

此方參數解釋:

第一個參數:操作點的x坐標

第二個參數:操作點的y坐標

第三個參數:結束點的x坐標

第四個參數:結束點的y坐標

從API中看出,賽貝爾曲線從API-1就開始支持了;

熟悉方法后,下面就來實現:

SurfaceView框架不多講,看過我博客的都應該知道的;

直接看MySurfaceView類,此類繼承SurfaceView ,是游戲的主視圖

這里為了更清晰的講解:這里部分代碼先不貼出來了,最后會整體貼出,當然源碼也是免費在最后提供~

首先是定義相關的成員變量:

本類構造函數:

接著我把繪制貝賽爾曲線封裝一個方法了,函數如下:

最后是用戶觸屏監聽函數以及邏輯函數:

整個代碼很easy~主要是貝賽爾函數的參數,尤其是操作點,操作點的各種不同可以實現不同的效果,這里我簡單的統一的講操作點設置成用戶觸屏點的x,y的一半,呵呵偷懶了~嘻嘻~

我把貝賽爾的操作點寫在了邏輯logic()函數中,不斷的執行,并且每次利用nextInt函數得到隨機的操作點,主要為了讓其曲線不斷的變化從而形成一個震動的曲線運動軌跡;

ok,效果接圖如下:

【Android游戲開發二十五】在Android上的使用《貝賽爾曲線》!

【Android游戲開發二十五】在Android上的使用《貝賽爾曲線》!

【Android游戲開發二十五】在Android上的使用《貝賽爾曲線》! 【Android游戲開發二十五】在Android上的使用《貝賽爾曲線》!

這里可能由于圖片是靜止的效果看起來不是很明顯,大家可以運行源碼來觀察 ,好了~本節就這樣吧;下面貼出整個MySurfaceView的源碼:(最后有本項目的源碼下載地址)

本章源碼下載地址:(仍舊免費下載)

http://download.csdn.net/source/3378910

.

.

【Android游戲開發二十五】在Android上的使用《貝賽爾曲線》!


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 且末县| 黔南| 昌吉市| 富蕴县| 饶河县| 龙门县| 丹凤县| 蓬溪县| 齐齐哈尔市| 阿拉善右旗| 丰城市| 广西| 三台县| 赤峰市| 吉首市| 永丰县| 蓝田县| 蕲春县| 五家渠市| 曲阜市| 芦山县| 滨海县| 保山市| 高台县| 林西县| 鄂托克旗| 郧西县| 宜昌市| 山东省| 云龙县| 泸定县| 大荔县| 阳谷县| 日照市| 拜泉县| 开鲁县| 板桥市| 盈江县| 集安市| 化隆| 麻栗坡县|