У меня есть прямоугольник в методе setInterval и, используя метод rotate, он вращается, как и ожидалось, но когда я добавляю еще один элемент над прямоугольником, он также вращается.Я попытался извлечь его как отдельную функцию, но кажется, что все элементы наследуют вращение.
<!DOCTYPE html>
<html>
<body>
<canvas id="paper" width="500" height="500"></canvas>
</body>
<script>
window.onload = function(){
var canvas = document.getElementById("paper"),
c = canvas.getContext("2d");
c.fillStyle = "#00ffff";
c.fillRect(0,0,500,500);
c.translate(250,250);
c.fillStyle = "#ff0000";
c.beginPath();
c.arc(100,100,10,0,Math.PI*2,false);
c.fill();
c.fillStyle = "#ff0000";
c.fillRect(0,0,2,500);
setInterval(function(){
c.fillStyle = "#00ffff";
c.fillRect(0,0,500,500);
c.fillStyle = "#ff0000";
c.beginPath();
c.arc(100,100,10,0,Math.PI*2,false);
c.fill();
c.rotate(.01);
c.fillStyle = "#ff0000";
c.fillRect(0,0,2,500);
},30);
};
</script>
</html>