美文网首页
canvas 做个5角 太极

canvas 做个5角 太极

作者: 雨中追燕 | 来源:发表于2016-11-21 20:40 被阅读9次

太极就是圆的拼接

<body>
  <canvas id="canvas" width="400" height="400"></canvas>
  <script type="text/javascript">
    var canvas = document.getElementById('canvas');
    var c = canvas.getContext("2d");
    c.translate(200,200);
    //左边半圆
    c.beginPath();
    c.arc(0,0,100,Math.PI/2,3*Math.PI/2,false);
    c.closePath();
    c.fill();
    c.stroke();
    //右边半圆
    c.beginPath();
    c.arc(0,0,100,Math.PI/2,3*Math.PI/2,true);
    // c.closePath();
    c.stroke();
    //上面部分
    c.beginPath();
    c.arc(0,-50,50,2*Math.PI,false);
    c.closePath();
    c.fillStyle="white";
    c.fill();
    //黑色小球
    c.beginPath();
    c.arc(0,-50,10,2*Math.PI,false);
    c.closePath();
    c.fillStyle="black";
    c.fill();
    //下面部分
    c.beginPath();
    c.arc(0,50,50,2*Math.PI,false);
    c.closePath();
    c.fillStyle="black";
    c.fill();
    //白色小球
    c.beginPath();
    c.arc(0,50,10,2*Math.PI,false);
    c.closePath();
    c.fillStyle="white";
    c.fill();



      //五角星方法,在9宫格上画出个五角星,然后按照9宫格的比例来做,我按照一格100比例来做
      //五角星
      c.save()
      c.beginPath();
      c.translate(200,200);
      c.moveTo(0,-150);
      c.lineTo(100,150);
      c.lineTo(-150,-50);
      c.lineTo(150,-50);
      c.lineTo(-100,150);
      c.closePath();
      c.fill();
      c.restore();
      //9宫格
      //行
      c.beginPath();
      c.translate(200,200);
      c.moveTo(-150,-150);
      c.lineTo(150,-150);
      c.moveTo(-150,-50);
      c.lineTo(150,-50);
      c.moveTo(-150,50);
      c.lineTo(150,50);
      c.moveTo(-150,150);
      c.lineTo(150,150);
      //列
      c.moveTo(-150,-150);
      c.lineTo(-150,150);
      c.moveTo(-50,-150);
      c.lineTo(-50,150);
      c.moveTo(50,-150);
      c.lineTo(50,150);
      c.moveTo(150,-150);
      c.lineTo(150,150);
      c.closePath();
      // c.fill();
      c.stroke();



  </script>
</body>

相关文章

网友评论

      本文标题:canvas 做个5角 太极

      本文链接:https://www.haomeiwen.com/subject/cvnupttx.html