使用canvas怎么繪制一個七巧板

這期內容當中小編將會給大家?guī)碛嘘P使用canvas怎么繪制一個七巧板,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

海原網站建設公司創(chuàng)新互聯建站,海原網站設計制作,有大型網站制作公司豐富經驗。已為海原上1000家提供企業(yè)網站建設服務。企業(yè)網站搭建\成都外貿網站制作要多少錢,請找那個售后服務好的海原做網站的公司定做!

代碼分享:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Canvas七巧板</title>
</head>
<body>
  <canvas id="canvas" ></canvas>
  <script type="text/javascript">
    var tangram = [
      {p:[{x:0,y:0},{x:800,y:0},{x:400,y:400}],color:'#caff67'},
      {p:[{x:0,y:0},{x:400,y:400},{x:0,y:800}],color:'#67becf'},
      {p:[{x:800,y:0},{x:800,y:400},{x:600,y:600},{x:600,y:200}],color:'#ef3d61'},
      {p:[{x:600,y:200},{x:600,y:600},{x:400,y:400}],color:'#f9f51a'},
      {p:[{x:400,y:400},{x:600,y:600},{x:400,y:800},{x:200,y:600}],color:'#a594c0'},
      {p:[{x:200,y:600},{x:400,y:800},{x:0,y:800}],color:'#fa8ecc'},
      {p:[{x:800,y:400},{x:800,y:800},{x:400,y:800}],color:'#f6ca29'}
    ]
//    定義一個存放繪制路徑和顏色的數組
    window.onload=function (){
      var canvas=document.getElementById('canvas');
//      獲取canvas
      canvas.width = 800;
      canvas.height = 800;
//      定義畫布的寬高
      var context=canvas.getContext('2d');
//      創(chuàng)建畫布
      for( var i=0; i<tangram.length; i++){
        draw(tangram[i],context);
//        遍歷數組tangram執(zhí)行函數draw

      }
//      draw這個函數
     function draw(piece,cxt){
        cxt.beginPath();
//        開始路徑的創(chuàng)建
        cxt.moveTo( piece.p[0].x , piece.p[0].y );
//        從這個坐標開始
        for( var i=1; i<piece.p.length; i++)
//          遍歷數組中的p屬性
          cxt.lineTo(piece.p[i].x , piece.p[i].y);
//        畫路徑到這個坐標
          cxt.closePath();
//          關閉這條打開的路徑

          cxt.fillStyle = piece.color;
          cxt.fill();
//          給繪制的形狀填充顏色
     }
    }
  </script>
</body>
</html>

上述就是小編為大家分享的使用canvas怎么繪制一個七巧板了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯行業(yè)資訊頻道。

分享題目:使用canvas怎么繪制一個七巧板
當前鏈接:http://muchs.cn/article30/pioepo.html

成都網站建設公司_創(chuàng)新互聯,為您提供網站維護定制開發(fā)、網站排名品牌網站設計、網站建設靜態(tài)網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

微信小程序開發(fā)