function drawImg(angle) { canvas.width = canvas.width;
var distance = size / 2 * Math.sqrt(2) * Math.sin(angle * Math.PI / 180 / 2) * 2; var degree = 180 - 45 - (180 - angle) / 2; var x = distance * Math.sin(degree * Math.PI / 180); var y = distance * Math.cos(degree * Math.PI / 180);
ctx.translate(x, -y); var angleInRadians = angle * Math.PI / 180; ctx.rotate(angleInRadians);
ctx.drawImage(img, 0, 0, 32, 32); ctx.restore(); }
第一步是清空画板,重点是找到旋转后图片相原方的中心,其计算公式是我自己写的。计算distnace那个。
版权声明:本文博客原创文章,博客,未经同意,不得转载。