HTML 5のcanvasによる回転アニメーション効果
16187 ワード
HTML 5のcanvasによる回転アニメーション効果:
この章では、太極ゴシップ図の回転効果を実現したコードの例を共有し、興味のある友达は分析することができます.
コードは次のとおりです.
原文の住所は次のとおりです.http://www.51texiao.cn/HTML5jiaocheng/2015/0613/4161.html
最も元のアドレスは次のとおりです.http://www.softwhy.com/forum.php?mod=viewthread&tid=13482
この章では、太極ゴシップ図の回転効果を実現したコードの例を共有し、興味のある友达は分析することができます.
コードは次のとおりです.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.51texiao.cn/" />
<title> </title>
</head>
<body>
<canvas id="myCanvas" width="500" height="500" > </canvas>
<script type="text/javascript">
var canvas=document.getElementById('myCanvas');
var ctx = canvas.getContext("2d");
var angle = 0;
var count = 360;
var clrA = '#000';
var clrB = 'red';
function taiji(x, y, radius, angle, wise) {
angleangle = angle || 0;
wisewise = wise ? 1 : -1;
ctx.save();
ctx.translate(x, y);
ctx.rotate(angle);
ctx.fillStyle = clrA;
ctx.beginPath();
ctx.arc(0, 0, radius, 0, Math.PI, true);
ctx.fill();
ctx.beginPath();
ctx.fillStyle = clrB;
ctx.arc(0, 0, radius, 0, Math.PI, false);
ctx.fill();
ctx.fillStyle = clrB;
ctx.beginPath();
ctx.arc(wise * -0.5 * radius, 0, radius / 2, 0, Math.PI * 2, true);
ctx.fill();
ctx.beginPath();
ctx.fillStyle = clrA;
ctx.arc(wise * +0.5 * radius, 0, radius / 2, 0, Math.PI * 2, false);
ctx.arc(wise * -0.5 * radius, 0, radius / 10, 0, Math.PI * 2, true);
ctx.fill();
ctx.beginPath();
ctx.fillStyle = clrB;
ctx.arc(wise * +0.5 * radius, 0, radius / 10, 0, Math.PI * 2, true);
ctx.fill();
ctx.restore();
}
loop = setInterval(function () {
beginTag = true;
ctx.clearRect(0, 0, canvas.width, canvas.height);
taiji(200, 200, 50, Math.PI * (angle / count) * 2, true);
angle = (angle + 5) % count;
}, 50);
</script>
</body>
</html>
原文の住所は次のとおりです.http://www.51texiao.cn/HTML5jiaocheng/2015/0613/4161.html
最も元のアドレスは次のとおりです.http://www.softwhy.com/forum.php?mod=viewthread&tid=13482