為什么我的是大魚尾巴跟著鼠標移動呀?
momObj.prototype.draw =function(){
//lerp x,y 讓大魚跟隨鼠標移動
this.x = lerpDistance(mx,this.x,0.98);//數(shù)字越大越慢
this.y = lerpDistance(my,this.y,0.98);
//計算坐標差
//Math.atan2(y,x)
var deltaY = my - this.y;
var deltaX = mx - this.x;
var beta = Math.atan2(deltaY,deltaX);//-pi,pi
//lerp angle 趨向于角度
this.angle = lerpAngle(beta,this.angle,0.6);
ctx1.save();
//使eye, body ,tail的中心在同一個點,后移尾巴位置得到大魚圖片
ctx1.translate(this.x,this.y);//重新映射畫布上的 (0,0) 位置,先移動位置
ctx1.rotate(this.angle);//再旋轉(zhuǎn)角度
ctx1.drawImage(this.bigTail,-this.bigTail.width * 0.5 + 30,-this.bigTail.height * 0.5);
ctx1.drawImage(this.bigBody,-this.bigBody.width * 0.5,-this.bigBody.height * 0.5);
ctx1.drawImage(this.bigEye,-this.bigEye.width * 0.5,-this.bigEye.height * 0.5);
ctx1.restore();
}
2020-06-04
var beta = Math.atan2(deltaY,deltaX);//-pi,pi
這一段改一下,后面加上 Math.PI
var beta = Math.atan2(deltaY,deltaX) + Math.PI;