画布旋转(Canvas Rotation)
优质
小牛编辑
128浏览
2023-12-01
HTML5画布提供rotate(angle)方法,该方法用于围绕当前原点旋转画布。
此方法只接受一个参数,即画布旋转的角度。 这是以弧度为单位的顺时针旋转。
例子 (Example)
下面是一个简单的例子,我们运行两个循环,其中第一个循环确定环的数量,第二个循环确定每个环中绘制的点数。
<!DOCTYPE HTML>
<html>
<head>
<style>
#test {
width: 100px;
height:100px;
margin: 0px auto;
}
</style>
<script type = "text/javascript">
function drawShape() {
// get the canvas element using the DOM
var canvas = document.getElementById('mycanvas');
// Make sure we don't execute when canvas isn't supported
if (canvas.getContext) {
// use getContext to use the canvas for drawing
var ctx = canvas.getContext('2d');
ctx.translate(100,100);
for (i = 1; i<7; i++) {
ctx.save();
ctx.fillStyle = 'rgb('+(51*i)+','+(200-51*i)+',0)';
for (j = 0; j < i*6; j++) {
ctx.rotate(Math.PI*2/(i*6));
ctx.beginPath();
ctx.arc(0,i*12.5,5,0,Math.PI*2,true);
ctx.fill();
}
ctx.restore();
}
} else {
alert('You need Safari or Firefox 1.5+ to see this demo.');
}
}
</script>
</head>
<body id = "test" onload = "drawShape();">
<canvas id = "mycanvas" width = "400" height = "400"></canvas>
</body>
</html>