我有一个火箭在我的 Canvas 中稍微延迟地跟随鼠标,我希望它在鼠标四处移动时指向鼠标。正如你在我的 fiddle HERE 中看到的那样,我几乎已经明白了强>。我的问题是旋转与我想要的方向有点相反,而且它很奇怪而且摇摆不定。
我用来让它在我的 Canvas 上这样做的 JS 是:
ctx.save();
var offsetY = targetToGo.x - shape.y ;
var offsetX = targetToGo.y - shape.x ;
var degrees = -Math.atan2(offsetY,offsetX);
ctx.translate(shape.x, shape.y);
ctx.rotate(degrees);
ctx.drawImage(shape.image,-shape.image.width/2,-shape.image.width/2);
ctx.restore();
是 Canvas 代码还是数学错误?我两样都不好。
最佳答案
换行
var degrees = -Math.atan2(offsetY,offsetX);
到
var degrees = Math.atan2(offsetY,-offsetX);
关于javascript - 跟随时使 Canvas 图像指向鼠标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23498434/