私はHTML5の最も話題の機能、つまりキャンバスに手を差し伸べています。 2つの長方形があり、私は最初のものをそのまま回転させ、2番目のものをそのまま維持したい。問題は、以下のコードが私のキャンバス全体が回転し、両方の長方形が回転しているときです。私は、私が描画したオブジェクトへの参照を取得し、コンテキスト全体ではなく特定のオブジェクトのみを回転させるAPIを見つけることさえできません。キャンバス全体を回転していますか?
コード:
<script type="text/javascript">
var context;
var radian = 0.01;
var w, h;
$(document).ready(function() {
w = document.width;
h = document.height;
var canvas = $('#canvas');
context = canvas[0].getContext('2d');
canvas[0].width = w;
canvas[0].height = h;
setInterval(startAnim, 200);
});
function startAnim() {
context.clearRect(0, 0, w, h);
context.strokeStyle = 'rgb(0,0,0)';
context.fillStyle = 'rgb(0,0,0)';
context.fillRect(0, 0, w, h);
context.strokeStyle = 'rgb(0,0,0)';
context.fillStyle = 'rgb(255,255,0)';
context.rotate(radian);
context.strokeRect(400, 300, 200, 200);
context.fillRect(400, 300, 200, 200);
context.fillStyle = 'rgb(0,255,255)';
context.fillRect(500, 400, 200, 200);
radian += 0.01;
}
</script>
がどのように私はこれを防ぐことができますか?
これのためにJSFiddleが動作していますか?私はそれを実際に見たいと思う。 –
http://jsfiddle.net/zEJuh/2/ – TCM
実例をありがとう! –