问答详情
源自:6-3 绘制一角弯月

图像不显示,没有显示什么错误

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>arc</title>

</head>

<body>

<canvas id="canvas"></canvas>

  <script>

  window.onload=function(){

   var canvas=document.getElementById('canvas');

         canvas.width=800;

         canvas.height=800;

         var context=canvas.getContext('2d');

         drawMoon(context,2,400,400,300,0);

}


function drawMoon(cxt,d,x,y,r,rot){

cxt.save();

cxt.translate(x,y);

cxt.rotate(rot*Math.PI/180)

cxt.scale(r,r);

pathMoon(cxt,d);

cxt.fillStyle="white";

cxt.fill();

cxt.restore();

}

function pathMoon(cxt,d){

cxt.beginPath();

cxt.arc(0,0,1,0.5*Math.PI,1.5*Math.PI,true);

cxt.moveTo(0,-1);

cxt.arcTo(d,0,0,1,dis(0,-1,d,0)/d);


cxt.closePath();

}

function dis(x1,y1,x2,y2){

return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));

}

  </script>

  </body>

</html>


提问者:菜鸟一枚111 2016-08-17 21:15

个回答

  • Aug
    2016-11-07 16:52:31

    楼上正解

  • 素水凌心
    2016-08-18 10:19:55

    你的cxt.fillStyle="white";所以你绘制出来的月亮和背景色一样都是白色,把月亮换个颜色就行了