就剩那两个大半圆不知道怎么用代码表示了,求大神给看下,怎么设置的才可以以自己的圆心来转。实现旋转的八卦。不能上传视频,有个转的过程图,在最下面。<!DOCTYPE HTML><html> <head> <meta charset="utf-8"> <title></title> </head><body><canvas id="myCanvas" width="500" height="500">your browser does not support the canvas tag</canvas><script type="text/javascript"> var deg1=0.0; var deg2=0.0; var deg3=0.0; var deg4=0.0; var deg5=0.0; var deg6=0.0; setInterval(drawCircle,40); function drawCircle() { var canvas = document.getElementById('myCanvas'); var context = canvas.getContext('2d'); context.clearRect(0, 0, 500, 500); context.beginPath(); context.fillStyle = "black"; var px =Math.sin(deg5)*100; var py =Math.cos(deg5)*100; context.arc(300+px,300-py,200,1.5*Math.PI,0.5*Math.PI,true); context.fill(); deg5 +=0.05; //黑色大半圆 context.beginPath(); context.fillStyle = "red"; var px =Math.sin(deg6)*100; var py =Math.cos(deg6)*100; context.arc(300+px,300-py,200,0.5*Math.PI,1.5*Math.PI,true); context.fill(); deg6 +=0.05; //红色大半圆 context.beginPath(); context.fillStyle = "red"; var px =Math.sin(deg4)*100; var py =Math.cos(deg4)*100; context.arc(300-px,300+py,100,0,2*Math.PI,true); context.fill(); deg4 +=0.05; //红色中圆 context.beginPath(); context.fillStyle = "black"; var px =Math.sin(deg2)*100; var py =Math.cos(deg2)*100; context.arc(300-px,300+py,25,0,2*Math.PI,true); context.fill(); deg2 +=0.05; //黑色中圆 context.beginPath(); context.fillStyle = "black"; var px =Math.sin(deg3)*100; var py =Math.cos(deg3)*100; context.arc(300+px,300-py,100,0,2*Math.PI,true); context.fill(); deg3 +=0.05; // 黑色小圆 context.beginPath(); context.fillStyle = "red"; var px =Math.sin(deg1)*100; var py =Math.cos(deg1)*100; context.arc(300+px,300-py,25,0,2*Math.PI,true); context.fill(); deg1 +=0.05; //红色小圆 }</script></body></html>
添加回答
举报
0/150
提交
取消