国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

HTML 5游戲制作之五彩連珠(畫圖)

開發(fā) 前端
棋盤起始的位置我也做了調(diào)整,只要修改起始的x y值,棋盤就會在這個點開始畫。那,現(xiàn)在我們要在第五行,第六列畫一個黃色的球,該怎么畫呢?只需要給map增加一個方法,再調(diào)用這個方法就行啦

好吧,新的一天來了,我才開始動筆,真夠懶得:)昨天說了今天我們要畫一個球,在canvas上。好吧,這是游戲的入門的第一步,只是昨天沒寫完,所以。。。

  1. <!DOCTYPE html>   
  2. <html xmlns="http://www.w3.org/1999/xhtml">   
  3. <head>   
  4.     <title></title>   
  5. </head>   
  6. <body>   
  7.     <canvas id="canvas" height="400" width="600" style="background: #fff;"></canvas>   
  8.     <script type="text/javascript">   
  9.         var canvas = document.getElementById("canvas");   
  10.         var ctx = canvas.getContext("2d");   
  11.         ctx.beginPath();   
  12.     
  13.         ctx.arc(110, 110, 40, 0, Math.PI * 2);   
  14.     
  15.         ctx.strokeStyle = "red";   
  16.         ctx.fillStyle = "yellow";   
  17.     
  18.         ctx.fill();   
  19.         ctx.stroke();   
  20.     
  21.     </script>   
  22. </body>   
  23. </html> 

上面的代碼是在VS11 beta上寫的,實在是太舒服了,vs是非常強大的編輯器。上面的代碼中我們繪制了一個大大的圓,并且著色了,紅邊和黃心。
看下 arc (弧度)方法,昨天的文章里有他的鏈接地址,我在這里粘貼下。

The arc(x, y, radius, startAngle, endAngle, anticlockwise) method draws an arc. 

arc(x,y,弧度,開始角度點,結(jié)束角度點, 順時針),角度點你可能不是很清楚如何表示,這里是用Math.PI 圓周率來表示 6.28是周長。 想畫圓的一部分也就是一段弧線,可以取開始的角度點和結(jié)束的角度點。

那么下一步就是要把圓能夠畫到我們棋盤上。其實,這個很簡單,只要我們把x,y和radius的值調(diào)整下就會繪制出來。我把昨天代碼寫的更“專業(yè)”了一點。所以,今天的代碼會在新的代碼基礎(chǔ)上增加了。先看下改動過的代碼。

  1. var canvas = document.getElementById("canvas");   
  2. var ctx = canvas.getContext("2d");   
  3. var g = {   
  4.     cellCount: 9,   
  5.     lineCount: 5,   
  6. };   
  7.    
  8. var map = {   
  9.     startX: 20.5,   
  10.     startY: 60.5,   
  11.     cellWidth: 30,   
  12.     getEndX: function () {   
  13.         return g.cellCount * this.cellWidth + this.startX;   
  14.     },   
  15.     getEndY: function () {   
  16.         return g.cellCount * this.cellWidth + this.startY;   
  17.     },   
  18.     draw: function () {   
  19.         ctx.beginPath();   
  20.    
  21.         ctx.moveTo(this.startX, this.startY);   
  22.    
  23.         for (var i = 0; i <= g.cellCount; i++) {   
  24.    
  25.             var p1 = i * this.cellWidth + this.startX;   
  26.             ctx.moveTo(p1, this.startY);   
  27.             ctx.lineTo(p1, this.getEndY());   
  28.    
  29.             var p2 = i * this.cellWidth + this.startY;   
  30.             ctx.moveTo(this.startX, p2);   
  31.             ctx.lineTo(this.getEndX(), p2);   
  32.    
  33.         }   
  34.         ctx.strokeStyle = "#456";   
  35.         ctx.stroke();   
  36.     },   
  37.    
  38. };   
  39.    
  40. map.draw(); 

是吧,更專業(yè)了吧,這樣就不會定義一坨的function,到時候沒出找,而是定義在一個對象里,這種封裝也能避免命名沖突。而且,棋盤起始的位置我也做了調(diào)整,只要修改起始的x y值,棋盤就會在這個點開始畫。那,現(xiàn)在我們要在第五行,第六列畫一個黃色的球,該怎么畫呢?只需要給map增加一個方法,再調(diào)用這個方法就行啦

  1. drawBubble: function (x, y) {   
  2.     var px = this.startX + this.cellWidth * x - this.cellWidth / 2;   
  3.     var py = this.startY + this.cellWidth * y - this.cellWidth / 2;   
  4.     ctx.beginPath();   
  5.     ctx.arc(px, py, 12, 0, Math.PI * 2);   
  6.     ctx.strokeStyle = "white";   
  7.     ctx.fillStyle = "yellow";   
  8.     ctx.fill();   
  9.     ctx.stroke();   
  10. }, 

畫出來刷新下,居然是第六行,第五列,我們搞錯了嗎?代碼沒有,只是我們誤認為x是行y是列 按順序叫順口了,其實是反過來的:)

泡泡既然能畫出來,也要能清除才是,不然沒法玩,所以再增加一個清除泡泡的方法。

  1. clearBubble: function (x, y) {   
  2.     var px = this.startX + this.cellWidth * x - this.cellWidth + 0.5;   
  3.     var py = this.startY + this.cellWidth * y - this.cellWidth + 0.5;   
  4.     ctx.beginPath();   
  5.     ctx.clearRect(px, py, this.cellWidth - 1, this.cellWidth - 1);   
  6.     ctx.stroke();   

ok,是不是很霸氣? o(∩_∩)o 哈哈,不過在獲取泡泡的位置時是不是很糾結(jié),為什么畫泡泡是 width/2 而擦除要加0.5? 

畫圓是從中心點開始畫,所以要去掉半徑,而擦數(shù)不能擦掉我們的棋盤線,所以要偏移0.5 。

原文鏈接:http://www.cnblogs.com/mad/archive/2012/03/11/2390281.html

【編輯推薦】

  1. HTML 5游戲制作之五彩連珠(預(yù)覽)
  2. HTML 5游戲制作之五彩連珠(設(shè)計)
  3. HTML 5游戲制作之五彩連珠(動畫)
  4. HTML 5游戲制作之五彩連珠(尋路)
  5. HTML 5游戲制作之五彩連珠(試玩)

 

責(zé)任編輯:張偉 來源: 君之蘭的博客
相關(guān)推薦

2012-05-17 13:45:35

HTML5

2012-05-18 13:07:04

HTML5

2012-05-18 13:11:09

HTML5

2012-05-18 14:05:53

HTML5

2012-05-18 13:59:45

HTML5

2010-08-12 22:35:24

IBM培訓(xùn)

2011-11-30 15:14:32

HTML 5

2019-09-11 15:20:21

華為

2021-03-26 07:06:40

Windows 10Windows操作系統(tǒng)

2012-06-07 15:29:31

HTML5

2012-05-15 13:57:41

HTML5

2012-01-10 16:37:46

樂團

2012-03-29 09:18:47

HTML5WEB

2019-09-12 10:10:10

Vim編輯器代碼

2020-04-22 10:01:26

Vim編輯器代碼

2013-08-27 14:20:09

游戲應(yīng)用圖標(biāo)ASO應(yīng)用商店優(yōu)化

2012-05-30 13:49:52

HTML5

2014-12-30 17:13:51

HTML5

2011-12-16 11:11:36

HTML 5

2021-03-29 15:07:19

AI 數(shù)據(jù)人工智能
點贊
收藏

51CTO技術(shù)棧公眾號

影音先锋男人在线资源| 日本中文一区二区三区| 日韩欧美国产电影| 一二三中文字幕在线| 国产日韩欧美a| 日韩免费在线观看av| 欧美女人交a| 国产精品第三页| 日韩高清一区| 久久久成人av| 日本黄色成人| 色伦专区97中文字幕| 四虎影视4hu4虎成人| 日韩电影中文字幕一区| 欧美videosex性欧美黑吊| 欧美顶级少妇做爰| 国产在线高清视频| 日韩一区二区电影| 成人在线影视| 亚洲第一福利视频| 日韩影院在线| 伊人一区二区三区久久精品| 日韩精品第一| 色综合视频一区中文字幕| av在线视屏| 久久国产成人午夜av影院| 97超级在线观看免费高清完整版电视剧| 老牛精品亚洲成av人片| 欧美在线视频一二三| 禁断一区二区三区在线| 国产精品成av人在线视午夜片| 黑人操亚洲人| 99视频国产精品免费观看| 黄页网站一区| 日韩精品资源| 国产成人精品一区二| 一区二区传媒有限公司| 中文字幕在线一区免费| 麻豆影视在线观看| 欧美视频第二页| 啊啊啊久久久| 久久国产精品久久久久久| 国产乱码精品一区二区三区四区| 国产精品视频区| 136国产福利精品导航网址| 亚洲精品久久久久久一区二区| 国产成人免费视频网站高清观看视频| 成人免费观看cn| 亚洲综合偷拍欧美一区色| 搞黄视频免费在线观看| 亚洲国产一区二区三区在线观看| 欧美与亚洲与日本直播| 欧洲亚洲在线视频| 国产亚洲激情| 黄在线观看网站| 黑人极品videos精品欧美裸| 国产极品人妖在线观看| 久久999免费视频| 欧美全黄视频| 天堂…中文在线最新版在线| 亚洲成人激情自拍| av资源在线| 欧美在线免费视频| 久久午夜电影| 69免费视频| 精品国产91洋老外米糕| 日韩动漫一区| 亚洲第一精品区| 亚洲自拍偷拍综合| 国产v综合v| 亚洲综合日韩在线| www.日本不卡| 免费观看成年在线视频网站| 少妇精69xxtheporn| 911精品美国片911久久久| 小泽玛利亚av在线| 欧美日韩国产精品专区| 高清一区二区中文字幕| 快播亚洲色图| 一区二区三区在线免费视频| 三级中文字幕在线观看| 国产精品亚洲网站| 99视频在线精品| 麻豆网在线观看| 国产国语videosex另类| 国产真实乱偷精品视频免| 精品欧美不卡一区二区在线观看| 欧美成人全部免费| 久久综合图片| 黄色直播在线| 欧美精品性视频| 麻豆国产精品一区二区三区| 最新av在线| 欧美黄色小视频| 国产一区在线看| 一区二区三区视频在线观看视频| 久久久在线视频| 国产91精品欧美| 成人在线观看亚洲| 成人激情视频在线| 国产精品视频yy9299一区| 中文字幕一区久| 国产伦视频一区二区三区| 成人欧美一区二区三区白人| 8av国产精品爽爽ⅴa在线观看| 欧洲在线视频一区| 欧美三级在线看| 中出一区二区| 粉嫩欧美一区二区三区| 97视频在线观看亚洲| 久久婷婷综合激情| 成人看片毛片免费播放器| 亚洲一二区在线| 欧美一区二区三区免费视频| 91精品一区二区三区综合在线爱| 成人免费xx| 欧美精品久久久久久久久久| av一区二区久久| 国产精品迅雷| 亚洲日本一区二区三区在线不卡 | 国产成人精品久久| 久久久久亚洲综合| 久久精品国产精品亚洲毛片| 国产麻豆电影在线观看| 精品国产91亚洲一区二区三区婷婷| 亚洲精选在线| 国产粉嫩一区二区三区在线观看| 国产精品免费久久久久久| 综合婷婷亚洲小说| 日本国产精品| 日本全棵写真视频在线观看| 日本精品一区二区三区在线| 国产精品女人毛片| 秋霞影院一区二区三区| 国产三级视频| 国产精品免费看久久久香蕉| 动漫精品一区二区| 亚洲国内欧美| 成人日批视频| 亚洲乱码一区二区三区| 日韩激情视频在线播放| 国产一区二区在线看| av在线日韩| 国产视频一视频二| 久久久久久成人| 亚洲精品中文在线影院| 成人av二区| 成人综合影院| 亚洲成人18| 一本色道久久88综合亚洲精品ⅰ | 欧美性猛交xxxx| 亚洲黄色免费| 国产探花视频在线观看| 日本xxxxx18| 欧美成人亚洲成人日韩成人| 亚洲同性gay激情无套| 欧美a级成人淫片免费看| 你懂的在线网址| 日韩久久不卡| 色噜噜狠狠狠综合曰曰曰| 国产精品高潮呻吟| 欧美在线免费一级片| gogo高清午夜人体在线| 无码粉嫩虎白一线天在线观看| 欧美华人在线视频| 欧美色道久久88综合亚洲精品| 亚洲人体偷拍| 91九色综合| 欧美最顶级a∨艳星| 日本精品一区二区三区视频| 久久亚洲欧美日韩精品专区| 亚洲成人你懂的| 蜜臀国产一区二区三区在线播放| 不卡的国产精品| 久香视频在线观看| 免费网站永久免费观看| 清纯唯美日韩制服另类| 欧美日韩激情一区二区| 成人免费高清在线观看| av伊人久久| 国产高潮在线| 高清毛片aaaaaaaa**| 久久精品日韩| 欧美日韩aaaa| 欧美体内she精视频| 99久久精品99国产精品| 日韩在线看片| 在线精品亚洲欧美日韩国产| 黑粗硬长欧美在线视频免费的| 国产伦精品一区二区三区| 中文字幕av日韩| 欧美午夜精品久久久久久浪潮| 国产精品一区二区免费不卡| 国产探花在线精品| 国产成人免费av一区二区午夜| 偷拍与自拍一区| 亚洲视频在线免费看| 国产激情一区二区三区在线观看| 国风产精品一区二区| 欧美一级片中文字幕|