国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

微信小程序 繪圖之餅圖實(shí)現(xiàn)

2019-11-20 08:40:42
字體:
供稿:網(wǎng)友

微信小程序的推出,無疑將會(huì)在移動(dòng)互聯(lián)網(wǎng)行業(yè)里再次掀起風(fēng)浪。有人會(huì)質(zhì)疑小程序會(huì)不會(huì)火, 會(huì)不會(huì)火我不知道, 看微信的用戶量即可明白一切。這里就先學(xué)習(xí)下微信小程序繪圖的功能實(shí)現(xiàn)。

官方文檔:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-canvas.html

思路是先畫第一段弧,然后連線回圓心,關(guān)閉路徑,注意不需要連線到起始位,用fill()自動(dòng)閉合到起始點(diǎn),對照Photoshop里路徑轉(zhuǎn)選區(qū)的做法可以有助于理解;第二段弧以前一段弧為起始角度,再回圓心,最后關(guān)閉路徑;第三段弧以前兩段弧之和為起始角度,掃過相應(yīng)比重的弧度;以此類推,完成整圓。

布局文件

<canvas canvas-id="canvas2" style="width:200px;height:200px;border:1px solid #ccc;margin-top:100px;"></canvas>

Javascript文件

Page({ onReady:function(){  // 頁面渲染完成  // 創(chuàng)建上下文  var context = wx.createContext();// 畫餅圖//  數(shù)據(jù)源  var array = [20, 30, 40, 40];  var colors = ["#ff0000", "#ffff00", "#0000ff", "#00ff00"];  var total = 0;//  計(jì)算問題  for (index = 0; index < array.length; index++) {    total += array[index];  }//  定義圓心坐標(biāo)  var point = {x: 100, y: 100};//  定義半徑大小  var radius = 60;/*  循環(huán)遍歷所有的pie */  for (i = 0; i < array.length; i++) {    context.beginPath();//    起點(diǎn)弧度    var start = 0;    if (i > 0) {//      計(jì)算開始弧度是前幾項(xiàng)的總和,即從之前的基礎(chǔ)的上繼續(xù)作畫      for (j = 0; j < i; j++) {        start += array[j] / total * 2 * Math.PI;       }    }    console.log("i:" + i);    console.log("start:" + start);//   1.先做第一個(gè)pie//    2.畫一條弧,并填充成三角餅pie,前2個(gè)參數(shù)確定圓心,第3參數(shù)為半徑,第4參數(shù)起始旋轉(zhuǎn)弧度數(shù),第5參數(shù)本次掃過的弧度數(shù),第6個(gè)參數(shù)為時(shí)針方向-false為順時(shí)針   context.arc(point.x, point.y, radius, start, array[i] / total * 2 * Math.PI, false);//   3.連線回圓心   context.lineTo(point.x, point.y);//   4.填充樣式   context.setFillStyle(colors[i]);//   5.填充動(dòng)作   context.fill();   context.closePath();  }  wx.drawCanvas({    canvasId: 'canvas2',    actions: context.getActions()  }); }})

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 雷波县| 扬州市| 南溪县| 霍林郭勒市| 平潭县| 天等县| 息烽县| 孟津县| 淮北市| 永顺县| 和静县| 平阳县| 贡嘎县| 友谊县| 梁山县| 晋宁县| 青海省| 凤山市| 建始县| 黄平县| 洛川县| 蒲江县| 治县。| 海宁市| 黑河市| 衡阳市| 屏山县| 白河县| 和龙市| 康保县| 手游| 南雄市| 南和县| 射阳县| 于都县| 桂阳县| 长治市| 方城县| 定结县| 镇江市| 宁远县|